ゆる〜い Web アプリ 田村謙介
IPv6  だから できること <ul><li>固有の IP アドレス </li></ul><ul><ul><li>$_SERVER['REMOTE_ADDR'] </li></ul></ul><ul><ul><li>… しか思いつきませんでし...
ゆる〜い Web アプリ <ul><li>IPv6 ったー! </li></ul><ul><li>〜ったーなら適当でも許されそう。 </li></ul><ul><li>IPv6 で、〜ったーを作ってみました。 </li></ul>
REMOTE_ADDR 応用 <ul><li>とりあえず v6 アドレスを分解 </li></ul><ul><li>降ってきた IP アドレスは… </li></ul><ul><li>2400:4030:1:3800:5a55:caff:fef...
2400:4030:1:3800:5a55:caff:fef8:12eb <ul><li>$ip = $_SERVER[&quot;REMOTE_ADDR&quot;]; </li></ul><ul><li>$row = explode(&qu...
分解してどうしよう <ul><li>16 進数を 10 進数にしてみよう! </li></ul><ul><li>for($i = 0; $i < count($row); $i++){ </li></ul><ul><li>$dec[$i] = ...
ちょっと待った <ul><li>IPv6 アドレスなら頭の方は固有ではない。 </li></ul><ul><li>せっかく IPv6 なら… </li></ul><ul><li>結果は“固有”でなければならない !! </li></ul><ul...
数値を適当に <ul><li>割って余りで振り分けてみたり。 </li></ul><ul><li>そのまま数字を入れてみたり。 </li></ul><ul><li>〜ったーのゆるい感じで。 </li></ul>
IPv6 ったー 完成!
Upcoming SlideShare
Loading in...5
×

v6hack

1,206

Published on

2011.8.20
Lightweight Language Planets内のIPv6ハッカソンにて作成したゆる〜いWebアプリの紹介です。

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,206
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

v6hack

  1. 1. ゆる〜い Web アプリ 田村謙介
  2. 2. IPv6 だから できること <ul><li>固有の IP アドレス </li></ul><ul><ul><li>$_SERVER['REMOTE_ADDR'] </li></ul></ul><ul><ul><li>… しか思いつきませんでした。 </li></ul></ul>
  3. 3. ゆる〜い Web アプリ <ul><li>IPv6 ったー! </li></ul><ul><li>〜ったーなら適当でも許されそう。 </li></ul><ul><li>IPv6 で、〜ったーを作ってみました。 </li></ul>
  4. 4. REMOTE_ADDR 応用 <ul><li>とりあえず v6 アドレスを分解 </li></ul><ul><li>降ってきた IP アドレスは… </li></ul><ul><li>2400:4030:1:3800:5a55:caff:fef8:12eb </li></ul><ul><ul><li>… 丁度良いところに : がある! </li></ul></ul>
  5. 5. 2400:4030:1:3800:5a55:caff:fef8:12eb <ul><li>$ip = $_SERVER[&quot;REMOTE_ADDR&quot;]; </li></ul><ul><li>$row = explode(&quot;:&quot;, $ip); </li></ul><ul><li>Array ( [0] => 2400 [1] => 4030 [2] => 1 [3] => 3800 [4] => 5a55 [5] => caff [6] => fef8 [7] => 12eb ) </li></ul>
  6. 6. 分解してどうしよう <ul><li>16 進数を 10 進数にしてみよう! </li></ul><ul><li>for($i = 0; $i < count($row); $i++){ </li></ul><ul><li>$dec[$i] = hexdec($row[$i]); </li></ul><ul><li>} </li></ul><ul><li>Array ( [0] => 9216 [1] => 16432 [2] => 1 [3] => 14336 [4] => 23125 [5] => 51967 [6] => 65272 [7] => 4843 ) </li></ul>
  7. 7. ちょっと待った <ul><li>IPv6 アドレスなら頭の方は固有ではない。 </li></ul><ul><li>せっかく IPv6 なら… </li></ul><ul><li>結果は“固有”でなければならない !! </li></ul><ul><li>… 下 4 ブロックを使用することに。 </li></ul><ul><li>[4] => 23125 [5] => 51967 [6] => 65272 [7] => 4843 </li></ul>
  8. 8. 数値を適当に <ul><li>割って余りで振り分けてみたり。 </li></ul><ul><li>そのまま数字を入れてみたり。 </li></ul><ul><li>〜ったーのゆるい感じで。 </li></ul>
  9. 9. IPv6 ったー 完成!

×