プロトコル41(6in4)とは:IPv6をIPv4にトンネリングする仕組みと用途
プロトコル41(6in4)とは?IPv6パケットをIPv4内にトンネル化する仕組みを分かりやすく解説。6in4/6to4/6rdの違いや設定、運用上の注意点と活用例を掲載。
プロトコル41(通称:6in4)は、インターネットプロトコルバージョン6(IPv6)パケットをインターネットプロトコルバージョン4(IPv4)パケットのペイロードとしてカプセル化して送信するための仕組みです。IPv4しか割り当てられていないホストやネットワークがIPv6接続を確立するための移行手段として広く使われてきました。多くのIPv6トンネルプロバイダ(Hurricane ElectricのTunnelbrokerなど)はProtocol 41をサポートします。6to4、6rd、6in4はすべてプロトコル41を利用する異なる方式です。プロトコル41自体はTCPやUDPを使いません(ただし、カプセル化された内部のIPv6パケットはTCP/UDPトラフィックを運べます)。このため、TCP/UDPのポート番号と混同しないよう注意が必要です。通信プロトコル
動作の仕組み(パケット構造)
プロトコル41のカプセル化では、送信側は元のIPv6パケット(IPv6ヘッダ+IPv6ペイロード)をそのままIPv4パケットのペイロードに入れ、IPv4ヘッダの「Protocol」フィールドに値41を設定して送ります。受信側はIPv4ヘッダを取り除き、内部のIPv6パケットを処理します。
- IPv4ヘッダのProtocolフィールド=41:これがIPv6がカプセル化されている合図です。
- オーバーヘッドとMTU:通常のIPv4ヘッダ(20バイト)分だけオーバーヘッドが発生します。トンネル経由のIPv6 MTUは、下位のIPv4 MTUからIPv4ヘッダ長を差し引いた値になります(例:Ethernet MTU 1500なら、IPv6は約1480)。PMTUD(パスMTU探索)やMTU調整が必要です。
- フラグメンテーション:IPv4のフラグメンテーション規則が適用されます。途中経路で断片化されるとIPv6側で問題が生じることがあるため注意。
種類と用途
- 6in4(スタティックなトンネル):利用者とトンネルブローカーが双方のIPv4アドレスを事前に設定して使う方式。安定した接続と確実なルーティングが得られます。
- 6to4:自動トンネル方式で、IPv4アドレスを元に2002::/16プレフィックスで自動的にIPv6アドレスを生成します。リレーを経由するため経路の品質にばらつきがあり、NAT環境では使いにくいです。
- 6rd:ISPが自社ネットワーク内でIPv6を配布するために使う方式。ISPのIPv4ネットワークを利用してIPv6プレフィックスを配るため、利用者からは透過的にIPv6が利用できます。
利点
- 既存のIPv4インフラを使って比較的簡単にIPv6接続を確立できる。
- トンネルブローカーを利用すれば固定IPv4アドレスがなくてもIPv6が利用可能になることがある(ただしNATが障害になる場合あり)。
- 移行期間中にIPv6を試験・学習するのに便利。
制限と注意点
- NATとの相性:多くの家庭用ルーターやキャリアグレードNATはプロトコル41を適切に通さないため、NAT環境下ではトンネルが成立しないことがあります。NAT越えが必要な場合はUDPベースのトンネリング(例:AICCU/AYIYA、Teredo、OpenVPN上のIPv6など)を検討してください。
- セキュリティ:プロトコル41はポート番号を持たないため、一般的なポートベースのフィルタでは制御できません。不正なトンネルやスプーフィングを防ぐために、ファイアウォールでプロトコル41を明示的に許可/拒否する、またはエンドポイントIPを限定するなどの対策が必要です。重要な場合はIPsecでトンネルを保護する選択肢もあります。
- 経路とルーティング:スタティックな6in4ではトンネルの両端でIPv4アドレスを指定し、トンネル経由のIPv6ルートを設定します。プロバイダ側が適切にルーティングしないとパケットロスや到達不可が起きます。
- サービスの可用性:かつてはSixXSなどのサービスが人気でしたが、運営状況は変化します。現在もHurricane Electricのようなトンネルブローカーが一般的です。
設定の概略(例:Linux)
実際の設定手順は環境によって異なりますが、Linux(iproute2)での典型的な流れは次の通りです。
- トンネルデバイスを作成:ip tunnel add tun6in4 mode sit remote
local ttl 64 - デバイスを有効化:ip link set tun6in4 up
- IPv6アドレスを割当:ip -6 addr add
/ dev tun6in4 - デフォルトルートの追加:ip -6 route add default via
dev tun6in4
(具体的なコマンドはディストリビューションや要件に合わせて調整してください。)
まとめと推奨
プロトコル41(6in4)は、IPv4ネットワーク上でIPv6を運ぶシンプルで効率的なトンネリング方式です。設定が比較的容易で、トンネルブローカーを利用すれば即座にIPv6接続を得られます。ただし、NATやファイアウォール、MTUやセキュリティの課題があるため、本番での運用や広域展開ではISP提供のネイティブIPv6やより堅牢なトンネル方式(6rdやIPsec保護など)を優先することを推奨します。
6to4
6to4は、プロトコル41の特殊な使い方です。6to4アドレスは、2002という数字で始まり、その後にルーターのIPv4アドレスが続きます。6to4 アドレスは、次のようになります。2002:CB00:71FF:0:fe64:3486:d398:3346
関連ページ
- テレドトンネリング
百科事典を検索する