(57)【要約】【課題】送信側6 to 4ホストがＮＡＴ領域内部にあり、受信側6 to 4ホストがＮＡＴ領域外部に存在しても、6 to 4トンネルを介して双方向通信できるシステム等を提供する。【解決手段】ＮＡＴ内部領域のホストから受信された要請メッセージの外部ヘッダの出発地アドレスと内部ヘッダの出発地アドレスとが同一かを判断し、同一でない場合には予め格納されたＮＡＴ変換情報を用いて外部ヘッダの出発地アドレスを汎用アドレスに変換し、該変換された外部ヘッダの出発地汎用アドレスと内部ヘッダの出発地アドレスから抽出、変換された私設アドレスとを、マッピングテーブルにエントリーとして格納した後、当該要請メッセージをＮＡＴ外部領域のホストに転送し、該ホストから受信された要請メッセージに対する応答メッセージの外部ヘッダの目的地アドレスをマッピングテーブルに格納された汎用アドレスに割り当てた後、該応答メッセージを転送する。【選択図】  図６
2008079304.tif 000002
【特許請求の範囲】
【請求項１】
異なるアドレス形式を有する網間のＮＡＴ（Network Address Translation）を使用した自動トンネリング方法であって、
前記ＮＡＴ内部領域のホストから受信された要請メッセージの外部ヘッダーの出発地アドレスと内部ヘッダーの出発地アドレスとが同一であるか否かを判断する過程と、
前記外部ヘッダーの出発地アドレスと内部ヘッダーの出発地アドレスが同一でない場合に、予め格納されたＮＡＴ変換情報を用いて、前記外部ヘッダーの出発地アドレスを汎用アドレスに変換する過程と、
前記変換された外部ヘッダーの出発地汎用アドレスと前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスとを、マッピングテーブルエントリーとしてマッピングテーブルに格納した後に、当該要請メッセージをＮＡＴ外部領域のホストに転送する過程と、
前記マッピングテーブルに格納された汎用アドレスを、前記ＮＡＴ外部領域のホストから受信された前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当てた後に、該応答メッセージを転送する過程と、
を含むことを特徴とするＮＡＴを使用した自動トンネリング方法。
【請求項２】
前記要請メッセージをＮＡＴ外部領域のホストに転送する過程で、
前記外部ヘッダーの出発地汎用アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４汎用アドレスであり、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスは、前記ルータのＩＰｖ４私設アドレスであること
を特徴とする請求項１に記載のＮＡＴを使用した自動トンネリング方法。
【請求項３】
前記応答メッセージをＮＡＴ変換器（NAT Translator）が受信する場合に、該ＮＡＴ変換器によって該応答メッセージの外部ヘッダーの目的地アドレスを私設アドレスに変換し、該変換後の応答メッセージを前記ＮＡＴ内部領域に位置するルータに転送する過程をさらに含むこと
を特徴とする請求項２に記載のＮＡＴを使用した自動トンネリング方法。
【請求項４】
前記要請メッセージをＮＡＴ外部領域のホストに転送する過程で、
前記マッピングテーブルは、前記外部ヘッダーの出発地汎用アドレスを格納するためのフィールドと、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスを格納するためのフィールドと、前記格納されたマッピングテーブルエントリーが所定時間経過後に削除される時間を示す時間情報を格納するための消滅タイマーフィールドと、
を含むことを特徴とする請求項１に記載のＮＡＴを使用した自動トンネリング方法。
【請求項５】
前記マッピングテーブルエントリーの格納時に前記消滅タイマーフィールドに格納される時間情報は、ＮＡＴ装備（equipment）に設定されたタイマー値によって設定されること
を特徴とする請求項４に記載のＮＡＴを使用した自動トンネリング方法。
【請求項６】
前記格納されたマッピングテーブルエントリーは、前記消滅タイマーフィールドに格納された時間情報値が‘０’になると、自動的に削除されること
を特徴とする請求項５に記載のＮＡＴを使用した自動トンネリング方法。
【請求項７】
異なるアドレス形式を有する網間のＮＡＴ（Network Address Translation）を使用した自動トンネリングシステムであって、
前記ＮＡＴ内部領域のホストから受信された要請メッセージの外部ヘッダーの出発地アドレスと内部ヘッダーの出発地アドレスとが同一でない場合に、予め格納されたＮＡＴ変換情報を用いて、前記外部ヘッダーの出発地アドレスを汎用アドレスに変換し、該変換された前記外部ヘッダーの出発地汎用アドレスと、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスとを、マッピングテーブルエントリーとしてマッピングテーブルに格納し、前記マッピングテーブルに格納された汎用アドレスを、前記ＮＡＴ外部領域のホストから受信された前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当て、当該応答メッセージを転送するための、ＮＡＴ外部領域に位置されるルータを含むこと
を特徴とするＮＡＴを使用した自動トンネリングシステム。
【請求項８】
前記ルータは、
前記ＮＡＴ内部領域と外部領域とに位置する各ホストとメッセージを送受信するためのパケット送受信部と、
ＮＡＴ変換器（NAT Translator）から転送される要請メッセージを前記パケット送受信部を介して受信し、該受信された要請メッセージの外部ヘッダーに含まれた出発地アドレスと内部ヘッダーの出発地アドレスとを比較するアドレス比較部と、
前記アドレス比較部で比較されたアドレス比較結果に基づいて、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされているか否かを判断する制御部と、
前記制御部の判断結果、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされている場合には、前記制御部の制御によって、前記要請メッセージの外部ヘッダーに含まれた出発地汎用アドレスと、内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスと、を格納するマッピングテーブルＤＢと、
前記制御部の制御により、前記マッピングテーブルＤＢに格納された私設アドレスにマッピングされた汎用アドレスを、前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当てて、前記ＮＡＴ変換器に転送すべき応答メッセージを生成する応答メッセージ生成部と、
を含むことを特徴とする請求項７に記載のＮＡＴを使用した自動トンネリングシステム。
【請求項９】
前記マッピングテーブルＤＢに格納される外部ヘッダーの出発地汎用アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４汎用アドレスであり、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４私設アドレスであること
を特徴とする請求項８に記載のＮＡＴを使用した自動トンネリングシステム。
【請求項１０】
前記マッピングテーブルＤＢに格納されるマッピングテーブルは、
前記外部ヘッダーの出発地汎用アドレスを格納するためのフィールドと、
前記内部ヘッダーの出発地アドレスから抽出変換された私設アドレスを格納するためのフィールドと、
前記格納されたマッピングテーブルエントリーが所定時間経過後に削除される時間を示す時間情報を格納するための消滅タイマーフィールドと、
を含むことを特徴とする請求項７に記載のＮＡＴを使用した自動トンネリングシステム。
【請求項１１】
前記マッピングテーブルエントリーの格納時に前記消滅タイマーフィールドに格納される時間情報は、ＮＡＴ装備に設定されたタイマー値によって設定されること
を特徴とする請求項１０に記載のＮＡＴを使用した自動トンネリングシステム。
【請求項１２】
前記格納されたマッピングテーブルエントリーは、前記消滅タイマーフィールドに格納された時間情報値が‘０’になると、自動的に削除されること
を特徴とする請求項１１に記載のＮＡＴを使用した自動トンネリングシステム。
【請求項１３】
異なるアドレス形式を有する網間のＮＡＴ（Network Address Translation）を使用したルーティング装置であって、
ＮＡＴ内部領域と外部領域とに位置する各ホストとメッセージを送受信するためのパケット送受信部と、
ＮＡＴ変換器（NAT Translator）から転送される要請メッセージを前記パケット送受信部を介して受信し、該受信された要請メッセージの外部ヘッダーに含まれた出発地アドレスと内部ヘッダーの出発地アドレスとを比較するアドレス比較部と、
前記アドレス比較部で比較されたアドレス比較結果に基づいて、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされているか否かを判断する制御部と、
前記制御部の判断結果、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされている場合には、前記制御部の制御によって、前記要請メッセージの外部ヘッダーに含まれた出発地汎用アドレスと、内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスと、を格納するマッピングテーブルＤＢと、
前記制御部の制御により、前記マッピングテーブルＤＢに格納された私設アドレスにマッピングされた汎用アドレスを、前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当てて、前記ＮＡＴ変換器に転送すべき応答メッセージを生成する応答メッセージ生成部と、
を含むことを特徴とするルーティング装置。
【請求項１４】
前記マッピングテーブルＤＢに格納される外部ヘッダーの出発地汎用アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４汎用アドレスであり、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４私設アドレスであることを特徴とする請求項１３に記載のルーティング装置。
【請求項１５】
前記マッピングテーブルＤＢに格納されるマッピングテーブルは、
前記外部ヘッダーの出発地汎用アドレスを格納するためのフィールドと、
前記内部ヘッダーの出発地アドレスから抽出変換された私設アドレスを格納するためのフィールドと、
前記格納されたマッピングテーブルエントリーが所定時間経過後に削除される時間を示す時間情報を格納するための消滅タイマーフィールドと、
を含むことを特徴とする請求項１３に記載のルーティング装置。
【請求項１６】
前記マッピングテーブルエントリーの格納時に前記消滅タイマーフィールドに格納される時間情報は、ＮＡＴ装備に設定されたタイマー値によって設定されること
を特徴とする請求項１４に記載のルーティング装置。
【請求項１７】
前記格納されたマッピングテーブルエントリーは、前記消滅タイマーフィールドに格納された時間情報値が‘０’になると、自動的に削除されること
を特徴とする請求項１６に記載のルーティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＮＡＴ（Network Address Translation）を使用した自動トンネリング方法及びそのシステムに関し、より詳細には、ＩＰｖ６ Ｔｒａｎｓｉｔｉｏｎトンネルの１種類である６ ｔｏ ４トンネルをＮＡＴ（Network Address Translation）領域の外でも使用することができるようにする、ＮＡＴを使用した自動トンネリング方法及びそのシステムに関する。
【背景技術】
【０００２】
ネットワーク間接続プロトコルであるＴＣＰ／ＩＰ（Transmission Control Protocol/Internetworking Protocol）プロトコルにおいて、ネットワーク階層プロトコルは、現在ＩＰｖ４（Internetworking Protocol、version 4）として運用されている。ＩＰｖ４は、インターネット上でシステム間にホスト対ホスト通信を提供する。しかしながら、たとえＩＰｖ４が良く設計されていても、ＩＰｖ４が出てきた（すなわち、１９７０年代）以来、発展を重ねているデータ通信（例えば、インターネット）にＩＰｖ４を適用する際に、いくつかの問題が生じる。
【０００３】
したがって、このような問題を解決するために、‘ＩＰｎｇ（Internetworking Protocol、next generation）’として知られるＩＰｖ６（Internet Protocol、version 6）が提案され、現在標準になった。ＩＰｖ６では、インターネットプロトコルの多くの部分が、急激に発展するインターネットを受け入れるために修正された。
【０００４】
例えば、ＩＰアドレスの形式と長さがパケット形式と共に変化し、また、関連したプロトコル（例えばＩＣＭＰ（Internet Control Message Protocol）など）が修正され、さらには、例えばＡＲＰ（Address Resolution Protocol）、ＲＡＲＰ（Reverse Address Resolution Protocol）、及びＩＧＭＰ（Internet Group Management Protocol）のような他のプロトコルがネットワーク階層から削除されたりＩＣＭＰプロトコルに含まれたりした。また、ルーティングプロトコル｛例えば、ＲＩＰ（Routing Information Protocol）、ＯＳＰＦ（Open Shortest Path First）など｝がこのような変化を受け入れるために若干ずつ修正された。
【０００５】
このようにＩＰｖ６が提案され、現在標準になって次第にＩＰｖ６基盤で動作するシステムが開発されてはいるが、インターネットには非常に多くのシステムが存在するので、ＩＰｖ４からＩＰｖ６への移行（transition）を急激に行うことはできない。すなわち、インターネット上の全てのシステムがＩＰｖ４からＩＰｖ６に転換するには、多くの時間が必要である。また、かかる移行は、ＩＰｖ４システムとＩＰｖ６システムとの間に発生する問題を防止するために、漸進的になされなければならない。
【０００６】
このような戦略は、ＩＥＴＦ（Internet Engineering Task Force）により考案されたが、二重スタック（dual stack）を用いる方法、ヘッダー変換（header translation）方法、トンネリング（tunneling）を用いる方法の３つの方法が挙げられる。
【０００７】
二重スタック（dual stack）を用いる方法は、ＩＰｖ６に完全に移行する前に全てのホストが二重スタック（dual stack）プロトコルを有することを意味する。すなわち、インターネット上の全てのシステムがＩＰｖ６を使用するまでＩＰｖ４とＩＰｖ６を同時に運用する方法である。
【０００８】
ヘッダー変換（header translation）方法は、大部分のインターネットがＩＰｖ６を使用するが、まだ一部のシステムがＩＰｖ４を使用する場合に有用な方法である。すなわち、送信側はＩＰｖ６を使用することを希望するが、受信側がＩＰｖ６を理解しない場合に、送信側がＩＰｖ６パケットのヘッダーをＩＰｖ４ヘッダーに変換して転送する方法である。
【０００９】
トンネリング（tunneling）方法は、ＩＰｖ６を使用する２つのコンピュータが互いに通信する際に、ＩＰｖ４を使用する領域を通過しなければならない場合に使用される方法である。すなわち、トンネリング方法は、ＩＰｖ６パケットがＩＰｖ４を使用する領域に入る時に、ＩＰｖ６パケットをＩＰｖ４パケット内にカプセル化し、ＩＰｖ４領域を抜け出る時に逆カプセル化する方法である。
【００１０】
特に、このようなトンネリングの種類は、大きく、設定トンネル（configured tunnel）と自動トンネル（automatic tunnel）とに区分され、自動トンネルの例としては、６ ｔｏ ４、ＩＳＡＴＡＰ（Intra-Site Automatic Tunnel Address Protocol）などが挙げられる。本発明は、これらの内のトンネリング方法に関するもので、特に６ ｔｏ ４自動トンネリング方法に関するものである。
【００１１】
この６ ｔｏ ４トンネリングメカニズムは、１つ以上のユニークなＩＰｖ４アドレスを有しているＩＰｖ６専用サイトに６ ｔｏ ４ ＩＰｖ６ Ｐｒｅｆｉｘを割り当てることによって、外部ＩＰｖ６ネットワークと自動トンネリングを遂行することを可能にするメカニズムを指す。６ ｔｏ ４トンネリングメカニズムでは、例えば“２００２：ＩＰｖ４アドレス：：／６４”のように、ＩＰｖ６アドレス形式の中でインタフェース識別子にＩＰｖ４アドレスを含めるＩＰｖ６汎用（universal）アドレスを使用する。例えば、IPv６/IPv４ルータのＩＰｖ４アドレスが１０．１．１．１である場合に、IPv６/IPv４ルータのＩＰｖ６アドレスは、“Ｇｌｏｂａｌ ６ ｔｏ ４ Ａｄｄｒｅｓｓ：２００２：０ａ０１：０１０１：：１／６４”のように設定されることができる。
【００１２】
一方、ＮＡＴ（Network Address Translation）は、私設アドレスを汎用アドレスに変換させたり、逆に、汎用アドレスを私設アドレスに変換させるための変換方式であって、ＲＦＣ３０２２に定義されている。すなわち、ＮＡＴは、ＮＡＴの内部領域では私設アドレスを使用し、ＮＡＴの外部領域では汎用アドレスを使用して、ＮＡＴ装備（equipment）がこれら各アドレスを対応させる、という方式である。このようなＮＡＴは、元来汎用ＩＰｖ４アドレスの枯渇に対処するために開発されたが、セキュリティの効果をも有する。
【００１３】
上述した６ ｔｏ ４自動トンネリング方式の問題点は、IPv６/IPv４ルータのうち１つのルータがＮＡＴ領域の内部に存在し、他の１つのIPv６/IPv４ルータがＮＡＴ領域の外部に存在する場合に、ＮＡＴ領域内部の６ ｔｏ ４ホストからＮＡＴ領域外部に存在する６ ｔｏ ４ホストに転送されるＩＣＭＰｖ６要請メッセージは正常的に到達するが、ＮＡＴ領域外部の６ ｔｏ ４ホストから転送される、上記ＩＣＭＰｖ６要請メッセージに対するＩＣＭＰｖ６応答メッセージは、ＮＡＴ領域内部の６ ｔｏ ４ホストまで到達することができない、ということである。なぜなら、ＮＡＴ領域外部の６ ｔｏ ４ルータがＩＣＭＰｖ６応答メッセージをカプセル化する際に使用するＩＰｖ４目的地アドレスは、ＮＡＴ領域内部のIPv６/IPv４ルータの私設アドレスであるため、ＮＡＴ領域外部のIPv６/IPv４ルータには、当該ＩＰｖ４アドレスに対するルーティング情報が存在しないからである。
【００１４】
このように、従前より、ＮＡＴを使用した６ ｔｏ ４ホスト間での双方向通信は不可能であった。これに対し、このような短所を解決するための方案として、６ ｔｏ ４トンネルでカプセル化された全てのパケットをＮＡＴ装備で別々に処理する方案（６ ｔｏ ４  ＡＬＧ）が特許文献１に開示されている。この方案では、ＮＡＴ装備でIPv６/IPv４ルータからカプセル化されたパケットを受信すると、このパケットを公認アドレスに変換するときに、ＩＰｖ４パケットの出発地アドレスだけを変更するのではなく、ＩＰｖ６出発地アドレスにもＩＰｖ４公認アドレスが含まれるように修正する。しかしながら、このような方式は、ＮＡＴ装備で全てのパケットを検査し、６ ｔｏ ４方式でカプセル化されたかを調べ、６ ｔｏ ４パケットを修正しなければならないので、送信遅延が発生し、ＮＡＴ装備の負荷も増大する、という問題点があった。
【特許文献１】大韓民国出願番号第１０−２００５−７００８５１９号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１５】
従って、本発明の目的は、前述のような問題点を解決するためになされたもので、送信側６ ｔｏ ４ホストがＮＡＴ領域内部にあり、受信側６ ｔｏ ４ホストがＮＡＴ領域外部に存在しても、６ ｔｏ ４トンネルを介した双方向通信を行うことを可能にした、ＮＡＴを使用した自動トンネリング方法及びそのシステムを提供することにある。
【００１６】
また、本発明の他の目的は、ＮＡＴ領域を介して６ ｔｏ ４方式を使用するにあたって、ＮＡＴ装備の修正を不要とし、追加的な送信遅延を最小化できるようにした、ＮＡＴを使用した自動トンネリング方法及びそのシステムを提供することにある。
【課題を解決するための手段】
【００１７】
上記目的を達成するために、本発明の第一の側面は、異なるアドレス形式を有する網間のＮＡＴ（Network Address Translation）を使用した自動トンネリング方法を提供するものであって、かかる方法は、ＮＡＴ内部領域のホストから受信された要請メッセージの外部ヘッダーの出発地アドレスと内部ヘッダーの出発地アドレスとが同一であるか否かを判断する過程と、外部ヘッダーの出発地アドレスと内部ヘッダーの出発地アドレスが同一でない場合に、予め格納されたＮＡＴ変換情報を用いて、外部ヘッダーの出発地アドレスを汎用アドレスに変換する過程と、前記変換された外部ヘッダーの出発地汎用アドレスと前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスとを、マッピングテーブルエントリーとしてマッピングテーブルに格納した後に、当該要請メッセージをＮＡＴ外部領域のホストに転送する過程と、前記マッピングテーブルに格納された汎用アドレスを、前記ＮＡＴ外部領域のホストから受信された前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当てた後に、該応答メッセージを転送する過程と、を含むことを特徴とする。
【００１８】
前記要請メッセージをＮＡＴ外部領域のホストに転送する過程で、前記外部ヘッダーの出発地汎用アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４汎用アドレスであり、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスは、前記ルータのＩＰｖ４私設アドレスである。
【００１９】
前記応答メッセージをＮＡＴ変換器（NAT Translator）が受信する場合に、該ＮＡＴ変換器によって該応答メッセージの外部ヘッダーの目的地アドレスを私設アドレスに変換し、該変換後の応答メッセージを前記ＮＡＴ内部領域に位置するルータに転送する過程をさらに含む。
【００２０】
前記要請メッセージをＮＡＴ外部領域のホストに転送する過程で、前記マッピングテーブルは、前記外部ヘッダーの出発地汎用アドレスを格納するためのフィールドと、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスを格納するためのフィールドと、前記格納されたマッピングテーブルエントリーが所定時間経過後に削除される時間を示す時間情報を格納するための消滅タイマーフィールドと、を含む。
【００２１】
前記マッピングテーブルエントリーの格納時に前記消滅タイマーフィールドに格納される時間情報は、ＮＡＴ装備に設定されたタイマー値によって設定される。
【００２２】
そして、前記格納されたマッピングテーブルエントリーは、前記消滅タイマーフィールドに格納された時間情報値が‘０’になると、自動的に削除される。
【００２３】
また、本発明の他の側面は、異なるアドレス形式を有する網間のＮＡＴ（Network Address Translation）を使用した自動トンネリングシステムを提供するものであって、前記ＮＡＴ内部領域のホストから受信された要請メッセージの外部ヘッダーの出発地アドレスと内部ヘッダーの出発地アドレスとが同一でない場合に、予め格納されたＮＡＴ変換情報を用いて、前記外部ヘッダーの出発地アドレスを汎用アドレスに変換し、該変換された前記外部ヘッダーの出発地汎用アドレスと、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスとを、マッピングテーブルエントリーとしてマッピングテーブルに格納し、前記マッピングテーブルに格納された汎用アドレスを、前記ＮＡＴ外部領域のホストから受信された前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当て、当該応答メッセージを転送するための、ＮＡＴ外部領域に位置されるルータを含む。
【００２４】
前記ルータは、前記ＮＡＴ内部領域と外部領域とに位置する各ホストとメッセージを送受信するためのパケット送受信部と、ＮＡＴ変換器（NAT Translator）から転送される要請メッセージを前記パケット送受信部を介して受信し、該受信された要請メッセージの外部ヘッダーに含まれた出発地アドレスと内部ヘッダーの出発地アドレスとを比較するアドレス比較部と、前記アドレス比較部で比較されたアドレス比較結果に基づいて、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされているか否かを判断する制御部と、前記制御部の判断結果、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされている場合には、前記制御部の制御によって、前記要請メッセージの外部ヘッダーに含まれた出発地汎用アドレスと、内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスと、を格納するマッピングテーブルＤＢと、前記制御部の制御により、前記マッピングテーブルＤＢに格納された私設アドレスにマッピングされた汎用アドレスを、前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当てて、前記ＮＡＴ変換器に転送すべき応答メッセージを生成する応答メッセージ生成部と、を含む。
【００２５】
前記マッピングテーブルＤＢに格納される外部ヘッダーの出発地汎用アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４汎用アドレスであり、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４私設アドレスである。
【００２６】
また、前記マッピングテーブルＤＢに格納されるマッピングテーブルは、前記外部ヘッダーの出発地汎用アドレスを格納するためのフィールドと、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスを格納するためのフィールドと、前記格納されたマッピングテーブルエントリーが所定時間経過後に削除される時間情報を格納するための消滅タイマーフィールドと、を含む。
【００２７】
特に、前記マッピングテーブルエントリーの格納時に前記消滅タイマーフィールドに格納される時間情報は、ＮＡＴ装備に設定されたタイマー値によって設定される。
【００２８】
そして、前記格納されたマッピングテーブルエントリーは、前記消滅タイマーフィールドに格納された時間情報値が‘０’になると、自動的に削除される。
【００２９】
また、本発明のさらに他の側面は、異なるアドレス形式を有する網間のＮＡＴ（Network Address Translation）を使用したルーティング装置を提供するものであって、かかるルーティング装置は、ＮＡＴ内部領域と外部領域とに位置する各ホストとメッセージを送受信するためのパケット送受信部と、ＮＡＴ変換器（NAT Translator）から転送される要請メッセージを前記パケット送受信部を介して受信し、該受信された要請メッセージの外部ヘッダーに含まれた出発地アドレスと内部ヘッダーの出発地アドレスとを比較するアドレス比較部と、アドレス比較部で比較されたアドレス比較結果に基づいて、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされているか否かを判断する制御部と、制御部の判断結果、前記ＮＡＴ変換器による前記要請メッセージのアドレス変換がなされている場合には、制御部の制御によって、前記要請メッセージの外部ヘッダーに含まれた出発地汎用アドレスと、内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスと、を格納するマッピングテーブルＤＢと、制御部の制御により、前記マッピングテーブルＤＢに格納された私設アドレスにマッピングされた汎用アドレスを、前記要請メッセージに対する応答メッセージの外部ヘッダーの目的地アドレスとして割り当てて、前記ＮＡＴ変換器に転送すべき応答メッセージを生成する応答メッセージ生成部と、を含む。
【００３０】
前記マッピングテーブルＤＢに格納される外部ヘッダーの出発地汎用アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４汎用アドレスであり、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスは、前記ＮＡＴ内部領域に位置するルータのＩＰｖ４私設アドレスである。
【００３１】
前記マッピングテーブルＤＢに格納されるマッピングテーブルは、前記外部ヘッダーの出発地汎用アドレスを格納するためのフィールドと、前記内部ヘッダーの出発地アドレスから抽出及び変換された私設アドレスを格納するためのフィールドと、前記格納されたマッピングテーブルエントリーが所定時間経過後に削除される時間を示す時間情報を格納するための消滅タイマーフィールドと、を含む。
【００３２】
ここで、前記マッピングテーブルエントリーの格納時に前記消滅タイマーフィールドに格納される時間情報は、ＮＡＴ装備に設定されたタイマー値によって設定される。
【００３３】
そして、前記格納されたマッピングテーブルエントリーは、前記消滅タイマーフィールドに格納された時間情報値が‘０’になると、自動的に削除される。
【発明の効果】
【００３４】
本発明によれば、送信側６ ｔｏ ４ホストがＮＡＴ領域内部にあり、受信側６ ｔｏ ４ホストがＮＡＴ領域外部に存在する場合にも、ＮＡＴ領域外部の６ ｔｏ ４ルータにホスト間通信が可能なマッピングテーブル情報を格納することによって、６ ｔｏ ４トンネルを介して双方向通信が可能になる。
【００３５】
また、ＮＡＴ領域を介して６ ｔｏ ４方式を使用するにあたって、ＮＡＴ装備の修正が不要であり、かつ、送信遅延を最小化することが可能になる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明の好ましい実施形態を、添付の図面を参照して詳細に説明する。各図面において、同じ構成要素については、他の図面で用いられる場合に、可能な限り同じ参照番号及び符号で表示していることに留意すべきである。以下、本発明を説明するにあたって、関連した公知機能または構成に対する具体的な説明が本発明の要旨を不明にすることができると判断される場合には、その詳細な説明を省略する。
【００３７】
図１は、ＩＰｖ６ Ｔｒａｎｓｉｔｉｏｎ網構造での一般的なトンネリング過程を概略的に示す図である。図１では、ＩＰｖ６網（IPv6 network）Ａに接続されたＩＰｖ６ホスト（Host）１０が、ＩＰｖ４網（IPv4 network）Ｂを介して他のＩＰｖ６網（IPv6 network）Ｃに接続されたＩＰｖ６ホスト（Host）２０にデータを転送する場合の例を示している。
【００３８】
図１を参照すると、ＩＰｖ６ホスト１０は、ＩＰｖ６にカプセル化されたＩＰｖ６パケット５１をＩＰｖ６網Ａに転送する。続いて、ＩＰｖ６網ＡとＩＰｖ４網Ｂとの境界に位置するＩＰｖ６／ＩＰｖ４ルータ（IPv6 Transit Router）３０は、ＩＰｖ６パケット５１をＩＰｖ４を用いてカプセル化し、該カプセル化されたパケット５２をＩＰｖ４網ＢとＩＰｖ６網Ｃとの境界に位置するＩＰｖ４／ＩＰｖ６ルータ（IPv6 Transit Router）４０に転送する。すなわち、ＩＰｖ６／ＩＰｖ４ルータ３０は、ＩＰｖ６パケット５１にＩＰｖ４ヘッダー（header)を付けてＩＰｖ４網Ｂに転送する。
【００３９】
ＩＰｖ４にカプセル化されたパケット５２を受信したＩＰｖ４／ＩＰｖ６ルータ４０は、そのパケット５２を逆カプセル化し、該逆カプセル化後のＩＰｖ４ヘッダーの無いパケット５３をＩＰｖ６網Ｃに転送する。すなわち、ＩＰｖ４／ＩＰｖ６ルータ４０は、パケット（５１）がＩＰｖ４網Ｂを通過できるようにするために付加されたＩＰｖ４ヘッダーをパケット５２から除去し、該除去後のＩＰｖ６パケット５３をＩＰｖ６網Ｃに転送する。これにより、ＩＰｖ６ホスト２０は、ＩＰｖ４ヘッダーが除去されたＩＰｖ６パケット５３を受信することができる。
【００４０】
図２は、６ ｔｏ ４ ＩＰｖ６アドレス形式を示す図である。図２に示すように、６ ｔｏ ４ ＩＰｖ６アドレス形式は、私設（private）及び汎用（universal）アドレス形式に共に適用される“２００２（１６ｂｉｔ）”の部分と、ＩＰｖ４  アドレス部とＳＬＡ（Site Level Aggregator）部とを含むインタフェース識別子の部分と、インタフェースＩＤ（Interface ID）の部分と、を含む。
【００４１】
図３は、６ ｔｏ ４サイトでパケットが送信されてカプセル化され、さらに逆カプセル化される例を示す図である。図３では、ＩＰｖ６ホスト１０のＩＰｖ６アドレスが‘２００２：ｃ００１：０１０１：：５’であり、ＩＰｖ６ホスト２０のＩＰｖ６アドレスが‘２００２：ｃ００２：０２０２：：５’である例を示している。すなわち、ＩＰｖ６アドレスが‘２００２：ｃ００１：０１０１：：５’であるＩＰｖ６ホスト１０が、ＩＰｖ４網Ｂを経てＩＰｖ６アドレス‘２００２：ｃ００２：０２０２：：５’であるＩＰｖ６ホスト２０にＩＰｖ６パケットを転送する場合についての６ ｔｏ ４トンネリング過程を以下に説明する。
【００４２】
図３を参照すると、ＩＰｖ６ホスト１０は、転送しようとするパケットにＩＰｖ６ヘッダーを付加することにより、パケットのＩＰｖ６カプセル化を行う。このとき、ＩＰｖ６ヘッダーは、当該データが転送（送信）される出発地（source、以下、‘Ｓｒｃ’という。）アドレスと、転送されるべき目的地（destination、以下、‘Ｄｓｔ’という。）アドレスとを含んでいる。図３の例では、転送されるデータの出発地ＳｒｃはＩＰｖ６ホスト１０であり、目的地ＤｓｔはＩＰｖ６ホスト２０であるから、ＩＰｖ６カプセル化の結果として生成されたデータ５１ａのＩＰｖ６ヘッダーには、ＩＰｖ６ホスト１０のアドレス２００２：ｃ００１：０１０１：：５と、ＩＰｖ６ホスト２０のアドレス２００２：ｃ００２：０２０２：：５と、が含まれる。そして、ＩＰｖ６ホスト１０は、このようにＩＰｖ６カプセル化されたデータ５１ａを、ＩＰｖ６網Ａを介してＩＰｖ６／ＩＰｖ４ルータ３０に転送（送信）する。
【００４３】
続いて、ＩＰｖ６／ＩＰｖ４ルータ３０は、そのデータ５１ａにＩＰｖ４ヘッダーを付加することにより、データ５１ａのＩＰｖ４カプセル化を行う。
このとき、ＩＰｖ６／ＩＰｖ４ルータ３０は、ＩＰｖ６／ＩＰｖ４ルータ３０のＩＰｖ４アドレスである‘１９２．１．１．１’をＩＰｖ４ヘッダーの出発地アドレスとして使用し、ＩＰｖ４／ＩＰｖ６ルータ４０のＩＰｖ４アドレスである‘１９２．２．２．２’を目的地アドレスとして使用する。
【００４４】
すなわち、ＩＰｖ４領域に入るときに、カプセル化に使用するＩＰｖ４パケットの目的地アドレスとして、ＩＰｖ６の目的地アドレスに含まれているＩＰｖ４アドレスを使用し、またＩＰｖ４領域に入るときに、カプセル化に使用するＩＰｖ４パケットの出発地アドレスとして、ＩＰｖ６の出発地アドレスに含まれているＩＰｖ４アドレスを使用する。
【００４５】
これにより、ＩＰｖ６／ＩＰｖ４ルータ３０は、前記ＩＰｖ４ヘッダーの出発地アドレス及び目的地アドレス情報に基づいてＩＰｖ４ヘッダーにカプセル化されたパケット５２ａを、ＩＰｖ４網Ｂを介してＩＰｖ４／ＩＰｖ６ルータ４０に転送する。
【００４６】
ＩＰｖ４／ＩＰｖ６ルータ４０は、受信されたパケット５２ａを逆カプセル化し、逆カプセル化後のパケット５３ａをＩＰｖ６網Ｃに転送する。すなわち、ＩＰｖ４／ＩＰｖ６ルータ４０は、ＩＰｖ４ヘッダーにカプセル化されたパケット５２ａからＩＰｖ４ヘッダーを除去し、除去後のパケット５３ａをＩＰｖ６網Ｃを介してＩＰｖ６ホスト２０に転送することによって、ＩＰｖ６ホスト２０は、ＩＰｖ４ヘッダーが無いＩＰｖ６パケット５３ａを受信することができる。
【００４７】
図４は、ＮＡＴ変換器を使用する網で６ ｔｏ ４トンネルを介してＩＣＭＰｖ６メッセージが伝達される場合の一例を示す図である。図４に示すように、ＩＰｖ６ホスト１０は、転送しようとするデータに“Ｓｒｃ：２００２：０ａ０１：０１０１：：５”、“Ｄｓｔ：２００２：ｃ９０２：０２０２：：５”を含むＩＰｖ６ヘッダーを付加し、該付加後のＩＣＭＰｖ６  Ｒｅｑｕｅｓｔメッセージ５１ｂをＩＰｖ６／ＩＰｖ４ルータ３０に転送する。
【００４８】
ＩＣＭＰｖ６  Ｒｅｑｕｅｓｔメッセージ５１ｂを受信したＩＰｖ６／ＩＰｖ４ルータ３０は、そのＩＰｖ６ヘッダーに含まれた“Ｓｒｃ：２００２：０ａ０１：０１０１：：５”、“Ｄｓｔ：２００２：ｃ９０２：０２０２：：５”から各々ＩＰｖ４アドレスを抽出し、該抽出されたＩＰｖ４アドレス情報を有するＩＰｖ４ヘッダーをデータに付加してカプセル化し、該カプセル化されたＩＣＭＰｖ６要請メッセージ５２ｂをＮＡＴ変換器（NAT Translator）６０に転送する。
【００４９】
ＩＰｖ６／ＩＰｖ４ルータ３０からのＩＣＭＰｖ６要請メッセージ５２ｂを受信したＮＡＴ変換器（NAT Translator）６０は、自機内に格納されたマッピングテーブルの情報を用いて、ＩＣＭＰｖ６要請メッセージ５２ｂのＩＰｖ４ヘッダー内の私設アドレスである出発地アドレスＳｒｃ：１０．１．１．１を、汎用アドレス（universal address）Ｓｒｃ：２００．１．１．１に変換し、該変換されたＩＰｖ４ヘッダーを有するＩＣＭＰｖ６要請メッセージ５３ｂをＩＰｖ４／ＩＰｖ６ルータ４０に転送する。
【００５０】
続いて、ＩＰｖ４／ＩＰｖ６ルータ４０は、ＮＡＴ変換器（NAT Translator）６０から受信したカプセル化されたＩＣＭＰｖ６要請メッセージ５３ｂを逆カプセル化し、逆カプセル化されたメッセージ５４ｂをＩＰｖ６ホスト２０に転送する。
【００５１】
ＩＰｖ６ホスト２０は、ＩＰｖ４／ＩＰｖ６ルータ４０から転送された逆カプセル化されたメッセージ５４ｂを受信すると、出発地アドレスと目的地アドレスとを逆にした（すなわちＳｒｃ：２００２：ｃ９０２：０２０２：：５及びＤｓｔ：２００２：０ａ０１：０１０１：：５とした）ＩＣＭＰｖ６応答メッセージ５５ｂをＩＰｖ４／ＩＰｖ６ルータ４０に転送する。
【００５２】
これにより、ＩＰｖ６ホスト２０からのＩＣＭＰｖ６応答メッセージ５５ｂを受信したＩＰｖ４／ＩＰｖ６ルータ４０は、ＩＣＭＰｖ６応答メッセージ５５ｂのＩＰｖ６ヘッダーに含まれた“Ｓｒｃ：２００２：ｃ９０２：０２０２：：５”、“Ｄｓｔ：２００２：０ａ０１：０１０１：：５”から各々ＩＰｖ４アドレスを抽出し、該抽出されたＩＰｖ４アドレスをＩＰｖ４アドレス情報（“Ｓｒｃ：２０１．２．２．２”、“Ｄｓｔ：１０．１．１．１”）に変換し、該変換されたＩＰｖ４アドレス情報を有するＩＰｖ４ヘッダーをデータに付加してカプセル化し、該カプセル化されたＩＣＭＰｖ６応答メッセージ５６ｂをＮＡＴ変換器（NAT Translator）６０に転送する。
【００５３】
しかしながら、ＮＡＴ変換器（NAT Translator）６０は、ＩＰｖ４／ＩＰｖ６ルータ４０から転送されるＩＣＭＰｖ６応答メッセージ５６ｂを受信することができない。なぜなら、ＮＡＴ領域の外部（ＮＡＴ外部領域）に位置するＩＰｖ４／ＩＰｖ６ルータ４０がＩＣＭＰｖ６応答メッセージをカプセル化するときに使用するＩＰｖ４目的地アドレスは、ＮＡＴ領域の内部（ＮＡＴ内部領域）に位置する６ ｔｏ ４ルータ３０の私設アドレスＤｓｔ：１０．１．１．１であり、ＩＰｖ４／ＩＰｖ６ルータ４０には、そのＩＰｖ４アドレスに関連したルーティング情報が存在しないからである。このように、ＮＡＴ外部領域とＮＡＴ内部領域とに位置するＩＰｖ６ホスト間で双方向通信が不可能であるため、６ ｔｏ ４自動トンネリング方式では、ネットワークアドレス変換（ＮＡＴ；Network Address Translation）を使用する。
【００５４】
図５は、ＮＡＴ変換器を使用する網で６ ｔｏ ４トンネルを介してＩＣＭＰｖ６メッセージが伝達される他の一例を示す図である。図５に示すように、ＩＰｖ６ホスト１０は、転送しようとするデータに“Ｓｒｃ：２００２：０ａ０１：０１０１：：５”、“Ｄｓｔ：２００２：ｃ９０２：０２０２：：５”を含むＩＰｖ６ヘッダーを付加し、該付加後のＩＣＭＰｖ６Ｒｅｑｕｅｓｔメッセージ５１ｃをＩＰｖ６／ＩＰｖ４ルータ３０に転送する。
【００５５】
ＩＣＭＰｖ６  Ｒｅｑｕｅｓｔメッセージ５１ｃを受信したＩＰｖ６／ＩＰｖ４ルータ３０は、そのＩＰｖ６ヘッダーに含まれた“Ｓｒｃ：２００２：０ａ０１：０１０１：：５”、“Ｄｓｔ：２００２：ｃ９０２：０２０２：：５”から各々ＩＰｖ４アドレスを抽出し、該抽出されたＩＰｖ４アドレス情報を有するＩＰｖ４ヘッダーをデータに付加してカプセル化し、該カプセル化されたＩＣＭＰｖ６要請メッセージ５２ｃをＮＡＴ変換器（NAT Translator）６０に転送する。
【００５６】
ＩＰｖ６／ＩＰｖ４ルータ３０からのＩＣＭＰｖ６要請メッセージ５２ｃを受信したＮＡＴ変換器（NAT Translator）６０は、自機内に格納されたマッピングテーブルの情報を用いて、ＩＣＭＰｖ６要請メッセージ５２ｃのＩＰｖ４ヘッダー内の私設アドレスである出発地アドレスＳｒｃ：１０．１．１．１を、汎用アドレス（universal address）Ｓｒｃ：２００．１．１．１に変換すると共に、ＩＰｖ６ヘッダーにおける出発地アドレスのＩＰｖ４アドレス部分（０ａ０１：０１０１）を、前記ＩＰｖ４ヘッダーの出発地アドレスＳｒｃ：２００．１．１．１を１６進数に変換して得られたｃ８０１：０１０１に変換し、該変換されたＩＰｖ４ヘッダー及びＩＰｖ６ヘッダーを有するＩＣＭＰｖ６要請メッセージ５３ｃをＩＰｖ４／ＩＰｖ６ルータ４０に転送する。
【００５７】
続いて、ＩＰｖ４／ＩＰｖ６ルータ４０は、ＮＡＴ変換器（ＮＡＴ  Ｔｒａｎｓｌａｔｏｒ）６０から受信したカプセル化されたＩＣＭＰｖ６要請メッセージ５３ｃを逆カプセル化し、逆カプセル化されたメッセージ５４ｃをＩＰｖ６ホスト２０に転送する。
【００５８】
ＩＰｖ６ホスト２０は、ＩＰｖ４／ＩＰｖ６ルータ４０から転送された逆カプセル化されたメッセージ５４ｃを受信すると、出発地アドレスと目的地アドレスとを逆にした（すなわちＳｒｃ：２００２：ｃ９０２：０２０２：：５及びＤｓｔ：２００２：ｃ８０１：０１０１：：５とした）ＩＣＭＰｖ６応答メッセージ５５ｃをＩＰｖ４／ＩＰｖ６ルータ４０に転送する。
【００５９】
ＩＰｖ６ホスト２０からのＩＣＭＰｖ６応答メッセージ５５ｃを受信したＩＰｖ４／ＩＰｖ６ルータ４０は、ＩＣＭＰｖ６応答メッセージ５５ｃのＩＰｖ６ヘッダーに含まれた”Ｓｒｃ：２００２：ｃ９０２：０２０２：：５”、”Ｄｓｔ：２００２：ｃ８０１：０１０１：：５”から各々ＩＰｖ４アドレスを抽出し、該抽出されたＩＰｖ４アドレスをＩＰｖ４アドレス情報（”Ｓｒｃ：２０１．２．２．２”、”Ｄｓｔ：２００．１．１．１”）に変換し、該変換されたＩＰｖ４アドレス情報を有するＩＰｖ４ヘッダーをデータに付加してカプセル化し、該カプセル化されたＩＣＭＰｖ６応答メッセージ５６ｃをＮＡＴ変換器（NAT Translator）６０に転送する。
【００６０】
ＮＡＴ変換器（NAT Translator）６０は、ＩＰｖ４／ＩＰｖ６ルータ４０から転送されたＩＣＭＰｖ６応答メッセージ５６ｃを受信すると、自機内に格納されたマッピングテーブルの情報を用いて、ＩＣＭＰｖ６応答メッセージ５６ｃのＩＰｖ４ヘッダー内の汎用アドレスである目的地アドレスＤｓｔ：２００．１．１．１を私設アドレスＤｓｔ：１０．１．１．１に変換すると共に、ＩＰｖ６ヘッダーにおける目的地アドレスのＩＰｖ４アドレス部分ｃ８０１：０１０１を、前記ＩＰｖ４ヘッダーの目的地アドレス１０．１．１．１を１６進数に変換して得られた０ａ０１：０１０１に変換し、該変換されたＩＰｖ４ヘッダー及びＩＰｖ６ヘッダーを有するＩＣＭＰｖ６要請メッセージ５７ｃをＩＰｖ４／ＩＰｖ６ルータ３０に転送する。
【００６１】
そして、ＩＰｖ４／ＩＰｖ６ルータ３０は、ＮＡＴ変換器（NAT Translator）６０から受信したカプセル化されたＩＣＭＰｖ６要請メッセージ５７ｃを逆カプセル化し、逆カプセル化されたメッセージ５８ｃをＩＰｖ６ホスト１０に転送する。
【００６２】
図６は、本発明によるＮＡＴ変換器を使用する網で６ ｔｏ ４トンネルを介したＩＣＭＰｖ６メッセージ伝達の一例を示す図である。図６では、６ ｔｏ ４ルータにより受信されたメッセージがＮＡＴを通過したか否かをチェックする方法と、受信されたメッセージからＮＡＴ変換情報を抽出して格納する方法と、格納されたＮＡＴ変換情報を用いて、６ ｔｏ ４トンネルを介した場合であっても６ ｔｏ ４ルータ間での双方向通信を可能にする過程と、を示している。
【００６３】
図６に示すように、ＩＰｖ６ホスト１００は、転送しようとするデータに”Ｓｒｃ：２００２：０ａ０１：０１０１：：５”、”Ｄｓｔ：２００２：ｃ９０２：０２０２：：５”を含むＩＰｖ６ヘッダーを付加し、該付加後のＩＣＭＰｖ６Ｒｅｑｕｅｓｔメッセージ５１ｄを６ ｔｏ ４ルータ３００に転送する。
【００６４】
ＩＣＭＰｖ６Ｒｅｑｕｅｓｔメッセージ５１ｄを受信したIPv６/IPv４ルータ３００は、そのＩＰｖ６ヘッダーに含まれた”Ｓｒｃ：２００２：０ａ０１：０１０１：：５”、“Ｄｓｔ：２００２：ｃ９０２：０２０２：：５”から各々ＩＰｖ４アドレスを抽出し、該抽出されたＩＰｖ４アドレスをＩＰｖ４アドレス情報（Ｓｒｃ：１０．１．１．１、Ｄｓｔ：２０１．２．２．２）に変換し、該変換されたＩＰｖ４アドレス情報（Ｓｒｃ：１０．１．１．１、Ｄｓｔ：２０１．２．２．２）を有するＩＰｖ４ヘッダーをデータに付加してデータのカプセル化を行い、該カプセル化されたＩＣＭＰｖ６要請メッセージ５２ｄをＮＡＴ変換器（NAT Translator）６００に転送する。
【００６５】
ＩＰｖ６／ＩＰｖ４ルータ３００からのＩＣＭＰｖ６要請メッセージ５２ｄを受信したＮＡＴ変換器（NAT Translator）６００は、自機内に格納されたマッピングテーブルの情報を用いて、ＩＣＭＰｖ６要請メッセージ５２ｄのＩＰｖ４ヘッダー内の私設アドレスである出発地アドレスＳｒｃ：１０．１．１．１を、汎用アドレス（universal address）Ｓｒｃ：２００．１．１．１に変換し、該変換されたＩＰｖ４ヘッダーを有するＩＣＭＰｖ６要請メッセージ５３ｄをIPv６/IPv4ルータ４００に転送する。
【００６６】
そして、IPv６/IPv４ルータ４００は、ＩＣＭＰｖ６要請メッセージ５３ｄを受信した場合に、まず、受信されたパケットがＮＡＴを介して受信されたパケットであるか否かを確認（チェック）する。この確認の結果、ＮＡＴを介して到着したパケットでない場合には、IPv６/IPv４ルータ４００は、受信された６ ｔｏ ４パケットに対する応答メッセージの転送時に、従来の方法により６ ｔｏ ４パケットをカプセル化する。
【００６７】
一方、上記確認の結果、ＮＡＴを経て到着したパケットである場合には、IPv６/IPv４ルータ４００は、双方向通信が可能にＮＡＴ変換情報を６ ｔｏ ４パケットから抽出し、該抽出されたＮＡＴ変換情報を自機内のIPv６/IPv４ルーティングテーブルに格納する。その後、IPv６/IPv４ルータ４００は、受信された６ ｔｏ ４パケットに対する応答メッセージの転送時に、IPv６/IPv４ルーティングテーブルに格納されたＮＡＴ変換情報を用いて、６ ｔｏ ４パケットをカプセル化する。
【００６８】
ここで、IPv６/IPv４ルータ４００は、カプセル化されたメッセージの外部ヘッダー情報と内部ヘッダー情報とを比較することによって、ＮＡＴを介して受信されたパケットであるか否かを確認（チェック）することができる。
【００６９】
すなわち、IPv６/IPv４ルータ４００は、カプセル化された６ ｔｏ ４パケットを受信すると、外部ヘッダーからＩＰｖ４出発地アドレスを確認し、及び内部ヘッダーからＩＰｖ６出発地アドレスを確認する。このとき、IPv６/IPv４ルータ４００は、内部ヘッダーのＩＰｖ６出発地アドレスに含まれたＩＰｖ４アドレスと外部ヘッダーのＩＰｖ４出発地アドレスを比較する。そして、IPv６/IPv４ルータ４００は、これらアドレスが相互に同一の場合には、そのパケットがＮＡＴを介しないパケットであると認識し、一方、互いに異なる場合には、そのパケットがＮＡＴを介したパケットであり、ＮＡＴにより外部ヘッダーのＩＰｖ４出発地アドレスが変更されたものと認識する。ここで、ＮＡＴを介して受信された６ ｔｏ ４パケットである場合には、IPv６/IPv４ルータ４００は、ＩＰｖ４ヘッダー変換情報を次の表１に示すようなテーブルに格納する。変換前のＩＰｖ４アドレス情報は、内部ヘッダーからＩＰｖ６出発地アドレスのＩＰｖ４アドレス部分を抽出して得ることができる。
【００７０】
【表１】
2008079304.tif 000003
【００７１】
上記表１で、消滅タイマー（deletion timer）は、カプセル化のために格納されたＮＡＴアドレスマッピングテーブルのエントリーが、一定時間が経過して削除される時間を示している。このような消滅タイマーは、新しいエントリーが格納されるときに基本（デフォルト）値（例えば“３００”秒）に設定され、秒単位で１ずつ減少する。そして、消滅タイマーの値が‘０’になると、そのエントリーは、自動的に削除される。このように、消滅タイマーは、予め定められた一定期間の間に使用されないエントリーを削除する役目をする。
【００７２】
また、ＮＡＴを介して転送された６ ｔｏ ４パケットのＮＡＴ変換情報が予めマッピングテーブルに存在する場合には、既存のエントリーは変更され、消滅タイマーも基本値に更新される。
【００７３】
特に、ＮＡＴの種類は、汎用アドレスと私設アドレスとを変換する方式によって、静的ＮＡＴ（Static NAT）と動的ＮＡＴ（Dynamic NAT）とに区分され得る。ここで、静的ＮＡＴは、汎用アドレスと私設アドレスを１対１に対応させる方式である。一方、動的ＮＡＴは、汎用アドレスが全てホストを支援するのには十分な数で場合に使用される方法である。この動的ＮＡＴは、私設アドレスを有するホストからＮＡＴ装備を介してＮＡＴ領域を通過するときに、当該私設アドレスを汎用アドレスに対応させ、その対応関係を一定時間の間だけ維持させる方式であって、一定時間が経過すれば、かかる対応関係は削除され、ＮＡＴ外部からホストへのアクセスが不可能になる。
【００７４】
すなわち、静的ＮＡＴを使用する場合には、１対１の対応関係が維持されることから、ＮＡＴマッピングテーブルは変更される必要がない。したがって、この場合にはテーブルの消滅タイマーの基本値を十分に大きく設定すればよい。
【００７５】
しかしながら、本発明で使用している動的ＮＡＴは、一定時間が経過すれば、汎用アドレスと私設アドレス間の対応関係が削除されるので、対応関係が変更される。このような動的ＮＡＴの対応関係持続時間は、ＮＡＴ装備により設定される。かかる持続時間が短いほど対応関係がより速く変更されるので、この時間によってＮＡＴマッピングテーブルの消滅タイマーの基本値を設定すれば良い。この場合には、IPv６/IPv４ルータに格納されたテーブル情報をＮＡＴの対応関係と一致するように維持することができる。
【００７６】
このように、IPv６/IPv４ルータ４００は、変換された汎用ＩＰｖ４アドレス（Ｓｒｃ：２００．１．１．１）と、ＩＰｖ６ヘッダーにおける出発地アドレス（Ｓｒｃ：２００２：０ａ０１：０１０１：：５）の私設ＩＰｖ４アドレス（０ａ０１：０１０１）と、消滅タイマー時間（例えば‘３００’）情報と、を格納するためのルーティングテーブルを生成した後に、ＮＡＴ変換器（NAT Translator）６００から受信したカプセル化されたＩＣＭＰｖ６要請メッセージ５３ｄを逆カプセル化し、この逆カプセル化されたメッセージ５４ｄをＩＰｖ６ホスト２００に転送する。
【００７７】
これにより、ＩＰｖ６ホスト２００は、IPv６/IPv４ルータ４００から転送された逆カプセル化されたメッセージ５４ｄを受信した場合に、変更された出発地アドレス（Ｓｒｃ：２００２：ｃ９０２：０２０２：：５）と目的地アドレス（Ｄｓｔ：２００２：０ａ０１：０１０１：：５）とを有するＩＣＭＰｖ６応答メッセージ５５ｄを、IPv6/IPv４ルータ４００に転送する。
【００７８】
続いて、IPv６/IPv４ルータ４００は、ＩＰｖ６ホスト２００から転送されるＩＣＭＰｖ６応答メッセージ５５ｄを受信してカプセル化する。このとき、IPv６/IPv４ルータ４００は、内部のルーティングテーブル上に予め格納されているＮＡＴ変換情報を用いて、ＮＡＴ内部領域に位置するIPv６/IPv４ルータ３００の私設アドレスに対応する汎用アドレスを探し出し、該汎用アドレスを応答メッセージ外部ヘッダーの目的地アドレスとして使用する。
【００７９】
すなわち、IPv６/IPv４ルータ４００は、ＩＰｖ６ヘッダーの目的地アドレス“Ｄｓｔ：２００２：０ａ０１：０１０１：：５”のＩＰｖ４アドレスに該当する“０ａ０１：０１０１”に対する汎用ＩＰｖ４アドレスを把握するために、前記生成されたルーティングテーブルに質疑（Query）を行い、この質疑への応答（Ｒｅｐｌｙ）として、前記“０ａ０１：０１０１”に対する私設ＩＰｖ４アドレス“１０．１．１．１”にマッピングされた汎用アドレス“２００．１．１．１”を受信する。
【００８０】
これにより、IPv６/IPv４ルータ４００は、ＩＰｖ６ヘッダー内の出発地アドレスＳｒｃ：２００２：ｃ９０２：０２０２：：５からＩＰｖ４アドレスに該当する“ｃ９０２：０２０２”を抽出し、該抽出されたデータを汎用ＩＰｖ４アドレス（すなわち“２０１．２．２．２”）に変換し、該変換された“２０１．２．２．２”をＩＰｖ４ヘッダーの出発地アドレスＳｒｃ：２０１．２．２．２として選択し、さらに、前記ルーティングテーブルから応答された汎用ＩＰｖ４アドレスである“２００．１．１．１”を、ＩＰｖ４ヘッダーの目的地アドレスＤｓｔ：２００．１．１．１に定める。
【００８１】
したがって、IPv６/IPv４ルータ４００は、前記ルーティングテーブル情報によるＩＰｖ４ヘッダーが付加されたＩＣＭＰｖ６応答メッセージ５６ｄを、ＮＡＴ変換器（NAT Translator）６００に転送することができる。
【００８２】
これにより、ＮＡＴ変換器（NAT Translator）６００は、IPv６/IPv４ルータ４００から受信したＩＣＭＰｖ６応答メッセージ５６ｄのＩＰｖ４ヘッダー内の汎用ＩＰｖ４目的地アドレスＤｓｔ：２００．１．１．１を私設ＩＰｖ４アドレスＤｓｔ：１０．１．１．１に変換し、該変換されたＩＣＭＰｖ６応答メッセージ５７ｄをIPv６/IPv４ルータ３００に転送する。
【００８３】
そして、IPv６/IPv４ルータ３００は、ＮＡＴ変換器（NAT Translator）６００から受信したカプセル化されたＩＣＭＰｖ６応答メッセージ５７ｄを逆カプセル化し、その逆カプセル化されたメッセージ５８ｄをＩＰｖ６ホスト１００に転送する。
【００８４】
図７は、図６のＮＡＴ外部領域に位置するIPv６/IPv４ルータの構成を示す図である。図７に示すように、本発明のIPv６/IPv４ルータ４００は、パケット送受信部４１０と、制御部４２０と、アドレス比較部４３０と、マッピング情報ＤＢ  ４４０と、応答メッセージ生成部４５０と、を含む。
【００８５】
パケット送受信部４１０は、ＮＡＴ内部領域と外部領域とに位置する各々のホストとデータを送受信する。
【００８６】
制御部４２０は、ＮＡＴ変換器から転送されるＩＣＭＰｖ６要請メッセージをパケット送受信部４１０を介して受信した場合に、該受信されたＩＣＭＰｖ６要請メッセージをアドレス比較部４３０に伝達する。
【００８７】
アドレス比較部４３０は、制御部４２０から伝達されたＩＣＭＰｖ６要請メッセージの内部ヘッダー（ＩＰｖ６ヘッダー）のアドレス情報と外部ヘッダー（ＩＰｖ４ヘッダー）のアドレス情報とを比較する。すなわち、ＩＣＭＰｖ６要請メッセージの内部ヘッダー（ＩＰｖ６ヘッダー）に含まれた出発地アドレスと外部ヘッダー（ＩＰｖ４ヘッダー）の出発地アドレスとを比較し、その比較結果を制御部４２０に通知する。
【００８８】
これにより、制御部４２０は、アドレス比較部４３０から伝達されるアドレス比較結果を確認し、ＩＣＭＰｖ６要請メッセージの内部ヘッダー（ＩＰｖ６ヘッダー）に含まれた出発地アドレスと外部ヘッダー（ＩＰｖ４ヘッダー）の出発地アドレスとが同一である場合には、ＮＡＴ変換器によるアドレス変換がなされていないものと判断し、同一でない場合には、ＮＡＴ変換器により外部ヘッダー（ＩＰｖ４ヘッダー）の出発地アドレスが変換されたものと判断する。
【００８９】
特に、制御部４２０は、ＩＣＭＰｖ６要請メッセージの内部ヘッダー（ＩＰｖ６ヘッダー）に含まれた出発地アドレスと外部ヘッダー（ＩＰｖ４ヘッダー）の出発地アドレスとが同一でない場合に、ＩＣＭＰｖ６要請メッセージの内部ヘッダー（ＩＰｖ６ヘッダー）に含まれた出発地アドレスと外部ヘッダー（ＩＰｖ４ヘッダー）に含まれた出発地アドレスを、マッピング情報ＤＢ  ４４０に格納する。
【００９０】
マッピング情報ＤＢ  ４４０は、制御部４２０の制御により、前記ＩＣＭＰｖ６要請メッセージの外部ヘッダー（ＩＰｖ４ヘッダー）に含まれたＩＰｖ４出発地汎用アドレスと、内部ヘッダー（ＩＰｖ６ヘッダー）のＩＰｖ４出発地私設アドレスと、消滅タイマー時間情報と、をテーブル形式で格納する。ここで、消滅タイマーは、前述したように、カプセル化のために格納されたＮＡＴアドレスマッピングテーブルのエントリーが一定時間が経過して削除される時間を示すものである。
【００９１】
応答メッセージ生成部４５０は、制御部４２０の制御により、ＮＡＴを介して転送されたＩＣＭＰｖ６要請メッセージに対するＩＣＭＰｖ６応答メッセージを生成する。
【００９２】
すなわち、制御部４２０は、ＮＡＴ外部領域に位置するＩＰｖ６ホストから転送されるＩＣＭＰｖ６応答メッセージを受信した場合に、既存方式のように該当データのＩＰｖ６ヘッダー内の目的地アドレスからＩＰｖ４アドレスを抽出して変換するのではなく、ＮＡＴ内部領域に位置するIPv６/IPv４ルータの私設アドレスに対応する汎用アドレスを得るために、マッピング情報ＤＢ  ４４０に質疑（Query）する。
【００９３】
これにより、マッピング情報ＤＢ  ４４０からの答弁（Ｒｅｐｌｙ）として、ＮＡＴ内部領域に位置するIPv６/IPv４ルータの私設アドレスに対応する汎用アドレスを受信した場合に、制御部４２０は、応答メッセージ生成部４５０に、外部ヘッダー（ＩＰｖ４ヘッダー）が付加されたＩＣＭＰｖ６応答メッセージを生成することを要請する。
【００９４】
かかる制御部４２０の要請に応じて、応答メッセージ生成部４５０は、ＮＡＴ内部領域に位置するIPv６/IPv４ルータの私設アドレスに対応する汎用アドレスを、外部ヘッダー（ＩＰｖ４ヘッダー）の目的地アドレスとして指定し、ＮＡＴを介して転送されたＩＣＭＰｖ６要請メッセージに対するＩＣＭＰｖ６応答メッセージを生成する。
【００９５】
このように生成されたＩＣＭＰｖ６応答メッセージは、パケット送受信部４１０を介してＮＡＴに送信され、ＮＡＴで前記外部ヘッダー（ＩＰｖ４ヘッダー）の目的地アドレスが私設ＩＰｖ４アドレスに変換され、ＮＡＴ内部領域の６ ｔｏ ４ルータで逆カプセル化され、ＮＡＴ内部領域のＩＰｖ４ホストに転送される。
【００９６】
以上、本発明の特定の好ましい実施例について図示し且つ説明した。しかしながら、本発明は、前述した実施例に限定されるわけではなく、形式や細部についての種々の置換、変形、変更等が、特許請求の範囲により規定される本発明の要旨を逸脱することなく行われることが可能であることは、本発明が属する技術分野における通常の知識を有する者には明らかである。
【図面の簡単な説明】
【００９７】
【図１】ＩＰｖ６ Ｔｒａｎｓｉｔｉｏｎ網構造での一般的なトンネリング過程を概略的に示す図である。
【図２】６ ｔｏ ４ ＩＰｖ６アドレス形式を示す図である。
【図３】６ ｔｏ ４サイトでパケットが送信されてカプセル化され、さらに逆カプセル化される例を示す図である。
【図４】ＮＡＴ変換器を使用する網で６ ｔｏ ４トンネルを介してＩＣＭＰｖ６メッセージが伝達される場合の一例を示す図である。
【図５】ＮＡＴ変換器を使用する網で６ ｔｏ ４トンネルを介したＩＣＭＰｖ６メッセージ伝達の他の例を示す図である。
【図６】本発明によるＮＡＴ変換器を使用する網で６ ｔｏ ４トンネルを介したＩＣＭＰｖ６メッセージ伝達の一例を示す図である。
【図７】図６のＮＡＴ外部領域に位置するIPv６/IPv４ルータの構成を示す図である。
【符号の説明】
【００９８】
１００、２００  ＩＰｖ６ホスト
３００、４００  IPv６/IPv４ルータ
４１０  パケット送受信部
４２０  制御部
４３０  アドレス比較部
４４０  マッピング情報ＤＢ
４５０  応答メッセージ生成部
６００  ＮＡＴ変換器
【図１】
2008079304.tif 000004
【図２】
2008079304.tif 000005
【図３】
2008079304.tif 000006
【図４】
2008079304.tif 000007
【図５】
2008079304.tif 000008
【図６】
2008079304.tif 000009
【図７】
2008079304.tif 000010