起動時のコマンド行は以下のようになります。
dtcpclient -t network -u hoge -d dtcp.example.org起動するとパスワードを聞いてきますので、答えます。サーバ: dtcp.example.org
ユーザ: hoge (-u)
networkトンネル・タイプ (-t)
デバッグ出力 (-d)
接続が成功すると、トンネルが張られて、 IPv6デフォルト経路がトンネルに向いているはずです。 以下はFreeBSDでの出力例です。
トンネルや経路の設定は/usr/local/etc/dtcpclient.scriptでおこなわれます。 この動作は、/usr/local/etc/dtcpclient_script.confで設定できます。 dtcpclient_script.confはインストールされませんので、 必要に応じて作成してください。 設定内容についてはdtcpclient.scriptのコメントを参照ください。ume@cheer:1003% ifconfig gif0 gif0: flags=8051mtu 1280 tunnel inet 218.45.20.185 --> 210.161.150.9 inet6 fe80::240:c7ff:fe99:81eb%gif0 prefixlen 64 scopeid 0x4 ume@cheer:1004% netstat -rnfinet6 | grep gif0 default ::1 UGSc gif0 fe80::%gif0/64 link#4 UC gif0 fe80::240:c7ff:fe99:81eb%gif0 link#4 UHL lo0 ff02::%gif0/32 link#4 UC gif0
IPv6 over IPv4トンネルに使用するインタフェースは、
dtcpclient_script.confのtunifで指定します。
デフォルトでは、FreeBSDの場合はgifになっています。
つまり、gifを動的に生成して使用します。
MacOSXでは、tunifの指定は無視されます。
動的に空いているgifを使用します。
それ以外のOS の場合のデフォルトは、gif0になっています。
また、自動的にIPv6デフォルト経路が設定されるのを好まない場合は、 dtcpclient_script.confでstatic_routesを変更します。
なお、dtcpclientはdtcpcのように自動的にsysctlを設定しませんので、 ルータとして動作させるには、別途、
net.inet6.ip6.forwarding=1のように設定しておく必要があります。 例えば、FreeBSDでは/etc/rc.confに以下のように設定します。
net.inet6.ip6.accept_rtadv=0
ipv6_enable="YES"NetBSDでは/etc/rc.confに以下のように設定します。
ipv6_gateway_enable="YES"
ip6mode="router"
なお、ここまでの設定では、IPv6グローバルアドレスは自動的には付きません。 配布されるプレフィックスがあらかじめ分かっている場合は別途静的に設定するか、 prefix delegetionの設定を参照してください。