ゼロ個でも出来たのでそのレシピ。

404 Blog Not Found:IPv6 - とりあえず回線屋さんはSTF Routerを立てよ
エンドユーザー側にはGlobal IP Addressが一個必要だけど、別の言い方をすれば一個でいい

レシピ

理由は後回しにして、まずはその方法。

Feel6 + FreeBSDで接続する

  1. FB Feel6接続サービス| お申し込みで登録。この時点で/48のIPv6ネットワークが発行される。
    • 同サイトの[登録情報確認]で、[ネットワークプリフィックス]を確認しておく。ここではRFC 3849にのっとって、仮に2001:db8:4989::/48としておく。
  2. dtcpclientをインストール
    % pkg_add -vr dtcpclient
    

    とか

    % portupgrade -NPp dtcpclient
    

    とか

  3. dtcpclientを設定
    • /etc/rc.conf に追記
      ipv6_enable="YES"
      dtcpclient_enable="YES"
      dtcpclient_server="dtcp.feel6.jp"
      dtcpclient_username="your_id"
      dtcpclient_flags="-n -t network -Dl"
      
      最後のdtcpclient_flags-nがついてるのがミソ。これがないとNATの内側からは蹴られる。
    • /usr/local/etc/dtcpclient.auth
      dtcp.feel6.jp:your_id:your_pw
      
    • /usr/local/etc/dtcpclient_script.conf
      tunif_addrs="2001:db8:4989::2"
    • 最後の::2は任意のsuffixで構わないのだけど、接続先ルータは::1になる

  4. 接続を確認
    % su
    # sh /usr/local/etc/rc.d/dtcpclient start
    
    うまく行けば
    % ping6 ipv6.google.com
    PING6(56=40+8+8 bytes) 2001:db8:4989::2 --> 2404:6800:4004:804::1010
    16 bytes from 2404:6800:4004:804::1010, icmp_seq=0 hlim=53 time=8.736 ms
    16 bytes from 2404:6800:4004:804::1010, icmp_seq=1 hlim=53 time=8.446 ms
    16 bytes from 2404:6800:4004:804::1010, icmp_seq=2 hlim=53 time=8.920 ms
    16 bytes from 2404:6800:4004:804::1010, icmp_seq=3 hlim=53 time=8.623 ms
    ...
    
    うまく行かなければ、/var/log/messagesを確認

接続したFreeBSDをIPv6ルーターにする

ここではもらった/48のうち、最後尾の/64を内側(if1)に配っている。

  • /etc/rc.conf に追記
    ipv6_gateway_enable="YES"
    ipv6_ifconfig_if1="2001:db8:4989:ffff::1 prefixlen 64"
    rtadvd_enable="YES"
    rtadvd_interfaces="if1"
    
    あとは再起動

あまりに簡単で拍子抜け。

背景

我が庵はかつて6to4でIPv6に接続していた。ご存知のとおりこれにはパブリックなIPアドレスが一ついる。しかし、このパブリックIP自体、我がマンションでは「贅沢品」なのだ。

問題は価格よりむしろ手法で、固定IPは先方にMAC Addressを知らせた上で、先方がそれをDHCP Serverに登録するという方式。ところがここで6to4 Routerを兼ねていたFreeBSD boxをリプレースすることになった。

今まで通りにしても特に問題はないのだが、その一方でかつて固定IPがないと出来なかったような、NATの内側に外からアクセスできるようなサービスがかなり増えてきた。たとえばBack to My Macとか。どんなNATでも超えられるわけではないのだが、UPnPNAT-PMPに対応していれば、多重NATでもうまく行く。

で、我が家はBack to My Macが問題なく使えている。というかこれがないと妻両親のMacがサポートできない:-p。

ならばDTCPでもうまくいくのではないかとやってみたら、うまく行った、と。feel6++

まあ一番いいのは、 e-mansion さんが IPv6 対応してくれるのが一番いいのだけど、対応どころかサイトにIPv6という文字列すら見当たらない状態だからなあ…

似たような状況にある方は、お試しを。

Dan the Dual Stack Blogger