gogoNETとIPv6トンネル接続 (その2)

とりあえず、匿名モードでのfreenet6への接続には成功したので、アカウントを取得して接続してみるのにチャレンジしてみた。

gogoNETへの接続はインストールしたママの状態だと、匿名での接続なのだけどアカウントを取得してそのアカウントを使って接続するようにすれば

[From gogoNETとIPv6トンネル接続 | Network - Soukaku's HENA-CHOKO Blog]

これがうまくいくと、/128のアドレスと、内部ネットワーク用に/64のアドレスが割り当てられるようなので、そのあたりもどうなるのか試してみたかったわけですよ。

まぁ、設定してみよう

gogocパッケージをインストールした時の/etc/gogoc/gogoc.confは、匿名接続用に調整されているので、これをユーザ認証接続向けの設定に書き換えていくのだけど、何はともあれ、まずはFreenet6に接続するためのアカウントを取得することが最初のステップなので、このページで、アカウントを作る。

Freenet6でアカウントを作成

ココで作ったアカウントとそのパスワードは、gogoc.confに書きこむことになるので、どっかに控えておきましょう。


で、gogoc.confを書き換えて行きましょ。
まずは、31、32行目にある

userid=
passwd=

に、さっき取得したアカウントとパスワードをそれぞれ書く。
次に、認証先サーバの設定を変えるために、52行目をコメントにして、53行目の"authenticated.freenet6.net"で認証するように行頭の"#"を消去。

server=anonymous.freenet6.net
#server=authenticated.freenet6.net

認証方式を指定している"auth_method="も、匿名接続を指定している71行目をコメントにして、72行目の行頭の"#"を消去。"any"にしておけば、最適な暗号化方式を使って認証処理してくれるので、これはそのままに。

auth_method=anonymous
#auth_method=any

85行目の

host_type=host

を"host"から"router"に書き換えると、gogocを動かすサーバをIPv6ルータに出来て、104行目の

if_prefix=

に指定したNICに接続されたネットワークにRAでIPv6アドレスの広告をしてくれるようになります。
あとは、287行目の

#log_file=

の行頭の"#"を消去して、"3"という値を設定すると、"/var/log/gogoc/gogoc.conf"にログが出力されるようになるので、上手く行かなかった時の手掛かりを集めるためにも変更しておきましょう。
gogocパッケージのドキュメントに付属しているサンプルの設定と比較してみた結果は、下記の通り。

# diff -u /usr/share/doc/gogoc/examples/gogoc.conf.sample /etc/gogoc/gogoc.conf
--- /usr/share/doc/gogoc/examples/gogoc.conf.sample	2011-07-27 21:00:02.000000000 +0900
+++ /etc/gogoc/gogoc.conf	2011-12-29 10:38:17.838136454 +0900
@@ -28,8 +28,8 @@
 #   userid=<your_userid>
 #   passwd=<your_password>
 #
-userid=
-passwd=
+userid=xxxxxxxxxx
+passwd=xxxxxxxxxxxx
 #
 # gogoSERVER:
@@ -49,8 +49,8 @@
 #   otherwise use anonymous.freenet6.net.
 #   Your ISP may provide you with a different server name.
 #
-server=anonymous.freenet6.net
-#server=authenticated.freenet6.net
+#server=anonymous.freenet6.net
+server=authenticated.freenet6.net
 #
 # Authentication Method:
@@ -68,8 +68,8 @@
 #   - any:          If you are authenticating a username / password.
 #   - anonymous:    If you are connecting anonymously.
 #
-auth_method=anonymous
-#auth_method=any
+#auth_method=anonymous
+auth_method=any
 ########################## ROUTING CONFIGURATION ##############################
@@ -82,7 +82,7 @@
 #
 #   host_type=<host|router>
 #
-host_type=host
+host_type=router
 #
 # Prefix Length:
@@ -100,8 +100,7 @@
 #   and BSD (ex: eth1 or fxp1).
 #
 #   if_prefix=<interface name>
-#
-if_prefix=
+if_prefix=eth1
 #
 # DNS Server:
@@ -284,7 +283,7 @@
 #
 #log_console=
 log_stderr=0
-#log_file=
+log_file=3
 #log_syslog=
 #
@@ -323,7 +322,7 @@
 #
 #   log_rotation_size=<16|32|128|1024>
 #
-log_rotation_size=32
+log_rotation_size=1024
 #
 # Deletion of rotated log files:

で、動かすと...

コレで準備が出来たので、

 /etc/init.d/gogoc start
Not starting gogoc - no server key ... (warning).

となって動かない...。出てきたメッセージ自身でググると、gogoNETのフォーラムで同じような現象で上手く起動しないという事例が見つかったので、よく読んでみると

sudo /usr/sbin/gogoc -n

と実行して、キーを更新するかどうか質問されたら"Y"と答えてキーが更新されたら、Ctrl+Cで中断して、改めてgogocを起動しろ、と書いてあるのでそのとおりに実行してみたら、キーは更新されたのだけど、やっぱり起動しない。
起動スクリプトに頼らず、

/usr/sbin/gogoc -f /etc/gogoc/gogoc.conf &

で起動して、/var/log/gogoc/gogoc.logを眺めていると

2011/12/28 17:04:30 I gogoc: Authentication successful.
2011/12/28 17:04:30 I gogoc: Negotiating tunnel parameters with server
2011/12/28 17:04:30 I gogoc: Sending: 'Content-length: 271<tunnel action="create" type="v6anyv4" proxy="no"> <client>  <address type="ipv4">218.219.149.234</address>  <keepalive interval="30">    <address type="ipv6">::</address>  </keepalive>  <router>   <prefix length="64"/>  </router> </client></tunnel>'
2011/12/28 17:04:30 I gogoc: RUDP packet 0, RTO 16.419081, sequence 0xf00000f4 timestamp 13061.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 16.419081, sequence 0xf00000f3 timestamp 6620.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 16.419081, sequence 0xf00000f3 timestamp 2616.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 16.419081, sequence 0xf00000f3 timestamp 8622.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 16.419081, sequence 0xf00000f3 timestamp 4618.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 16.419081, sequence 0xf00000f3 timestamp 12624.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 16.419081, sequence 0xf00000f4 timestamp 13061.
2011/12/28 17:04:30 I gogoc: Received: '200 Success<tunnel action="info" type="v6v4" lifetime="604800">  <server>    <address type="ipv4">116.197.146.63</address>    <address type="ipv6">2406:a000:f0ff:fffe:0000:0000:0000:476e</address>  </server>  <client>    <address type="ipv4">218.219.149.234</address>    <address type="ipv6">2406:a000:f0ff:fffe:0000:0000:0000:476f</address>    <address type="dn">soukaku.broker.freenet6.net</address>    <dns_server>      <address type="ipv6">2001:05c0:1000:0011:0000:0000:0000:0002</address>    </dns_server>    <router>      <prefix length="56">2406:a000:f008:1c00:0000:0000:0000:0000</prefix>    </router>    <keepalive interval="30">      <address type="ipv6">2406:a000:f0ff:fffe:0000:0000:0000:476e</address>    </keepalive>  </client></tunnel>'
2011/12/28 17:04:30 I gogoc: Processing server reply.
2011/12/28 17:04:30 I gogoc: Sending: 'Content-length: 35<tunnel action="accept"></tunnel>'
2011/12/28 17:04:30 I gogoc: RUDP packet 0, RTO 17.689686, sequence 0xf00000f5 timestamp 13211.
2011/12/28 17:04:30 I gogoc: Reply: RUDP packet 0, RTO 17.689686, sequence 0xf00000f5 timestamp 13211.
2011/12/28 17:04:30 I gogoc: Tunnel negotiation successful. Accepted offer.
2011/12/28 17:04:30 I gogoc: Checking for Linux IPv6 support...
2011/12/28 17:04:30 I gogoc: IPv6 support found.
2011/12/28 17:04:30 I gogoc: Waiting for setup script to complete.
2011/12/28 17:04:30 I gogoc: TSP_OPERATION=TSP_TUNNEL_CREATION
2011/12/28 17:04:30 I gogoc: TSP_VERBOSE=3
2011/12/28 17:04:30 I gogoc: TSP_HOME_DIR=/usr/share/gogoc
2011/12/28 17:04:30 I gogoc: TSP_TUNNEL_MODE=v6v4
2011/12/28 17:04:30 I gogoc: TSP_HOST_TYPE=router
2011/12/28 17:04:30 I gogoc: TSP_TUNNEL_INTERFACE=sit1
2011/12/28 17:04:30 I gogoc: TSP_HOME_INTERFACE=eth1
2011/12/28 17:04:30 I gogoc: TSP_CLIENT_ADDRESS_IPV4=218.219.149.234
2011/12/28 17:04:30 I gogoc: TSP_CLIENT_ADDRESS_IPV6=2406:a000:f0ff:fffe:0000:0000:0000:476f
2011/12/28 17:04:30 I gogoc: TSP_CLIENT_DNS_ADDRESS_IPV6=2001:05c0:1000:0011:0000:0000:0000:0002
2011/12/28 17:04:30 I gogoc: TSP_CLIENT_DNS_NAME=soukaku.broker.freenet6.net
2011/12/28 17:04:30 I gogoc: TSP_SERVER_ADDRESS_IPV4=116.197.146.63
2011/12/28 17:04:30 I gogoc: TSP_SERVER_ADDRESS_IPV6=2406:a000:f0ff:fffe:0000:0000:0000:476e
2011/12/28 17:04:30 I gogoc: TSP_TUNNEL_PREFIXLEN=128
2011/12/28 17:04:30 I gogoc: TSP_PREFIX=2406:a000:f008:1c00
2011/12/28 17:04:30 I gogoc: TSP_PREFIXLEN=56
2011/12/28 17:04:30 I gogoc: Executing interface configuration script: /bin/sh "/usr/share/gogoc/template/linux.sh".
2011/12/28 17:04:31 I gogoc: --- Start of configuration script. ---
2011/12/28 17:04:31 I gogoc: Script:  linux.sh
2011/12/28 17:04:31 I gogoc: sit1 setup
2011/12/28 17:04:31 I gogoc: Setting up link to 116.197.146.63
2011/12/28 17:04:31 I gogoc: /sbin/ip tunnel del sit1
2011/12/28 17:04:31 I gogoc: sleep 1
2011/12/28 17:04:31 I gogoc: /sbin/ip tunnel add sit1 mode sit ttl 64 remote 116.197.146.63
2011/12/28 17:04:31 I gogoc: /sbin/ifconfig sit1 up
2011/12/28 17:04:31 I gogoc: This host is: 2406:a000:f0ff:fffe:0000:0000:0000:476f/128
2011/12/28 17:04:31 I gogoc: /sbin/ifconfig sit1 add 2406:a000:f0ff:fffe:0000:0000:0000:476f/128
2011/12/28 17:04:31 I gogoc: /sbin/ifconfig sit1 mtu 1280
2011/12/28 17:04:31 I gogoc: Adding default route
2011/12/28 17:04:31 I gogoc: /sbin/route -A inet6 del ::/0
2011/12/28 17:04:31 I gogoc: /sbin/route -A inet6 del 2000::/3
2011/12/28 17:04:31 I gogoc: /sbin/route -A inet6 add ::/0 dev sit1
2011/12/28 17:04:31 I gogoc: /sbin/route -A inet6 add 2000::/3 dev sit1
2011/12/28 17:04:31 I gogoc: Adding DNS server
2011/12/28 17:04:31 I gogoc: NOTE: Adjust template script to perform actions
2011/12/28 17:04:31 I gogoc: Router configuration
2011/12/28 17:04:31 I gogoc: /sbin/sysctl -w net.ipv6.conf.all.forwarding=1
2011/12/28 17:04:31 I gogoc: net.ipv6.conf.all.forwarding = 1
2011/12/28 17:04:31 I gogoc: /sbin/route -A inet6 add 2406:a000:f008:1c00::/56 dev lo
2011/12/28 17:04:31 I gogoc: Adding prefix to eth1
2011/12/28 17:04:31 I gogoc: /sbin/ifconfig eth1 add 2406:a000:f008:1c00::1/64
2011/12/28 17:04:31 I gogoc: Stopping radvd: No /usr/sbin/radvd found running; none killed.
2011/12/28 17:04:31 I gogoc: radvd.
2011/12/28 17:04:31 I gogoc: killing /var/run/gogoc/gogoc-rtadvd.conf
2011/12/28 17:04:31 I gogoc:
2011/12/28 17:04:31 I gogoc: Starting radvd: /usr/sbin/radvd -u radvd -C /var/run/gogoc/gogoc-rtadvd.conf
2011/12/28 17:04:31 I gogoc: /usr/sbin/radvd -u radvd -p /var/run/radvd/radvd.pid -C /var/run/gogoc/gogoc-rtadvd.conf
2011/12/28 17:04:31 I gogoc: --- End of configuration script. ---
2011/12/28 17:04:31 I gogoc: Interface configuration script completed successfully.
2011/12/28 17:04:31 I gogoc: The host type is 'router'.
2011/12/28 17:04:31 I gogoc: The tunnel type is v6v4.
2011/12/28 17:04:31 I gogoc: Client proxying is disabled.
2011/12/28 17:04:31 I gogoc: Your IPv6 address is 2406:a000:f0ff:fffe:0000:0000:0000:476f.
2011/12/28 17:04:31 I gogoc: Your IPv6 prefix is 2406:a000:f008:1c00:0000:0000:0000:0000/56.
2011/12/28 17:04:31 I gogoc: Your IPv6 DNS address is 2001:05c0:1000:0011:0000:0000:0000:0002.
2011/12/28 17:04:31 I gogoc: Keepalive initialized with peer 2406:a000:f0ff:fffe:0000:0000:0000:476e. Interval=30000ms. Timeout=5000ms. General timeout at 3 consecutive timeouts.

認証が行われて、トンネルの生成、IPv6アドレスの割当とsit1の設定、radvdの再起動によるeth1側へのIPv6アドレスの広告が行われる様子が。
これで接続できたようなので、サーバが起動したときにもちゃんとトンネルが生成されるように/etc/rc.local

/usr/sbin/gogoc -f /etc/gogoc/gogoc.conf

書き加えておいた。(まだ、試してないけど。)

ログを良く見てみると、匿名接続のようにv4のグローバルアドレスから自動生成されたものでは無くなってるし、eth1用にprefixが/64のv6アドレスが割り当てられててくれるので、個人で使う分には十分すぎるほどの数のアドレスが割り当たっているという状況。
2日の早朝にトンネルが切断されてたのが気にはなるけど、それ以外は特に問題はないかな〜。(といっても、使い始めて数日でしかないわけですが。)

しばらく、この状態でIPv6も使える生活を楽しんでみます。

トラックバック(3)

一応、上手く行っているように見えるfreenet6とのIPv6トンネル接続、年明けてから4日連続でトンネルが切断されてしまうという状況が発生している。 2... 続きを読む

日本は、「IPv6推進に積極的だ」と見えていたものが、一気に「IPv6後進国」になる危険性が出てきたわけですか...。(はぁ) この問題をどうするか。NT... 続きを読む

一応、上手く行っているように見えるfreenet6とのIPv6トンネル接続、年明けてから4日連続でトンネルが切断されてしまうという状況が発生している。 2... 続きを読む

コメントする