IPv6接続サービスを使ってIPv6インターネットと接続する方法は3種類あります。

  1. IPv4を使ったIPv6トンネル接続
  2. IPv6ネイティブ接続
  3. 3.IPv4/IPv6デュアルスタック接続

 このうち,国内でもっとも多く提供されている形態は1のトンネル接続です。では最初に,トンネル接続を実施する際のルーター設定を見ていくことにしましょう。

IPv4を使ったトンネル接続

 この接続方法は,IPv4網の中にIPv6用の仮想トンネルを張ることでIPv6接続を実施する方法です。技術的な仕様は,RFC1933にまとめられています。トンネル接続は,ユーザーとインターネット接続事業者(プロバイダ)がIPv4でつながっていれば,その環境のままIPv6利用が可能になる接続形態なので,IPv6を手軽に導入できるというメリットがあります。ただし,このトンネル接続では,ユーザーとプロバイダの間に定常的なIPv6用の仮想トンネルを構築するため,ユーザはトンネル終端用にIPv4の固定グローバルアドレスが必要になります。こうしたことからたいていのトンネル接続サービスは,専用線あるいはDSL/光ファイバでインターネットに常時接続しているユーザーに提供されています。

 トンネル接続するためにはIPv6対応ルーターが必要です。その配置の方法は大きく二つあります。一つは,プロバイダとの間をつなぐ部分にトンネル機能を備えたIPv4/IPv6ルーターを設置する方法です(図1)。
 
 もう一つの方法は,プロバイダと接続するルーターは現状のIPv4ルーターをそのまま使い,そのうしろに別途,IPv6トンネル用のルーターをおくというものです(図2)。

 後者の方法であれば,ユーザーが運用している既存のIPv4ネットワークを止めることなくIPv6環境をユーザー宅内に構築できます。

 現在,IPv6トンネル接続を商用サービスとして提供しているプロバイダとしては,NTTコミュニケーションズ,日本テレコム,パワードコムなどがあります。このほかにもいくつかのプロバイダが実験サービスを提供中です。国内のIPv6サービスは,以下を参考にして下さい。

 次に,接続方法の実際を見ていくことにしましょう。ここでは以下のケースを想定します。

  • サービス: OCN IPv6トンネル接続サービス for OCN ADSLアクセス IP1「フレッツ」プラン(NTTコミュニケーションズ)
  • ルーター: YAMAHA RTA54i(ヤマハ)
  • 条件:IPv4接続は完了済み

 まず最初に,OCNにIPv6トンネル接続を申し込むと,IPv6アドレスのプレフィクスの一部と,OCN網内にあるIPv6トンネルの出口のIPv4アドレスが通知されます。ここでは,以下のようにアドレスが通知されたとします。

  • お客様側トンネル終端アドレス:aaa.bbb.ccc.ddd(ユーザに割り当てられたIPv4固定グローバルアドレス(本サービスの場合は一意に決定))
  • お客様側ご利用IPv6アドレスブロック:2001:218:xyz::/48(128ビットのうちの先頭48ビット)
  • OCN側トンネル終端アドレス:eee.fff.ggg.hhh

 IPv6アドレスは先頭の48ビット分しか割り当てられていませんが,これは間違いではありません。現状,プロバイダがユーザーにIPv6アドレスを割り当てるときは,128ビットのアドレスではなく,先頭48ビット分だけを割り当てることになっています。

 トンネル接続の設定は3つのステップからなります。

ステップ1:トンネル・インタフェースの設定

 まずIPv6トンネル用のインタフェースを作成します。このケースでは,tunnelコマンドでトンネルの両出口(endpoint)のアドレスを指定します。

tunnel select 1
tunnel endpoint address aaa.bbb.ccc.ddd eee.fff.ggg.hhh
tunnel enable 1

 このように,ユーザー側のIPv4アドレスとトンネルの出口となるIPv4アドレスを指定すれば,これらの間にIPv6トンネルが作成されます。

ステップ2:LANインタフェースの設定

 次にLAN側にIPv6アドレスを指定します。先ほど,48ビット分しか割り当てられないと説明しましたが,残りはユーザーが割り当てることになっています。ただし,通常は後半64ビット分は個々のマシンがMACアドレスなどから自動生成するので,ユーザーが明示的にルーターに設定する必要があるのは先頭の64ビット(プレフィクス)だけです。割り当てられたアドレス空間は2001:218:xyz::/48ですが,ここではその中から49ビット目から64ビット目までをビット0としたプレフィクスを使うこととします。この場合,プレフィクスは2001:218:xyz::/64となります。ゼロが連続しているときは,::と表記できるからです。

 設定は次のようになります。最初にプレフィクスを宣言し,次にLANポート(lan1)に設定するわけです。

ipv6 prefix 1 2001:218:xyz::/64
ipv6 lan1 address 2001:218:xyz::1/64
ipv6 lan1 rtadv send 1

 最後の1行は,LAN内にプレフィクスの値を広告するRA(router advertisement)を起動するためのものです。これにより,LANポート(lan1)からRAが送出されるようになりました。RAはプレフィクスやデフォルト・ルートのIPv6アドレスを通知します。これによりクライアントは,自らが生成したインタフェースIDをプレフィクスと組み合わせて自動的にIPv6グローバル・アドレスを作ることができるようになります。

ステップ3:ルーティングの設定

 デフォルト・ルートの設定です。IPv6のデフォルト・ルートをトンネル・インタフェースに向けます。

ipv6 route default gateway tunnel 1

 なお,YAMAHA RT54iは以下の二つのおまじないが必要となるので,これも設定して下さい。

nat descriptor masquerade static 1 1 aaa.bbb.ccc.ddd ipv6 *
ip pp local address aaa.bbb.ccc.ddd

 以上でIPv6トンネル接続完了です。LAN側のIPv6クライアントからping6などで外部との接続性を試してみて下さい。

 最後に,よくあるトラブルについて説明しましょう。それは,パケット・フィルタリングに関係するものです。IPv6トンネル接続ではプロトコル番号41番のIPv4パケットを使用します。そのため,プロバイダと接続しているルーターが「プロトコル番号41番のIPv4パケット」を破棄するように設定されていると,IPv6トンネル接続ができないというトラブルが発生します。「IPv6トンネル接続の設定をしたのに,なぜかIPv6で通信できない」という状況に陥ったら,まずプロトコル番号41番がフィルタリングされていないか確認して下さい。

 フィルタリングを外す方法ですが,YAMAHA RT54iではセキュリティ・レベルを1-3にします(デフォルト設定は4です)。その他,米シスコシステムズ製のルーターの場合,アクセス・リスト

access-list XXX permit 41 host eee.fff.ggg.hhh host aaa.bbb.ccc.ddd

を,inbound(OCN→ユーザ)に設定すればいいでしょう。