IPv6でインターネットへ接続


IPv6の動作確認内容

  • 確認内容としては、IPv6対応のブラウザからKAMEプロジェクトのサイトをアクセスし、ページ上部の亀が踊る事を確認します。ブラウザはIPv6対応のMozillaを使います。

  • IPv6実験ネットワーク(6bone)へトンネル接続サービスを提供している「Freenet6」を使って動作確認を行いました。但し、ダイアルアップルータによるNAT環境では接続できない事が判り、IPv6マシンのシリアルポートから直接PPP接続する事にしました。私が使っているMN128SOHO/SL11はTAとしても使えます。PPP接続にはPPxPとPPPが使えるのですが、私の場合は、PPxPがなぜか安定してつながらなかったので、今回はPPPを使いました。


動作確認の詳細

  • MN128SHHO/SL11をTAとして使うため、シリアルケーブルでCOMポートとMN128SOHOを直接接続します。また、確認範囲を明確化するためLANケーブルを抜きました。

  • そして、PPPにより、BIGLOBEへダイアルアップ接続します。PPPについては、以下を参照して下さい。

    PPP

    # ppp biglobe
    Working in interactive mode
    Using interface: tun0
    ppp ON taro> 
    Ppp ON taro> 
    PPp ON taro> 
    PPP ON taro> 
    


  • ダイアルアップ完了直後のifconfigは以下の通りです。

    # ifconfig
    ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            inet 192.168.0.4 netmask 0xffffff00 broadcast 192.168.0.255
            inet6 fe80::290:ccff:fea4:3a49%ed0 prefixlen 64 scopeid 0x1 
            ether 00:90:cc:a4:3a:49 
    lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
    faith0: flags=8000<MULTICAST> mtu 1500
    gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    gif1: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    gif2: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    gif3: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
            inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 
            inet6 ::1 prefixlen 128 
            inet 127.0.0.1 netmask 0xff000000 
    ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
    sl0: flags=c010<POINTOPOINT,LINK2,MULTICAST> mtu 552
    tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1524
            inet6 fe80::290:ccff:fea4:3a49%tun0 --> :: prefixlen 64 scopeid 0xb 
            inet 211.135.234.158 --> 210.147.150.65 netmask 0xffffff00 
            Opened by PID 538
    

  • Freenet6:Create your own tunnel(http://old.freenet6.net/en/createTunnel.html)から、IPv6トンネル作成スクリプトをダウンロードし、実行します。「FreeBSD/KAME」のregistration formのページで、自分のIPv4アドレス(ここにはアクセスしたマシンのアドレスが入力済)とニックネームを入力し、国としてJAPANを選択します。最後にSubmitボタンを押下します。但し、ここでエラーになる事がよくありましたので、別のマシンからアクセスしてダウンロードしました。ダウンロードしたスクリプトはこちらです。実行結果は、以下の様になります。

    # perl /usr/home/hnakamur/HP/tunkame22706.pl
    Your system is using FreeBSD with KAME stack
    This script is finding an available interface for the tunnel
    The available interface for the tunnel is : gif0
    This script will create a tunnel between this computer
    and the Freenet6 server (tunnels server)
    Your IPv6 address (your tunnel end point) is 3ffe:b00:c18:1fff:0:0:0:7c7 
    We establish a tunnel to the Freenet6 server at 3ffe:b00:c18:1fff:0:0:0:7c6 
    Your IPv4 address is : 211.135.234.158 
    The IPv4 address of the Freenet6 server is : 206.123.31.102 
    route: writing to routing socket: File exists
    End of the script for IPv6 with KAME
    

  • IPv6トンネル設定後のifconfigは、以下の通りです。また、ping6で応答を確認しました。

    # ifconfig
    ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            inet 192.168.0.4 netmask 0xffffff00 broadcast 192.168.0.255
            inet6 fe80::290:ccff:fea4:3a49%ed0 prefixlen 64 scopeid 0x1 
            ether 00:90:cc:a4:3a:49 
    lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
    faith0: flags=8000<MULTICAST> mtu 1500
    gif0: flags=8011<UP,POINTOPOINT,MULTICAST> mtu 1280
            inet6 fe80::290:ccff:fea4:3a49%gif0 --> :: prefixlen 64 scopeid 0x4 
            inet6 3ffe:b00:c18:1fff::7c7 --> 3ffe:b00:c18:1fff::7c6 prefixlen 128 
    gif1: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    gif2: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    gif3: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
            inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 
            inet6 ::1 prefixlen 128 
            inet 127.0.0.1 netmask 0xff000000 
    ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
    sl0: flags=c010<POINTOPOINT,LINK2,MULTICAST> mtu 552
    tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1524
            inet6 fe80::290:ccff:fea4:3a49%tun0 --> :: prefixlen 64 scopeid 0xb 
            inet 211.135.234.158 --> 210.147.150.65 netmask 0xffffff00 
            Opened by PID 538
    
    # ping6 3ffe:b00:c18:1fff:0:0:0:7c6
    PING6(56=40+8+8 bytes) 3ffe:b00:c18:1fff::7c7 --> 3ffe:b00:c18:1fff::7c6
    16 bytes from 3ffe:b00:c18:1fff::7c6, icmp_seq=0 hlim=64 time=300.118 ms
    16 bytes from 3ffe:b00:c18:1fff::7c6, icmp_seq=1 hlim=64 time=300.206 ms
    16 bytes from 3ffe:b00:c18:1fff::7c6, icmp_seq=2 hlim=64 time=300.193 ms
    16 bytes from 3ffe:b00:c18:1fff::7c6, icmp_seq=3 hlim=64 time=300.235 ms
    ^C
    --- 3ffe:b00:c18:1fff:0:0:0:7c6 ping6 statistics ---
    5 packets transmitted, 4 packets received, 20% packet loss
    round-trip min/avg/max = 300.118/300.188/300.235 ms
    

  • ここまでのところで、一通り手順は完了なのですが、残念ながら踊る亀は表示できませんでした。調べて見ると、デフォルトルートが設定されていない事がわかりました。マニュアルで設定してみると、ファイルが既に存在する旨のエラーになってしまいました。そこで、一旦デフォルトを削除した後で再設定しOKとなりました。

    # route add -inet6 default 3ffe:b00:c18:1fff:0:0:0:7c7
    route: writing to routing socket: File exists
    add net default: gateway 3ffe:b00:c18:1fff:0:0:0:7c7: File exists
    # route delete -inet6 default
    delete net default
    # route add -inet6 default 3ffe:b00:c18:1fff:0:0:0:7c7
    add net default: gateway 3ffe:b00:c18:1fff:0:0:0:7c7
    # netstat -r
    Routing tables
    
    Internet:
    Destination        Gateway            Flags     Refs     Use     Netif Expire
    default            NmitsukaidouDS1.ib UGSc       15        0     tun0
    localhost          localhost          UH          2      194      lo0
    192.168            link#1             UC          0        0      ed0 =>
    NmitsukaidouDS1.ib mtkd1DS30.iba.mesh UH         16        0     tun0
    
    Internet6:
    Destination        Gateway            Flags      Netif Expire
    ::                 ::1                UGRSc       lo0 =>
    default            irctest.gb.freenet UGSc       gif0
    ::1                ::1                UH          lo0
    ::ffff:0.0.0.0     ::1                UGRSc       lo0
    3ffe:b00:c18:1fff: irctest.gb.freenet UH         gif0
    irctest.gb.freenet ::1                UH          lo0
    fe80::             ::1                UGRSc       lo0
    fe80::%ed0         link#1             UC          ed0
    fe80::%gif0        link#4             UC         gif0
    fe80::290:ccff:fea ::1                UH          lo0
    fe80::%lo0         fe80::1%lo0        Uc          lo0
    fe80::%tun0        link#11            UC         tun0
    fe80::290:ccff:fea ::1                UH          lo0
    ff01::             ::1                U           lo0
    ff02::             link#1             UCS         ed0
    ff02::%ed0         link#1             UC          ed0
    ff02::%gif0        link#4             UC         gif0
    ff02::%lo0         fe80::1%lo0        UC          lo0
    ff02::%tun0        link#11            UC         tun0
    
    # route get -inet6 default
       route to: default
    destination: default
           mask: default
        gateway: irctest.gb.freenet6.net
      interface: gif0
          flags: 
     recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount      mtu     expire
       16384     16384         0         0         0         0      1280         0 
    

  • Mozilla(Netscape6)でKAMEプロジェクトをアクセスし、踊る亀(アニメーションGIF)を確認しました。この踊る亀はIPv6でアクセスした場合にだけ見る事ができます。また、最下行には、このページをアクセスしているマシンのIPアドレスが表示されるので、ここでもIPv6でアクセスできている事が確認できます。

    kame.net画面

    kame.net画面


  • 自分のマシンがDNSに登録されている事をnslookupで確認してみました。ホスト名は、Freenet6からスクリプトをダウンロードする時に入力したニックネーム(hnakamur)と国名(JAPAN)から決まります。私の場合は、「hnakamur.jp.freenet6.net」として登録されました。

    
    # nslookup 
    Default Server:  nsca00.mesh.ad.jp
    Address:  202.225.94.247
    
    > set type=AAAA
    > hnakamur.jp.freenet6.net
    Server:  nsca00.mesh.ad.jp
    Address:  202.225.94.247
    
    hnakamur.jp.freenet6.net        IPv6 address = 3ffe:b00:c18:1fff::2c5
    freenet6.net    nameserver = ns3.viagenie.qc.ca
    freenet6.net    nameserver = jazz.viagenie.qc.ca
    freenet6.net    nameserver = clouso.risq.qc.ca
    ns3.viagenie.qc.ca      internet address = 206.123.31.102
    jazz.viagenie.qc.ca     internet address = 206.123.31.2
    jazz.viagenie.qc.ca     IPv6 address = 3ffe:b00:c18:3::a
    clouso.risq.qc.ca       internet address = 192.26.210.1
    > 
    


前に戻る

トップへもどる


Copyright (c) 2001 Hiroshi Nakamura. All rights reserved.