6to4を使ったIPv6接続には成功していたけど、 radvd を使ったルータ以外のPCのIPv6接続には失敗していた。 色々と試した結果、tun6to4には、2002:XXXX:XXXX:0000::1を設定し、 自宅サーバには 2002:XXXX:XXXX:0001::1を設定する。 radvd には、2002:XXXX:XXXX:0001:****:****:****:**** を使うように設定した。
(( ネットワーク構成 )) +------------------------+ Internet--[router]--+ 192.168.1.2 | (IPv4) | 2002:XXXX:XXXX:0001::1 +--[radvd] | (eth0) | | (tun6to4) | ::192.88.99.1-[tun]-+ 2002:XXXX:XXXX:0000::1 | (IPv6) +------------------------+
interfaceファイルは、ルータから取得した2002:XXXX:XXXX形式のファイルから、 address部にバッククオートを使って設定した。
(( /etc/network/interfaces )) auto tun6to4 iface tun6to4 inet6 v4tunnel endpoint any address `/bin/cat /var/run/DDNS.ipv6`::1 netmask 16 gateway ::192.88.99.1 local 192.168.1.2 # DynamicDNSのアドレス更新 # /var/run/DDNS.ipv6 = 2002:XXXX:XXXXを生成 pre-up /etc/DDNS/mydns-jp.sh # eth0内のアドレスを割り当て post-up /sbin/ip addr add \ `/bin/cat /var/run/DDNS.ipv6`:1::1/64 dev eth0 # 2002:XXXX:XXXXを使ったradvd.confを生成 post-up /etc/network/script/update-radvd.pl # radvdを再起動 post-up /etc/init.d/radvd reload pre-down /sbin/ip addr del \ `/bin/cat /var/run/DDNS.ipv6`:1::1/64 dev eth0
ちなみに、radvd.conf ファイルの生成には、以下のようなスクリプトを用いた。 6to4 による IPv6 対応ルーター設定によれば、わざわざこんなことをしなくても、Base6to4Interface という 設定を使えばいいのだけど、我が家の場合はルータを間に挟んでいるため、 IPv4なルータ(外側)のIPアドレスが取れないので、このようなスクリプトを使うしかない...
(( /etc/network/script/update-radvd.pl )) #!/usr/bin/perl my $dir = "/etc/network/script" ; my $rconf = "/etc/radvd.conf" ; my $rtemp = "$dir/radvd.conf.template" ; my $ddip6 = "/var/run/DDNS.ipv6" ; my $ip6h = "" ; if ( -f $ddip6 ) { open( FH , $ddip6 ) or die( "Can't open $ddip6\n" ) ; $ip6h =; close( FH ) ; if ( $ip6h =~ s/^(2002:[0-9A-Z]+:[0-9A-Z]+)$/$1/i ) { open( FHD,">$rconf" ) or die( "Can't open $rconf\n" ) ; open( FHS,"$rtemp" ) or die( "Can't open $rtemp\n" ) ; while( ) { s/<IPV6>/$ip6h/ if ( /^\s+prefix\s+<IPV6>/ ) ; print FHD $_ ; } close( FHS ) ; close( FHD ) ; } } (( /etc/network/script/radvd.conf.template )) interface eth0 { AdvSendAdvert on; AdvManagedFlag on; AdvOtherConfigFlag on; prefix <IPV6>:1::/64 { AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; };
無事、http://www.kame.net/ のDancingカメさんも http://[2001:200:dff:fff1:216:3eff:feb1:44d7]のURLであれば、 サーバ&radvdクライアントなPCでも、うまく踊ってくれました。