tokyo6to4

知らない間にtokyo6to4が運用開始していた。

6to4とは

もし、IPv4のグローバルアドレスを持っているのならば、"2002:::/48"のIPv6アドレスも既に持っていることになる。これに関して、プロバイダのIPv6サービス等を別途申し込む必要は無い。
2002::/16宛のパケットは、全世界の(おそらくすべてボランティアベースで運営されている)6to4リレールータが、IPv4パケットに入れて適切なあて先へ配送してくれることになっている。
逆に、192.88.99.1宛のパケットは適切なIPv6アドレスに同様に配送される。
このリレールータは長らく日本国内には不在である状況が続いたが、そこに現れたのがtokyo6to4ということになる。

体験する

もし、グローバルIPv4アドレスを保持している端末上でtcpdumpを実行できるなら、以下の手順で一切の設定なしに体験できる。

  1. IPv6アドレスを計算する
  2. tcpdump -i ppp0 "(ip proto 41)"
  3. http://www.sixxs.net/tools/traceroute/ - (source欄からIPv6ノードを選ぶこと)

6to4で使用するIPv6アドレスは2002:::/48となる。残りの部分は自由にセットできる。単に::で終わるようにすれば残りをすべてゼロにできる。
先のサイトからtracerouteを行うと、

20:50:18.022892 IP 192.88.99.1 > Zxxxxxxx.ppp.dion.ne.jp: IP6 2001:838:1:1:210:dcff:fe20:7c7c > 2002:d2xx:xxxx:::

のように相手方からのパケットが観察される。ここからさらにIPv6インターネットを利用するにはルータを適切に設定する必要がある。
IPv6アドレスの演算方法は http://itpro.nikkeibp.co.jp/article/COLUMN/20081111/319003/ を参照のこと。

問題点

先のページで述べられているように、6to4を使うと経路がかなり非対称になるケースがある。
また、グローバルIPv4アドレスが変わると保持しているすべてのグローバルIPv6アドレスも変更されることになる。
いくつかの文章ではNAT内では6to4が使用できないとされているが、いわゆるLinux-boxでNATを実現しているのならば、適切に設定することでNATの内側のホストにも6to4で得たIPv6アドレスを配布することができる。ただし、その配布するアドレスはIPv4グローバルアドレスが変更されるまでの寿命となる。
feel6ではこの問題は無い。feel6の配布するIPv6アドレスは会員IDごとに固有のものなので基本的に変わらない。