Tunnel(ISATAPの仕組み)その1

 ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)トンネルを利用することで、IPv4ネットワーク上にあるデュアルスタックホストをIPv6ネットワークへ接続することができます。

デュアルスタックホストとは、IPv4アドレス、IPv6アドレスの両方をサポートするホストを指します。

 ISATAPトンネルを使用することで、トンネルを終端するルータとデュアルスタックホスト間のネットワークを、あたかも1つのIPv6サブネットのように扱うことができます。

 IPv4ネットワークにしか接続していないIPv6ホストに、その先にあるIPv6インターネットと通信できるようにします。

ISATAPでは、IPv4アドレスをIPv6アドレスの一部として組み込みます。IPv6アドレスの一部として組み込む際にIPv4アドレスが、16進数として扱います。以下のような変換は発生します。

IPv4アドレス(10進数) ⇔ IPv6アドレス(16進数)

IPv4⇔IPv6へ変換する際のアドレス計算が、理解しやすいように、単純なアドレスを用いることにします。

PC1のアドレス

・PC1のF0のIPv4アドレス・・・10.1.1.2/24

R1ルータ

・R1ルータのF0/0のIPv4アドレス・・・10.1.1.1/24

●ISATAPトンネル(Tunnel 0)

ISATAPトンネルのアドレスは、以下となります。

・グローバルユニキャストアドレス

グローバルユニキャストアドレスは以下のように定義されています。

 <任意のプレフィクス>:0:5EFE:

 プレフィックスは、自由に指定することができます。ここでは、プレフィックスに単純な「2001:1:1:1/64」を指定することにします。R1のIPv4アドレスが「10.1.1.1/24」となるため、グローバルユニキャストアドレスは、「2001:1:1:1:0:5EFE:0A01:0101」となります。

 IPv6アドレスは省略表記ができるため、「2001:1:1:1:0:5EFE:0A01:0101」は「2001:1:1:1:0:5EFE:A01:101」となりますが、ここでは、分かりやすさを重視して「2001:1:1:1:0:5EFE:0A01:0101」で表記していくことにします。

補足:IPv4アドレスの「10.1.1.1」ですが、16進数で表現すると、「0A.01.01.01」となります。IPv6アドレスへ、ヘクステット表現にすると「0A01:0101」となります。

・リンクローカルアドレス

リンクローカルアドレスは以下のように定義されています。

 FE80::5EFE:

R1のIPv4アドレスが「10.1.1.1/24」となるため、「FE80::5EFE:0A01:0101」となります。

 分かりやすさを重視するため、「FE80::5EFE:0A01:0101」は、「FE80::5EFE:A01:101」と省略表記できますが、「FE80::5EFE:0A01:0101」と表記していくことにします。

 ここまでのIPアドレスをまとめたものが下表となります。Tunnel 0 のプレフィックスには単純な「2001:1:1:1/64」を指定しています。

デバイスインターフェイスIPv4 アドレスIPv6 アドレス
R1F0/010.1.1.1/24該当なし
Tunnel 0該当なしGUA 2001:1:1:1:0:5EFE:0A01:0101
LLA  FE80::5EFE:0A01:0101
PC1F010.1.1.2/24該当なし

図で示すと下図となります。

この続きは、次の「Tunnel(ISATAPの仕組み)その2」で解説していきます。

関連コンテンツ