IPv6 ことはじめ

第5回 IPv6 への移行

IIJ技術研究所
山本和彦
iij.news (December 1999 - January 2000 Vol.22)

移行の難しさ

インターネットが成功を納めた 理由の 1 つとしてインターネッ トが自立分散システムであるこ とが挙げられるでしょう。イン ターネットには中央集権的な支 配者は存在せず、独立性の高い 参加者が有機的にインターネッ トを構成しています。

これは独裁者の言いなりになら なくてよいという意味で利点で すが、逆に全体で統一した意思 を持てないという意味で欠点と なります。

中央集権的に管理されている電 話網では、利用者は電話会社の 言いなりになる他ありません。 そのため新しい技術への移行を (言葉は悪いのですが)強制的に 実行できます。今年携帯電話や PHS の桁番号を 10 桁から 11 桁に増やした例を思い出す人も 多いでしょう。

インターネットでは、一斉に IPv4 から IPv6 へ移行するこ となどほとんど実現不可能です。 今日から IPv6 だけ使いなさい というような決定をだれも下せ ないからです。自律分散性に加 え、世界中に普及したという大 規模性も移行の問題を複雑にし ています。

このような視点から見ると、 IPv6 への移行は、人類にとっ て未知の経験となると言えるで しょう。今回は IPv4 から IPv6 への移行について、予想 絵巻を描いてみようと思います。


デュアルスタック

前述したようにすべての IPv4 コンピュータを一斉に IPv6 コ ンピュータに入れ換えることは できません。IPv6 が普及した 後も、おそらく一部の IPv4 コ ンピュータは残り続けるでしょ う。これは、IPv4 コンピュー タと IPv6 コンピュータとの共 存を可能にする必要があること を意味しています。

共存のための第 1 の技術をデュ アルスタックといいます。デュ アルスタックとは、IPv4 と IPv6 の両方をサポートするこ とです。IPv4 と IPv6 の両方 をしゃべるバイリンガルと思っ て頂いても結構です。

移行の初期、つまり現時点での IPv6 コンピュータは、デュア ルスタックにすることが奨励さ れています。そこで、デュアル スタック・コンピュータとIPv6 コンピュータが混在する環境に ついて考えてみましょう。

たとえば、ある Ethernet にお いて IPv4 と AppleTalk が共 存できるように、IPv4 と IPv6 も共存が可能です。このように データリンクを共有している環 境では、デュアルスタック・コ ンピュータは、他のデュアルス タック・コンピュータと通信す る際、 IPv6 を使います。 (IPv4 でも通信可能ですが、 IPv4 を使い続けると移行には なりませんから。)

(同じデータリンク内でもデー タリンク外でも) IPv4 コンピュー タと通信するときはもちろん IPv4 を利用します。


トンネル

前述のようにデュアルスタック・ コンピュータ同士がデータリン クを共有している環境ではなん ら問題なく IPv6 を使用できま す。しかし、現在のインターネッ トの大部分では IPv4 しか利用 できません。

多くの場合、デュアルスタック・ コンピュータは、言わば IPv4 インターネットという大海に点 在する島のような存在です。こ のような環境においてデュアル スタック・コンピュータ同士が 通信するには、IPv6 パケット が IPv4 インターネットを渡っ ていく必要があります。

この共存のための第 2 の技術 をトンネルといいます。たとえ るなら、トンネルとは橋の役割 を果たします。IPv6 の島をつ なぐ橋をかけて、2 つの島をあ たかも地続きにします。

実際には、IPv6 パケットはト ンネルの入口において IPv4 パ ケットにカプセル化され、IPv4 パケットとして IPv4 インター ネットの中を配送されます。ト ンネルの端まで届くと中の IPv6 パケットが取り出されま す。

tunnel

IPv4 パケットの中に IPv6 パ ケットがくるまれるという意味 で、これを「IPv6 in IPv4 ト ンネル」と具体的な修飾子を付 けて呼ぶ人もいます。

現在は、IPv6 in IPv4 トンネ ルを使って、IPv6 の島を接続 した仮想ネットワーク 6bone が IPv4 インターネット上に敷 設されています。現在 6bone には 42 カ国が参加しています。 6bone についての詳しい情報は、 ここから得られます。


トランスレータ

世の中が IPv4 コンピュータと デュアルスタック・コンピュー タだけなら移行はそう難しい問 題ではありません。最悪 IPv4 を使えば通信できるからです。

しかし、移行が進めば IPv6 コ ンピュータが出現します。なぜ なら IPv4 アドレスはいずれ枯 渇するからです。デュアルスタッ クの機能があっても、IPv4 ア ドレスが割り当ててもらえない ものは実質的に IPv6 コンピュー タに他なりません。

上記のようにインターネット大 部分が IPv6 になったとしても、 IPv4 コンピュータは長期に渡っ て残り続けると予想されます。 そこで、IPv4 コンピュータと IPv6 コンピュータの共存とい う問題が浮上してきます。

たとえば、互いの言葉に対する 理解がない日本人とアメリカ人 が直接の会話は不可能なように、 IPv4 コンピュータと IPv6 コ ンピュータが直接通信すること はできません。もうお分かりの ように、この問題を解決するに は、通訳者が必要となります。

通訳者は共存のための第 3 の 技術であり、トランスレータと 呼ばれています。言うまでもな いことですが、トランスレータ となるコンピュータはデュアル スタックである必要があります。

長い間トランスレータは移行の 後期に必要になると考えられて いました。しかし、現在の厳し い IPv4 アドレスの割り当て方 針では、結局十分な IPv4 アド レスを取得できないので、移行 初期にも IPv6 コンピュータが 現れることが分かって来ました。 つまり、移行初期でもトランス レータが必要です。

トランスレータには種類がたく さん有り、限られた紙面ではす べてを網羅できません。そこで、 今回は KAME で作成された FAITH というトランスレータに ついて説明します。

FAITH は、移行初期に必要なト ランスレータです。しかも、組 織内の IPv6 コンピュータが、 IPv4 インターネット上の IPv4 コンピュータに対して TCP の 通信を開始する場合のみに利用 可能です。

こう書くとなんだか仮定が多す ぎて結局は使えないような印象 を与えるかもしれませんが、こ の種のトランスレータがあれば、 移行初期のほとんどの問題を解 決できます。実際に我々は数年 FAITH を使い続けており、その 有用性を実証しています。


TCP リレー

通訳の視点からみると、FAITH は TCP リレーという技術を使 います。TCP リレーとは言わば コネクションの横取りです。

以下の図を使って TCP リレーを解 説します。この図は、IPv6 コ ンピュータである v6.com が IPv4 コンピュータである v4.org に対し TCP で通信する 場合を描いています。

faith

まず v6.com が「ある IPv6 ア ドレス」に対し、IPv6 上に TCP コネクションを張ろうとし たとします。説明を簡潔にする ために、これを TCP/IPv6 と表 すことにします。途中でこのパ ケット受け取った FAITH は、 宛先が自分ではないにも係わら ず、終点のふりをしてこのコネ クションを終端します。

次に、FAITH は実際の終点であ る v4.org に新たに TCP/IPv4 コネクションを張ります。そし て、それぞれのコネクション行 き来するデータを橋渡しするこ とで、通訳者として働きます。


嘘付き DNS サーバ

v4.org は IPv4 コンピュータ です。それでは v6.com が TCP/IPv6 コネクションを張ろ うとする「ある IPv6 アドレス」 とは一体何なのか疑問に思った 人も多いでしょう。

前回お話ししたように、ユーザ は通信相手のコンピュータを名 前で指定します。図 2 で v6.com を使っているユーザは、 v4.org という名前を指示する ことになります。

IPv6 コンピュータですから、 当然 v4.org を IPv6 アドレス に変換しようと思い、組織内の DNS サーバに AAAA レコードを 要求するでしょう。この DNS サーバは、v4.org を管理して いる DNS サーバに問い合わせ ます。v4.org は IPv4 コンピュー タなので、v4.org には A レコー ドしか登録されていないことを 知ります。

このとき組織の DNS は、検索 した IPv4 をあらかじめ管理者 が設定したプレフィックスに埋 め込むことで IPv6 アドレスに 変換し、AAAA レコードとして v6.com に返答します。言わば、 組織の DNS サーバは v6.com に対し嘘を付くわけです。

v6.com が通信を開始する IPv6 アドレスとは、v4.org の IPv4 アドレスが、組織のあるプレフィッ クスに埋め込まれた IPv6 アド レスです。このプレフィックス にマッチするIPv6 アドレスを 終点に持つ IPv6 パケットは FAITH まで届くように経路が制 御されています。

前述のように、FAITH は TCP/IPv6 コネクションを横取 りします。さらに終点の IPv6 アドレスから本当の終点である IPv4 アドレスを取り出せるの で、本当の終点である v4.org に TCP/IPv4 コネクションを確 立できるわけです。


おわりに

今回は移行のための技術として デュアルスタック、トンネル、 およびトランスレータを紹介し ました。移行のイメージが少し でも伝われば幸いです。
Email: kazu@iijlab.net
URL: http://www.mew.org/~kazu/