先日、6to4 で IPv6 のトンネル接続をしていたけど、tspc による接続に切り替えた。 IPv6 に接続するだけであれば、tspc のパッケージをインストールするだけであった。
# aptitude install tspc # /etc/init.d/tspc start
しかし、Debian の tspc パッケージによる接続は、匿名アカウントであるため、 1台の端末しか ipv6 over ipv4 で接続できず、 単純に /etc/tsp/tspc.conf に、host_type=router を記述しても、接続時にエラーとなる。
ルータ化できるように go6.net よりアカウントをもらう。
そこで、 go6.net(freenet6.net) に接続し、"Free IPv6 connectivity with Freenet6" より、アカウントを発行してもらう(無料)。 これだけでは、同じネットワークの端末が IPv6 接続できないので、 radvd(Router Advertisement Daemon) を起動する必要がある。 6to4 の時は、自分のネットワークが Dynamic DNS でアドレスが変わる可能性もあるし、 ルータ配下であったために、radvd の設定ファイルを随時作るスクリプトを書いていたけど、 /etc/tsp/linux.sh には、その雛形も含まれていた。 ということで、その部分のスクリプトをコメントアウトして、ようやく完成。
≪ /etc/tsp/tspc.conf の抜粋 ≫ # freenet6.net への登録した設定値 userid=xxxxxxxx passwd=yyyyyyyy server=zzzzzzzz.freenet6.net # 接続後に次の /etc/tsp/linux.sh を呼び出すための設定 template=linux # ルータ化するための設定 host_type=router prefixlen=64 if_prefix=eth0 ≪ /etc/tsp/linux.sh ≫ # 後の radvd 起動のメンテナンス用 RUN_RADVD=yes : # 元々は以下の2行目の ifconfig - add しか無かったけど、 # 他の処理でできたと思われる設定と重複していたので、 # 設定を消すための ifconfig - del を追加 ExecNoCheck $ifconfig $TSP_HOME_INTERFACE del $TSP_PREFIX::1/64 Exec $ifconfig $TSP_HOME_INTERFACE add $TSP_PREFIX::1/64 # radvd の起動のための処理がコメントアウトされていたものを # if-endif で囲みながらコメントアウト if [ X"${RUN_RADVD}" = X"yes" ]; then # Router advertisement configuration Display 1 "Create new $rtadvdconfigfile" echo "##### rtadvd.conf made by TSP ####" > "$rtadvdconfigfile" echo "interface $TSP_HOME_INTERFACE" ≫ "$rtadvdconfigfile" echo "{" ≫ "$rtadvdconfigfile" echo " AdvSendAdvert on;" ≫ "$rtadvdconfigfile" echo " prefix $TSP_PREFIX::/64" ≫ "$rtadvdconfigfile" echo " {" ≫ "$rtadvdconfigfile" echo " AdvOnLink on;" ≫ "$rtadvdconfigfile" echo " AdvAutonomous on;" ≫ "$rtadvdconfigfile" echo " };" ≫ "$rtadvdconfigfile" echo "};" ≫ "$rtadvdconfigfile" echo "" ≫ "$rtadvdconfigfile" /etc/init.d/radvd stop if [ -f $rtadvdconfigfile ]; then KillProcess $rtadvdconfigfile # radvdのpidファイルを消さないとradvdがエラーを出す時があった ExecNoCheck /bin/rm -f /var/run/radvd/radvd.pid # 元々の radvd の起動処理に -p によるPIDの指定を追加 #Exec $rtadvd -u radvd -C $rtadvdconfigfile Exec $rtadvd -u radvd -p /var/run/radvd/radvd.pid -C $rtadvdconfigfile Display 1 "Starting radvd: $rtadvd -u radvd -C $rtadvdconfigfile" else echo "Error : file $rtadvdconfigfile not found" exit 1 fi fi ≪ IPv6 の接続と停止 ≫ # /etc/init.d/tspc start 接続 # /etc/init.d/tspc stop 切断
まだ DNS の forwarding が悪いのかな...
これで、自宅内ネットワークは、どれも IPv6 で接続できるようになった(はず)。 試しに、ノートパソコンで、www.kame.net に接続してみると、 しかし http://www.kame.net では、亀が踊らない。 http://[2001:200:0:8002:203:47ff:fea5:3085]/ を使うと、亀が踊ってくれた。 うーむ、もうちっと。