プロトコル41(6in4)とは:IPv6をIPv4にトンネリングする仕組みと用途

プロトコル41(6in4)とは?IPv6パケットをIPv4内にトンネル化する仕組みを分かりやすく解説。6in4/6to4/6rdの違いや設定、運用上の注意点と活用例を掲載。

著者: Leandro Alegsa

プロトコル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

関連ページ

  • テレドトンネリング


百科事典を検索する
AlegsaOnline.com - 2020 / 2025 - License CC3