(57)【要約】      （修正有）【課題】  異なるプライベートＩＰネットワークに位置するソース及び宛先のために、トランスペアレントな方法でＩＰデータグラムのアドレスを変換する方法及びシステムを提供する。【解決手段】  二重のＮＡＴに基づくもの、すなわち、  ・１つのＮＡＴが、顧客のクライアント・ステーションの近くで行われ、  ・１つのＮＡＴが、アプリケーション・サーバの近くで行なわれるものである。  クライアント・ステーションとアプリケーション・サーバとの間のネットワークが、登録されたアドレス（パブリックＩＰアドレス）だけを見るのに対して、アプリケーションは、実際のプライベートＩＰアドレスだけを見る。本発明は、「ＮＡＴする」装置（ネットワーク・アドレスを交換する操作を行う装置）を予め構成する必要なく、ＩＰアドレスを「ＮＡＴする」及び「ＮＡＴしない」方法。【選択図】      図２
2006101513.tif 000002
【特許請求の範囲】
【請求項１】
一方が第１のプライベート・インターネット・プロトコル（ＩＰ）ネットワークに、他方がパブリックＩＰネットワークに接続された第１のルータにおいて使用され、データグラムにおいて、ソース・プライベートＩＰアドレスをパブリックＩＰアドレスに変換し、第２のプライベート・ネットワークに接続された第２のルータによって前記プライベートＩＰアドレスを元と同じプライベートＩＰアドレスに変換できるようにする方法であって、前記方法が、
ソース・プライベートＩＰアドレスと、
ＩＰオプション・フィールドと、
ソースＴＣＰ／ＵＤＰポート番号と、
を含むヘッダーを備えるＩＰデータグラムを、第１のプライベートＩＰネットワーク内のソースから受信するステップと、
ＩＰデータグラム・ヘッダーにおいて、前記ソース・プライベートＩＰアドレスを前記第１のルータの前記パブリックＩＰアドレスに置き換えるステップと、
前記ＩＰデータグラム・ヘッダーにおいて、前記ソースＴＣＰ／ＵＤＰポート番号を前記ソース・プライベートＩＰアドレスの２つの最下位バイトに置き換えるステップと、
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの第１及び第２の最上位バイトに関連する情報をコピーし、前記第１及び第２の最上位バイトを前記情報から推定できるようにするステップと、
前記ＩＰデータグラムを前記パブリックＩＰネットワークに送るステップと、
を含むことを特徴とする方法。
【請求項２】
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスが変換されたことを示すステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの前記第１及び第２の最上位バイトに関連した情報が、
前記ソース・プライベートＩＰアドレスに関連したクラス、所定範囲のＩＰアドレスに対応するクラスを識別するステップと、
前記ＩＰオプション・フィールドにおいて、前記クラスを識別するための手段を含ませるステップと、
をさらに含む、前記請求項のいずれか１項に記載の方法。
【請求項４】
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの前記第１及び第２の最上位バイトに関連した情報が、
前記識別されたクラスが、範囲１９２．１６８．０．０から１９２．１６８．２５５．２５５までに対応する場合に、
前記ＩＰオプション・フィールドに、前記クラスを識別するための手段を含ませるステップをさらに含む、請求項１乃至請求項３のいずれか１項に記載の方法。
【請求項５】
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの前記第１及び第２の最上位バイトに関連した情報が、
前記識別されたクラスが、範囲１７２．１６．００から１７２．３１．２５５．２５５までに対応する場合に、
前記ＩＰオプション・フィールドに、前記クラスを識別するための手段を含ませるステップと、
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの前記第１及び第２の最上位バイトをコピーするステップと、
をさらに含む、請求項１乃至請求項４のいずれか１項に記載の方法。
【請求項６】
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの前記第１及び第２の最上位バイトに関連した情報が、
前記アドレスが「１０」で始まる場合に、
前記ＩＰオプション・フィールドに、前記クラスを識別するための手段を含ませるステップと、
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスの前記第２の最上位バイトをコピーするステップと、
をさらに含む、請求項１乃至請求項５のいずれか１項に記載の方法。
【請求項７】
請求項１乃至請求項６のいずれか１項に記載の方法を実行するように適合された手段を含むことを特徴とするルータ。
【請求項８】
コンピュータ・システム上で実行されたときに、請求項１乃至請求項６のいずれか１項による方法を実行するための命令を含むことを特徴とするコンピュータ・プログラム。
【請求項９】
一方がパブリック・インターネット・プロトコル（ＩＰ）ネットワークに、他方が第２のプライベートＩＰネットワークに接続された第２のルータにおいて使用され、データグラムにおいて、前に第１のプライベート・ネットワークに接続された第１のルータによって前記ソース・パブリックＩＰアドレスに変換されたソース・パブリックＩＰアドレスをプライベートＩＰアドレスに変換する方法であって、前記方法が、
ソース・プライベートＩＰアドレスと、
ＩＰオプション・フィールドと、
ソースＴＣＰ／ＵＤＰポート番号と、
を含むヘッダー備え、前記第２のプライベートＩＰネットワーク内の宛先に送られるように意図されたＩＰデータグラムを、前記パブリックＩＰネットワークから受信するステップと、
前記ソース・パブリックＩＰアドレスが、前に第１のルータによって変換されたものである場合に、
前記ＩＰデータグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの２つの最下位バイトを前記ソースＴＣＰ／ＵＤＰポート番号に置き換えるステップと、
前記ＩＰデータグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの前記第１及び第２の最上位バイトを、前記ＩＰヘッダー・オプション・フィールドから取り出された情報から推定される、ソースＩＰプライベート・アドレスの前記第１及び第２のバイトに置き換えるステップと、
前記ＩＰデータグラムを前記第２のプライベートＩＰネットワーク内で宛先に送るステップと、
を含むことを特徴とする方法。
【請求項１０】
前記ＩＰフィールドにおいて、前記ソース・パブリックＩＰアドレスが前に変換されたかどうかを見出すステップを含む、請求項９に記載の方法。
【請求項１１】
前記ＩＰデータグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの第１及び第２の最上位バイトを置き換えるステップが、
前記ＩＰオプション・フィールドにおいて、前記ソース・プライベートＩＰアドレスに関連したクラス、所定範囲のアドレスに対応するクラスを識別するステップと、
前記第１の最上位バイトを、識別されたクラスに対応するアドレス範囲に置き換えるステップと、
をさらに含む、請求項９及び請求項１０のいずれか１項に記載の方法。
【請求項１２】
前記ＩＰデータグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの前記第１及び第２の最上位バイトを置き換えるステップが、
前記識別されたクラスが、範囲１７２．１６．００から１７２．３１．２５５．２５５までに対応する場合に、
前記データグラム・ヘッダーにおいて前記ソース・パブリックＩＰアドレスの前記第１及び第２の最上位バイトを、「１９２．１６８」に置き換えるステップを含む、請求項９乃至請求項１１のいずれか１項に記載の方法。
【請求項１３】
前記ＩＰデータグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの前記第１及び第２の最上位バイトを置き換えるステップが、
前記識別されたクラスが、範囲１７２．１６．００から１７２．３１．２５５．２５５までに対応する場合に、
前記データグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの前記第１の最上位バイトを、「１７２」に置き換えるステップと、
前記ＩＰオプション・フィールドから、前記ソース・プライベートＩＰアドレスの前記第２の最上位バイトを取り出すステップと、
前記ソース・パブリックＩＰアドレスの前記第２の最上位バイトを前記取り出されたバイトに置き換えるステップと、
を含む、請求項９乃至請求項１２のいずれか１項に記載の方法。
【請求項１４】
前記ＩＰデータグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの前記第１及び第２の最上位バイトを置き換えるステップが、
前記第１の最上位バイトを前記ＩＰオプション・フィールド内に見出されるバイトに置き換える代わりに、前記識別されたクラスが範囲「１０」に対応する場合に、
前記データグラム・ヘッダーにおいて、前記ソース・パブリックＩＰアドレスの前記第１の最上位バイトを「１０」に置き換えるステップと、
前記ＩＰオプション・フィールドから、前記ソース・プライベートＩＰアドレスの前記第２の最上位バイトを取り出すステップと、
前記ソース・パブリックＩＰアドレスの前記第２の最上位バイトを前記取り出されたバイトに置き換えるステップと、
を含む、請求項９乃至請求項１２のいずれか１項に記載の方法。
【請求項１５】
請求項９乃至請求項１４のいずれか１項に記載の方法を実行するように適合された手段を含むことを特徴とするルータ。
【請求項１６】
コンピュータ・システム上で実行されたときに、請求項９乃至請求項１４のいずれか１項による方法を実行するための命令を含むことを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・ネットワークに関し、より具体的には、異なるプライベートＩＰネットワークに位置するソース及び宛先のために、トランスペアレントな方法でインターネット・プロトコル（ＩＰ）データグラムのアドレスを変換する方法、システム及びコンピュータ・プログラムに関する。
【背景技術】
【０００２】
インターネット
インターネットは、コンピュータ及びコンピュータ・ネットワーク（「ネット」）のグローバル・ネットワークである。インターネットは、ＵＮＩＸ（商標）、ＤＯＳ(商標）、Ｗｉｎｄｏｗｓ（商標）、Ｍａｃｉｎｔｏｓｈ（商標）などを含む、種々の異なるオペレーティング・システム又は言語を用いるコンピュータを接続する。これらの種々のシステム及び言語の間の通信を容易にし、可能にするために、インターネットは、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ、「伝送制御プロトコル／インターネット・プロトコル」）と呼ばれる言語を用いる。ＴＣＰ／ＩＰプロトコルは、インターネット上で３つの基本アプリケーションをサポートする、すなわち
・電子メールを送受信し（「ＳＭＴＰ」又は「Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ」）、
・遠隔コンピュータにロギングし（「Ｔｅｌｎｅｔ）、
・１つのコンピュータから別のコンピュータにファイル及びプログラムを転送し（「ＦＴＰ」又は「ファイル転送プロトコル」）、
・「ＨＴＴＰ」（「ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ」）ページを送受信する。
【０００３】
ＴＣＰ／ＩＰ
ＴＣＰ／ＩＰプロトコル・スイートは、最も重要なプロトコルのうちの２つ、すなわち
・伝送制御プロトコル（ＴＣＰ）、及び
・インターネット・プロトコル（ＩＰ）
の名をとって命名されたものである。
これの別の名前は、インターネット・プロトコル・スイートである。より一般的な用語ＴＣＰ／ＩＰは、プロトコル・スイート全体を呼ぶために用いられる。ＴＣＰ／ＩＰの第１の設計目的は、ユニバーサルな通信サービス、すなわちインターネットワーク又はインターネット提供するネットワークの相互接続を構築することである。各々の物理的ネットワークは、該物理的ネットワークとユーザ・アプリケーションとの間で動作する基本的通信機能を提供するプログラミング・インターフェースの形態で、それぞれの技術に依存する通信インターフェースを有する。物理的ネットワークのアーキテクチャは、ユーザに表示されない。ＴＣＰ／ＩＰの第２の目的は、異なる物理的ネットワークを相互接続して、ユーザには１つの大きいネットワークに見えるものを形成することである。
ＴＣＰは、端末相互間のデータ転送を提供するトランスポート層プロトコルである。ＴＣＰは、２つのコンピュータ・システム間の信頼性の高い情報交換を担っている。２つのコンピュータ・システム間の１つのＴＣＰ接続上で、多数のアプリケーションを同時にサポートすることができる。
ＩＰは、その下にある物理的ネットワークアーキテクチャを隠すインターネットワーク層プロトコルである。コンピュータ間の通信メッセージの一部は、該メッセージがネットワーク内で正しく送信され、宛先に送られることを保証する経路指定機能である。ＩＰは、この経路指定機能を提供する。ＩＰメッセージは、ＩＰデータグラムと呼ばれる。
アプリケーション・レベル・プロトコルは、ある起点コンピュータ・システムからある宛先コンピュータ・システムにユーザ・データ及びアプリケーション・データを転送するために、ＴＣＰ／ＩＰの上部で用いられる。こうしたアプリケーション・レベル・プロトコルは、例えば、ファイル転送プロトコル（ＦＴＰ）、Ｔｅｌｎｅｔ、Ｇｏｐｈｅｒ、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）などである。
【０００４】
Ｕｎｉｆｏｒｍ  Ｒｅｓｏｒｃｅ  Ｌｏｃａｔｏｒ
インターネットのリソースは、特定の場所における特定のリソースへのポインタであるＵｎｉｆｏｒｍ  Ｒｅｓｏｒｃｅ  Ｌｏｃａｔｏｒ（ＵＲＬ）によって明白に識別される。ＵＲＬは、サーバ（例えば、ＨＴＴＰ、ＦＴＰ、・・・）、サーバ名、及びそのサーバ上のファイルの場所にアクセスするために用いられるプロトコルを指定する。
【０００５】
クライアント及びサーバ
ＴＣＰ／ＩＰは、ピアツーピア型コネクション指向プロトコルである。マスタ／スレーブ関係はない。しかしながら、アプリケーションは、通信のためにクライアント／サーバ・モデルを用いる。サーバは、サービスをインターネット・ユーザに提供するアプリケーションであり、クライアントは、サービスのリクエスタである。アプリケーションは、同じ又は異なるコンピュータ・システム上で動作することができるサーバ部及びクライアント部の両方からなる。
ユーザは、通常、アプリケーションのクライアント部を呼び出し、このクライアント部は、特定のサービスについての要求を構築し、トランスポート手段としてＴＣＰ／ＩＰを用いて、該要求をアプリケーションのサーバ部に送信する。
サーバは、要求を受信し、要求されたサービスを実行し、応答としてその結果を返信するプログラムである。サーバは、通常、多数の要求（多数のクライアント）を同時に処理することができる。
【０００６】
ＩＰルータ
「ルータ」は、２つのネットワークを相互接続し、１つのネットワークから他のネットワークにメッセージを送るコンピュータである。ルータは、ネットワーク間の最良の伝送経路を選択することができる。基本的経路指定機能は、ＴＣＰ／ＩＰプロトコル・スタックのＩＰ層内に実装されるので、１つより多いインターフェース上でＴＣＰ／ＩＰを動作しているいずれかのホスト（又はコンピュータ）或いはワークステーションは、理論上、ネットワーク間でメッセージを送ることができる。ＩＰが基本的経路指定機能を実装するので、「ＩＰルータ」という用語が用いられることが多い。しかしながら、「ルータ」と呼ばれる専用ネットワーク・ハードウェア装置は、ＩＰ内に実装される最小の機能より高度な経路指定機能を提供することができる。
【０００７】
イントラネット
一部の会社は、インターネットと同じ機構を用いて、それぞれの企業内部で通信する。この場合、この機構は、「イントラネット」と呼ばれる。これらの会社は、同じネットワーキング／トランスポート・プロトコル及びローカル・ベースのコンピュータを用い、大量の企業情報へのアクセスをまとめて提供する。このデータは、企業専用のものにすることができ、会社のメンバーは、さらにパブリック・インターネット情報にアクセスする必要があるので、該会社に属していない人々が、パブリック・インターネットからこの専用イントラネットにアクセスするのを回避するために、ファイアウォールと呼ばれる特別な機器を用いることによって、ネットワークへのアクセスを保護する。
【０００８】
ＩＰアドレッシング
ＩＰアドレスは、インターネット上でホストを一意的に識別するために、ＩＰプロトコルによって用いられる。厳密に言えば、ＩＰアドレスは、ＩＰデータグラムを送受信できるインターフェースを識別する。各々のＩＰデータグラム（ホスト間で交換される基本的データ・データグラム）は、ソースＩＰアドレスと宛先ＩＰアドレスとを含む。ＩＰアドレスは、通常、ドット付き１０進法形式で表現される３２ビットの符合なしバイナリ値で表される。例えば、９．１６７．５．８は、有効なインターネット・アドレスである。ＩＰアドレスは、ネットワーク部とホスト部との間で分けられ、ＩＰアドレスの第１のビットは、該アドレスの残りの部分がどのように分けられるかを指定する。ＩＰアドレスと、例えば、ｍｙｈｏｓｔ．ｉｂｍ．ｃｏｍのような読みやすいシンボル名との間のマッピングが、「Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ」（ＤＮＳ）によって行われる。
【０００９】
Ｉｎｔｅｒｎｅｔ  Ａｓｓｉｇｎｅｄ  Ａｕｔｈｏｒｉｔｙ（ＩＡＮＡ）
インターネットにおけるサーバ間のいずれかの間の通信を保証するために、全ての１Ｐアドレスは、Ｉｎｔｅｒｎｅｔ  Ａｓｓｉｇｎｅｄ  Ａｕｔｈｏｒｉｔｙ（ＩＡＮＡ）によって公式に割り当てられなければならない。公式に割り当てられたＩＰアドレスとぶつかるのを回避するために、多くの組織は、基本的に予約された範囲のアドレスに含まれる局所的に割り当てられたＩＰアドレスを用いる。これらのＩＰアドレスは、インターネット上で経路指定することができない。
【００１０】
ＩＰサブネット
インターネットの爆発的な成長のために、割り当てられたＩＰアドレスの原則は、柔軟性のないものとなり、ローカル・ネットワーク構成を簡単に変更できなくなった。これらの変更は、
・ある場所において、新しいタイプの物理的ネットワークがインストールされる、
・ホスト数の増加により、ローカル・ネットワークを２つ又はそれ以上の別個のネットワークに分割することが必要とされる、
・距離の拡大により、ネットワーク間のゲートウェイを用いて、ネットワークを小さいネットワークに分割することが必要とされる、
ときに生じる。
変更時に付加的なＩＰネットワーク・アドレスを必要とするのを回避するために、サブネットの概念が導入された。ネットワーク全体が外部の世界に対して依然として１つのＩＰネットワークに見えるように、サブネットの割り当てを局所的に行うことができる。ＩＰアドレスのホスト番号部は、ネットワーク番号及びホスト番号に細分化される。この第２のネットワークは、「サブネットワーク」又は「サブネット」と呼ばれる。サブネット化は、遠隔ネットワークに対してトランスペアレントな方法で実施される。
【００１１】
プライベートＩＰアドレス
ＩＰアドレス空間の節約のための手法が、プライベートＩＰアドレスの使用である。この手法は、単一の組織内で排他的に用いられ、インターネットへのＩＰ接続を必要としない、ネットワークのためのアドレス空間部を予約することによって、ＩＰアドレスがグローバルに一意的なものであるという規則を緩和する。いずれの組織も、他の組織に関係なく、特定の範囲のアドレスを用いることができる。しかしながら、これらのアドレスは、グローバルに一意的なものでないので、別の組織のホストがこれらを参照することはできず、他の外部のルータに対して定義されない。プライベート・アドレスを用いないネットワークのルータは、これらのアドレスに関する全ての経路指定情報の廃棄を考える。プライベート・アドレスを用いる組織のルータは、プライベート・アドレスに対する全ての参照が内部リンクに制限されることになっており、プライベート・アドレスへの経路を外部ルータに通知する必要はなく、プライベート・アドレスを含むＩＰデータグラムを外部ルータに送る必要もない。プライベートＩＰアドレスだけを有するホストは、インターネットに対してＩＰ層接続を有していない。外部のインターネット・ホストに対する全ての接続には、「プロキシ」と呼ばれることが多い「アプリケーション・レベル・ゲートウェイ」を提供する必要がある。
【００１２】
プライベートＩＰアドレスの使用法及び定義は、ＩＥＴＦ  Ｒｅｑｕｅｓｔ  Ｆｏｒ  Ｃｏｍｍｅｎｔデータベース（ＲＦＣ１９１８）に記載されている。このＲＦＣは、３つのクラス（又は範囲）のプライベートＩＰアドレス、すなわち
・クラスＡ範囲：ネットワーク１０．０．０．０／８内の全てのアドレス、すなわち１０．０．０．０と１０．２５５．２５５．２５５との間の全てのアドレス、
・クラスＢ範囲：１７２．１６．０．０／１６から１７２．３１．０．０／１６までの１６のクラスＢのネットワーク内の全てのアドレス、すなわち１７２．１６．０．０から１７２．３１．２５５．２５５までの間の全てのアドレス、
・クラスＣ範囲：１９２．１６８．０．０／２４から１９２．１６８．２５５．０／２４までの２５６のクラスＣのネットワーク内の全てのアドレス、すなわち、１９２．１６８．０．０から１９２．１６８．２５５．２５５までの間の全てのアドレス、
を定義する。
【００１３】
ネットワーク・アドレス変換
ネットワーク・アドレス変換（ＮＡＴ）は、プライベート・ネットワーク内のホストの一部分だけが、そのネットワークの外部と通信しているという事実に基づいている。各々のホストが、通信する必要がある時だけパブリックＩＰアドレス・プールからＩＰアドレスを割り当てられる場合には、少数のパブリックＩＰアドレスだけが必要とされる。ＮＡＴは、プライベートＩＰアドレス範囲を有し、インターネット上のホストと通信することを望むネットワークのための解決法である。実際には、大体の場合、このことは、ファイアウォールを実装することによって達成することもできる。したがって、プロキシ又はソックス・サーバを用いてインターネットと通信するクライアントは、そのアドレスをインターネットに公開しないので、いずれにしても、そのアドレスを変換する必要がない。しかしながら、何らかの理由で、プロキシ及びソックスが使用可能でないか、又は特定の要件を満たさない場合には、ＮＡＴを用いて、内部のホスト・アドレスを通知することなく内部ネットワークと外部ネットワークとの間のトラフィックを管理することができる。
【００１４】
プロキシ・サーバ
アプリケーション・レベル・ゲートウェイとも呼ばれるプロキシ・サーバは、安全ネットワーク及び非安全ネットワークを接続するホスト上で動作するアプリケーション特有の中継サーバである。プロキシ・サーバの目的は、ＩＰレベルの代わりにアプリケーション・レベルで２つのネットワーク間のデータ交換を制御することである。プロキシ・サーバを用いることによって、プロキシ・サーバが処理できるアプリケーション・プロトコルのために、安全ネットワークと非安全ネットワークとの間のＩＰ経路指定をディスエーブル（ｄｉｓａｂｌｅ）にするものの、プロキシ・サーバ内でデータを中継することによって、依然としてネットワーク間のデータ交換を可能にすることができる。いずれのクライアントもプロキシ・サーバにアクセスできるように、クライアントのソフトウェアを特定的に修正しなければならない。言い換えれば、クライアント及びサーバ・ソフトウェアが、プロキシ接続をサポートしなければならない。
【００１５】
ＩＰフィルタリングと比較すると、プロキシは、接続のアプリケーション・データに基づいた、さらに広範囲のロギングを提供する。例えば、ＨＴＴＰプロキシは、ユーザが訪れたＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）にログすることができる。プロキシの別の特徴は、プロキシが強いユーザ認証を使用できることである。
【００１６】
上記セクションに示された技術分野についてのさらなる説明は、非特許文献１に見出すことができる。
【００１７】
【非特許文献１】Ｍａｒｔｉｎ  Ｗ．Ｍｕｒｈａｍｍｅｒ、Ｏｒｃｕｎ  Ａｔａｋａｎ、Ｓｔｅｆａｎ  Ｂｒｅｔｚ、Ｌａｒｒｙ  Ｒ．Ｐｕｇｈ、Ｋａｚｕｎａｒｉ  Ｓｕｚｕｋｉ、Ｄａｖｉｄ  Ｈ．Ｗｏｏｄによる「ＴＣＰ／ＩＰ  Ｔｕｔｏｒｉａｌ  ａｎｄ  Ｔｅｃｈｎｉｃａｌ  Ｏｖｅｒｖｉｅｗ」、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｃｈｎｉｃａｌ  Ｓｕｐｐｏｒｔ  Ｏｒｇａｎｉｚａｔｉｏｎ、ＧＧ２４‐３３７６‐０５、１９９８年１０月
【発明の開示】
【発明が解決しようとする課題】
【００１８】
プライベートＩＰアドレスの経路指定の問題
ネットワーキング（ＬＡＮ及びＷＡＮ）の世界においては、プライベートＩＰアドレス（ＲＦＣ１９１８に定義されるような）の経路指定が問題になることがある。大部分の顧客は、イントラネット内でプライベートＩＰアドレスを使用している。しかしながら、顧客が、インターネット上の他の顧客又は中央管理システムに接続される必要性が増大しているので、共有ネットワークにおけるプライベートＩＰアドレスの経路指定が、現実の問題になり得る。プライベートＩＰアドレスを登録された（パブリック）ＩＰアドレスに変換するために、今日、ネットワーク・アドレス変換（ＮＡＴ）又はプロキシの使用に基づく別の解決法が存在する。
【００１９】
しかしながら、幾つかのアプリケーションは、変換されたＩＰアドレスを扱うことができない。これらのアプリケーションは、ペイロード内でオリジナルの（プライベート）ＩＰアドレスを用いており、ＮＡＴ装置によって、このプライベートＩＰアドレスを変換することができない。これは、例えば、幾つかのＴｉｖｏｌｉ管理製品（「Ｔｉｖｏｌｉ」は、ＩＢＭ  Ｃｏｒｐｏｒａｔｉｏｎ社の登録商標である）及び他の幾つかのクライアント・サーバ・アプリケーションの場合である。
【課題を解決するための手段】
【００２０】
本発明は、異なるプライベートＩＰネットワークに位置するソース及び宛先のために、トランスペアレントな方法でインターネット・プロトコル（ＩＰ）データグラムのアドレスを変換するための、独立請求項に定義されるような方法及びシステムに向けられる。
【００２１】
一方が第１のプライベート・インターネット・プロトコル（ＩＰ）ネットワークに、他方がパブリックＩＰネットワークに接続された第１のルータに使用される本発明の第１の目的は、データグラムにおいて、ソース・プライベートＩＰアドレスをパブリックＩＰアドレスに変換し、第２のプライベート・ネットワークに接続された第２のルータによって、該プライベートＩＰアドレスを元と同じプライベートＩＰアドレスに変換できるようにすることである。この第１のルータにおける方法は、ソース・プライベートＩＰアドレスと、ＩＰオプション・フィールドと、ソースＴＣＰ／ＵＤＰポート番号とを含むヘッダーを備えるＩＰデータグラムを、第１のプライベートＩＰネットワーク内のソースから受信するステップと、ＩＰデータグラム・ヘッダーにおいて、ソース・プライベートＩＰアドレスを第１のルータのパブリックＩＰアドレスに置き換えるステップと、ＩＰデータグラム・ヘッダーにおいて、ソースＴＣＰ／ＵＤＰポート番号をソース・プライベートＩＰアドレスの２つの最下位バイトに置き換えるステップと、ＩＰオプション・フィールドにおいて、ソース・プライベートＩＰアドレスの第１及び第２の最上位バイトに関連する情報をコピーし、該第１及び第２の最上位バイトを該情報から推定できるステップと、ＩＰデータグラムをパブリックＩＰネットワークに送るステップとを含む。
【００２２】
一方がパブリック・インターネット・プロトコル（ＩＰ）ネットワークに、他方が第２のプライベートＩＰネットワークに接続された第２のルータに使用される本発明の第２の目的は、データグラムにおいて、前に第１のプライベート・ネットワークに接続された第１のルータによってソース・パブリックＩＰアドレスに変換されたソース・パブリックＩＰアドレスをプライベートＩＰアドレスに変換することである。第１のルータにおける方法は、ソース・プライベートＩＰアドレスと、ＩＰオプション・フィールドと、ソースＴＣＰ／ＵＤＰポート番号とを含むヘッダーを備え、第２のプライベートＩＰネットワーク内の宛先に送られるように意図されたＩＰデータグラムを、パブリックＩＰネットワークから受信するステップと、ソース・パブリックＩＰアドレスが、前に第１のルータによって変換された場合に、ＩＰデータグラム・ヘッダーにおいて、ソース・パブリックＩＰアドレスの２つの最下位バイトをソースＴＣＰ／ＵＤＰポート番号に置き換えるステップと、ＩＰデータグラム・ヘッダーにおいて、ソース・パブリックＩＰアドレスの第１及び第２の最上位バイトを、ＩＰヘッダー・オプション・フィールドから取り出された情報から推定されるソースＩＰプライベート・アドレスの第１及び第２のバイトに置き換えるステップと、ＩＰデータグラムを第２のプライベートＩＰネットワーク内で宛先に送るステップとを含む。
【００２３】
本発明のさらなる実施形態が、添付の従属請求項において提供される。
本発明の前述の特徴及び利点は、他の目的と併せて、以下の明細書、特許請求の範囲、及び図面を参照することにより、より良く理解することができる。
【発明を実施するための最良の形態】
【００２４】
本発明の特性を示すと考えられる新規な発明の特徴が、添付の特許請求の範囲に述べられている。しかしながら、本発明自体、並びに本発明の好ましい使用態様、さらなる目的及び利点は、添付の図面と併せて読むときに、例証となる詳細な実施形態についての次の詳細な説明を参照することによって、最も良く理解されるであろう。
【００２５】
次の説明は、特許出願及びその要件に照らして、当業者が本発明を実施し、使用するのを可能にするために呈示され、与えられる。ここに説明される好ましい実施形態、並びに一般的原則及び特徴に対する種々の修正が、当業者には容易に理解されるであろう。したがって、本発明は、示される実施形態に制限されるように意図されるものではなく、ここに説明される原則及び特徴と一致する最も広い範囲と一致するように意図される。
【００２６】
はじめに
本発明の一般的原理
本発明は、二重の動的ネットワーク・アドレス変換（ＮＡＴ）に基づくもの、すなわち、
・１つのネットワーク・アドレス変換（ＮＡＴ）が、（ＮＡＴするために）顧客のクライアント・ステーションの近くで行われ、
・１つのネットワーク・アドレス変換（ＮＡＴ）が、（ＮＡＴしないために）アプリケーション・サーバの近くで行なわれるものである。
クライアント・ステーションとアプリケーション・サーバとの間のネットワークが、登録されたアドレス（パブリックＩＰアドレス）だけを見るのに対して、アプリケーションは、実際のプライベートＩＰアドレスだけを見る。本発明は、「ＮＡＴする」装置（ネットワーク・アドレスを交換する操作を行う装置）を予め構成する必要なく、ＩＰアドレスを「ＮＡＴする」及び「ＮＡＴしない」方法に基づくものである。
【００２７】
別の選択肢は、ＣＩＳＣＯ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．社が開発した、いわゆる「汎用経路指定カプセル化」（ＧＲＥ）を用いることである。この汎用経路指定カプセル化（ＧＲＥ）は、データグラムをトンネル内にカプセル封入するために用いられるトンネリング・プロトコルである。しかしながら、この技術は、単一のルータ供給業者（ＣＩＳＣＯ  Ｓｙｓｔｅｍ，Ｉｎｃ．社）に限定されたものであり、他の経路指定装置（ファイアウォール、サーバなど）上で動作しない。他のカプセル化又はトンネリング方法は、不必要なヘッダーを付加し、帯域幅の必要性及び伝送費用を増大させるという欠点を有する。
【００２８】
ネットワーク・アドレス変換
プライベートＩＰアドレスに基づくプライベート・ネットワークと、アプリケーション・ゲートウェイのないアプリケーション・プロトコルを用いるパブリック・ネットワーク（インターネットのような）との間で通信するための唯一の解決法は、プライベート・ネットワーク内のホストとインターネット上のホストとの間にＩＰレベルの接続を確立することである。インターネット内のルータは、ＩＰデータグラムを再度プライベートＩＰアドレスに経路指定する方法を知らないので、ルータを通して、ソースＩＰアドレスとしてプライベートＩＰアドレスを有するＩＰデータグラムをインターネット内に送信することができない。
【００２９】
ＮＡＴは、プライベート・ネットワークのプライベートＩＰを、パブリックＩＰアドレスにトランスペアレントに変換するので、ＩＰデータグラムをインターネット上に経路指定することができる。ＮＡＴは、発信データグラムのプライベートＩＰアドレスをパブリックＩＰアドレスに動的に変換する。着信データグラムについては、ＮＡＴは、パブリックＩＰアドレスをプライベートＩＰアドレスに変換する。互いに、ＩＰデータグラムを交換し合う２つのホストのポイントについては、１つのホストが安全ネットワーク（プライベート・ネットワーク）に接続され、もう一方が非安全ネットワーク（インターネット）に接続され、ネットワーク・アドレス変換（ＮＡＴ）は、２つのネットワーク・インターフェース間にＩＰデータグラムを送る標準的なＩＰルータのように見える。
【００３０】
ＮＡＴを実装するＴＣＰ／ＩＰスタックは、通常のＩＰルータのように見えるので、ルータを通して２つ又はそれ以上のＩＰネットワーク又はサブネットを接続するために、適切なＩＰネットワーク設計を作成する必要性がある。ＮＡＴのＩＰアドレスは、別個のネットワーク又はサブネットからのものであることが必要であり、アドレスは、非安全ネットワークにおける他のネットワーク又はサブネットに対して明白である必要がある。非安全ネットワークがインターネットである場合には、ＮＡＴアドレスは、パブリック・ネットワーク又はサブネットからのものであることが必要であり、言い換えれば、ＮＡＴアドレスは、ＩＡＮＡ（Ｉｎｔｅｒｎｅｔ  Ａｓｓｉｇｎｅｄ  Ｎｕｍｂｅｒｓ  Ａｕｔｈｏｒｉｔｙ）によって割り当てられる必要がある。
【００３１】
必要に応じて使用するために、非安全アドレス（正式なアドレス）をプール内に予約する必要がある。接続が安全ネットワークにより確立されたものである場合には、ＮＡＴは、単にＮＡＴプール内の次の空いたパブリック・アドレスを選び、それを要求中の安全ホストに割り当てることができる。ＮＡＴは、任意の時点で、どの安全ＩＰアドレスが、どの非安全ＩＰアドレスにマッピングされるかを追跡するので、非安全ネットワークから受信する応答を対応する安全ＩＰアドレスにマッピングすることができるようになる。
【００３２】
拡張ＮＡＴのためのＩＰオプション・フィールド
図１は、
・ソース・ステーション「Ａ」（１００）と、
・第１のプライベートＩＰネットワーク（１０５）と、
・経路指定装置「Ｂ」（１０１）と、
・広域ネットワーク（ＷＡＮ）（１０２）と、
・経路指定装置「Ｃ」（１０３）と、
・第２のプライベートＩＰネットワーク（１０６）と、
・宛先サーバ「Ｄ」（１０４）と、
を備えるネットワークを示す。
【００３３】
図１に示される例において、顧客ステーション「Ａ」は、ＲＦＣ１９１８範囲の１０．０．０．０のクラスＡ、又は１７２．１６．０．０−１７２．３１．２５５．２５５、或いは１９２．１６８．０．０−１９２．１６８．２５５．２５５のプライベート・アドレスを有する。この顧客ステーションは、第１のプライベート・ネットワーク（イントラネット・ネットワーク）を通して経路指定装置「Ｂ」に接続される。この経路指定装置「Ｂ」自体は、パブリック・ネットワーク（広域ネットワーク（ＷＡＮ）バックボーン又はインターネット・ネットワーク）（１０２）を通して経路指定装置「Ｃ」に接続される。この経路指定装置「Ｃ」自体は、第２のプライベート・ネットワーク（イントラネット・ネットワーク）（１０６）を通してアプリケーション・サーバ「Ｄ」に接続される。
【００３４】
図２に示されるように、顧客ステーション「Ａ」によってアプリケーション・サーバ「Ｄ」に送信される各々のデータグラム（２００）が、次のフィールド、すなわち、
ＩＰヘッダー内に、
顧客ステーション「Ａ」のプライベート・ソースＩＰアドレス（２０５）と、
アプリケーション・サーバ「Ｄ」の宛先ＩＰアドレス（２０６）と、
ＩＰオプション・フィールド（２０１）と、
ＴＣＰヘッダー内に、
ターゲット・アプリケーションを識別するためのＴＣＰ（又はＵＤＰ）ソース・ポート番号（２０７）と、
を備える。
【００３５】
本発明は、次の特徴、すなわち、
・経路指定装置「Ｂ」と「Ｃ」との間で、ＩＰヘッダー内のＩＰオプション・フィールド（２０１）が、
ソース・プライベートＩＰアドレス（２０５）のサブセット（２０４）（一般的な場合には２バイト（２０３及び２０４）、及びクラス標識が用いられる場合には、任意に１バイト（２０４））と、
任意に、顧客ステーション「Ａ」のソース・プライベートＩＰアドレス範囲（クラスＡ又はＢ又はＣ）を与えるクラス標識（２０３）と、
を繰り上げるように定義されること、
・データグラムのソースＴＣＰ（ＵＤＰ）ポート番号（２バイト）（２０７）を用いて、ソースＩＰプライベート・アドレス（２０５）の最下位バイトを繰り上げること、
に基づいている。
【００３６】
一般的な実施形態
経路指定装置「Ｂ」
本発明に従ってソース「Ａ」からＩＰデータグラムを受信するときに、ソース・ステーション「Ａ」（顧客ステーション）に近いルータ「Ｂ」によって実行される種々のステップが、以下に説明される。顧客ステーション「Ａ」によってアプリケーション・サーバ「Ｄ」に送信される各々のデータグラムについて、経路指定装置「Ｂ」は、
・顧客ステーション「Ａ」のソース・プライベートＩＰアドレス（２０５）をそれぞれの登録された（パブリック）ＩＰアドレス（経路指定装置「Ｂ」のＩＰアドレス）に変換し、
・顧客ステーション「Ａ」のプライベートＩＰアドレスの２つの最下位バイトによってソースＴＣＰ（ＵＤＰ）ポート番号（２０７）を変換し、
・ＩＰオプション・フィールド（２０１）を「拡張ＮＡＴ」を示すオプション番号（２０２）で埋め、
・ＩＰオプション・フィールド（２０３及び２０４）を顧客ステーション「Ａ」のプライベートＩＰアドレスの２つの最上位バイトで埋める。
【００３７】
経路指定装置「Ｃ」
本発明に従ってルータ「Ｂ」からＩＰデータグラムを受信するときに、宛先サーバ「Ｄ」に近いルータ「Ｃ」によって実行される種々のステップが、以下に説明される。顧客ステーション「Ａ」によってアプリケーション・サーバ「Ｄ」に送信される各々のデータグラムについて、経路指定装置「Ｃ」は、ＮＡＴされたソースＩＰアドレスを元のソースＩＰアドレスに置き換える。経路指定装置「Ｃ」は、ソースＴＣＰ（ＵＤＰ）ポートにおいて受信した、ＩＰオプション・フィールドからの情報に基づいて、このアドレスを再構築する。経路指定装置「Ｃ」は、
・ＩＰオプション・フィールド（２０１）内のデータグラム（２００）のＩＰヘッダーにおいて、オプション番号（２０２）「拡張ＮＡＴ」を調べ、
オプション番号（２０２）が「拡張ＮＡＴ」でない場合、経路指定装置「Ｃ」は、標準プロセスを続け、
オプション番号が「拡張ＮＡＴ」である場合、経路指定装置「Ｃ」は、ソース・パブリックＩＰアドレスの２つの最下位バイトをソースＴＣＰ（ＵＤＰ）ポート番号（２０７）に変換し、
・ソース・パブリックＩＰアドレス（２０５）の第１及び第２の最上位バイトを、ＩＰヘッダー・オプション・フィールド（２０１）内に見出される２つのバイト（２０３及び２０４）に置き換える。
【００３８】
アプリケーション・サーバ「Ｄ」
アプリケーション・サーバ「Ｄ」は、顧客ステーション「Ａ」のソース・プライベートＩＰアドレスを有するデータグラムを受信する。ルータ「Ｂ」及び「Ｃ」によって処理されるＮＡＴプロセスは、サーバＤに対して完全にトランスペアレントである。
【００３９】
戻り方向
同じプロセスが戻り方向にも適用される。経路指定装置「Ｃ」は、上述のものと同じ機構を用いて宛先プライベート・アドレスをＮＡＴし、経路指定装置「Ｂ」は、それを顧客ステーション「Ａ」のプライベート・アドレスにＮＡＴしない。
【００４０】
ＩＰオプション・フィールド
好ましい実施形態において、ＩＰオプション・フィールド（４バイト）（２０１）は、次のフィールドを含む、すなわち、
・第１のバイト（２０２）が、
「コピー」フラグ（この「コピー」フラグは、全ての可能性あるフラグメント化されたフレーム内にコピーされたオプションを有するように、本件の場合には１に設定される）と、
クラス・フラグ（０に設定される）と、
新しいオプション・コード（例えば、３１）と、
を含み、
・第２のバイト（２０３）が、ソース・プライベートＩＰアドレスの第１の最上位バイト（２０３）を含み、
・第３のバイト（２０４）が、ソース・プライベートＩＰアドレスの第２の最上位バイト（２０４）を含み、
・第４のバイトが、予約される。
【００４１】
経路指定装置「Ｂ」
図３は、本発明に従ってソース「Ａ」からＩＰデータグラムを受信するときに、ソース・ステーション「Ａ」（顧客ステーション）に近いルータ「Ｂ」によって実行される種々のステップを示すフローチャートである。顧客ステーション「Ａ」によってアプリケーション・サーバ「Ｄ」に送信される各々のデータグラムについて、経路指定装置「Ｂ」は、
・顧客ステーション「Ａ」のソース・プライベートＩＰアドレス（２０５）をそれぞれの登録された（パブリック）ＩＰアドレス（経路指定装置「Ｂ」のＩＰアドレス）に変換し（３００）、
・顧客ステーション「Ａ」のプライベートＩＰアドレスの２つの最下位バイトによってソースＴＣＰ（ＵＤＰ）ポート番号（２０７）を変換し（３０１）、
・「拡張ＮＡＴ」を表示するオプション番号（２０２）でＩＰオプション・フィールド（２０１）を埋めて（３０２）、
・顧客ステーション「Ａ」のプライベートＩＰアドレスのクラスを調べ（３０３）、
・範囲１９２．１６８．０．０から１９２．１６８．２５５．２５５までについては、これらのバイトが常に同じ（１９２．１６８）であるので、上位バイトに繰り上げる必要はない。したがって、経路指定装置「Ｂ」は、ＩＰオプション・フィールド（２０１）のクラス標識フィールド（２０３）を「クラスＣ」で埋める（３０５）。
・範囲１７２．１６．００から１７２．３１．２５５．２５５までについては、アドレスが常に１７２で始まるので、１つのバイトだけが１６から３１まで値を繰り上げる。したがって、経路指定装置「Ｂ」は、ＩＰオプション・フィールド（２０４）を顧客ステーション「Ａ」のアドレスの第２の最上位バイトで埋め（３０４）、ＩＰオプション・フィールド（２０１）のクラス標識フィールド（２０３）を「クラスＢ」で埋める（３０５）。
・１０．「クラスＡ」範囲については、ソースＩＰアドレスが常に１０．で始まるので、１つのバイトが第２のバイト（１０．の後）を繰り上げる。したがって、経路指定装置「Ｂ」は、ＩＰオプション・フィールド（２０４）を顧客ステーション「Ａ」のアドレスの第２の最上位バイトで埋め（３０４）、ＩＰオプション・フィールド（２０１）のクラス標識フィールド（２０３）を「クラスＡ」で埋める（３０５）。
【００４２】
経路指定装置「Ｃ」
図４は、本発明に従ってルータ「Ｂ」からＩＰデータグラムを受信するときに、宛先サーバ「Ｄ」に近いルータ「Ｃ」によって実行される種々のステップを示すフローチャートである。顧客ステーション「Ａ」によってアプリケーション・サーバ「Ｄ」に送信される各々のデータグラムについて、経路指定装置「Ｃ」は、ＮＡＴされたソースＩＰアドレスを元のソースＩＰアドレスに置き換える。経路指定装置「Ｃ」は、ソースＴＣＰ（ＵＤＰ）ポートにおいて受信したＩＰオプション・フィールドからの情報に基づいて、このアドレスを再構築する。経路指定装置「Ｃ」は、
・ＩＰオプション・フィールド（２０１）内のデータグラム（２００）のＩＰヘッダーにおいて、オプション番号（２０２）「拡張ＮＡＴ」を調べ（４０１）、
オプション番号（２０２）が「拡張ＮＡＴ」でない場合、経路指定装置「Ｃ」は、標準プロセスを続け、
オプション番号が「拡張ＮＡＴ」である場合、経路指定装置「Ｃ」は、ソース・パブリックＩＰアドレスの２つの最下位バイトをソースＴＣＰ（ＵＤＰ）ポート番号（２０７）に変換し（４０２）、
・クラス標識フィールド（２０３）において顧客ステーション「Ａ」のプライベートＩＰアドレスのクラスを調べ（４０３）、
・範囲１９２．１６８．０．０から１９２．１６８．２５５．２５５までについては、ソース・パブリックＩＰアドレス（２０５）の第１及び第２の最上位バイトを「１９２．１６８」に置き換え（４０４）、
・範囲１７２．１６．００から１７２．３１．２５５．２５５までについては、ソース・パブリックＩＰアドレスの第２の最上位バイトを「１７２」に置き換え（４０４）、ソース・パブリックＩＰアドレス（２０５）の第１の最上位バイトをＩＰヘッダー・オプション・フィールド内に見出されるバイトに置き換え（４０５）、
・１０．「クラスＡ」範囲については、ソース・パブリックＩＰアドレスの第２の最上位バイトを「１０」に置き換え（４０４）、ソース・パブリックＩＰアドレス（２０５）の第１の最上位バイトをＩＰヘッダー・オプション・フィールド（２０１）内に見出されるバイト（２０４）に置き換える（４０５）。
【００４３】
アプリケーション・サーバ「Ｄ」
アプリケーション・サーバ「Ｄ」は、顧客ステーション「Ａ」のソースＩＰアドレスを有するデータグラムを受信する。ルータ「Ｂ」及び「Ｃ」によって処理されるＮＡＴプロセスは、サーバＤに対して完全にトランスペアレントである。
【００４４】
戻り方向
同じプロセスが戻り方向にも適用される。経路指定装置「Ｃ」は、上述のものと同じ機構を用いて宛先プライベート・アドレスをＮＡＴし、経路指定装置「Ｂ」は、それを顧客ステーション「Ａ」のプライベート・アドレスにＮＡＴしない。
【００４５】
ＩＰオプション・フィールド
好ましい実施形態において、ＩＰオプション・フィールド（４バイト）（２０１）は、次のフィールドを含む、すなわち
・第１のバイト（２０２）が、
「コピー」フラグ（この「コピー」フラグは、全ての可能性あるフラグメント化されたフレームにコピーされたオプションを有するように、本件の場合には１に設定される）と、
クラス・フラグ（０にセット）と、
新しいオプション・コード（例えば、３１）と、
を含み、
・第２のバイト（２０３）が、「クラス標識」を含み、
「０」は、クラス「Ｃ」を意味し（アドレスは、範囲１９２内にある）、
「１」は、クラス「Ｂ」を意味し（アドレスは、範囲１７２内にある）、
「２」は、クラス「Ｃ」を意味し（アドレスは、範囲１０内にある）、
・第３のバイト（２０４）が、プライベート・アドレス（２０４）の第２の最上位バイトを含み、
・第４のバイトが、予約される。
【００４６】
実施例
したがって、例えば、「Ａ１」及び「Ａ２」が、フレームをアプリケーション・サーバ「Ｄ」に送信する、アドレス１０．１．１．１及び１０．１．１．２を有する２つの顧客ステーションである場合には、ルータ装置「Ｂ」によってＮＡＴされた全てのフレームは、
・ソースとしてのルータ装置「Ｂ」のＩＰアドレスと、
・「Ａ１」についてのソースＴＣＰプロトコル番号としての「１１」及び「Ａ２」についての「１２」と、
・ｘ「９Ｆ−０２−０１−００」に等しいＩＰオプション・フィールド、すなわち「コピー」ビット、オプション番号３１、１０範囲のプライベート・アドレス、及び２ｎバイトのＩＰアドレス＝「０１」と、
を有するであろう。
【００４７】
次に、経路指定装置「Ｃ」は、フレームをアプリケーション・サーバ「Ｄ」に送る前に、予め構成することなく、１０．１．１．１及び１０．１．１．２のソースＩＰアドレスを再構築することができる。
【００４８】
この特定の実施形態の利点は、ＩＰオプション・フィールドにおいて幾つかのビットを節約することである。ＩＰオプション・フィールドにおいて第１の最上位バイトを書き込む代わりに、ソース・プライベートＩＰアドレスのアドレス範囲の表示（クラス標識２０３）だけが、ＩＰフィールド（２０１）に格納される。
【００４９】
本発明は、好ましい実施形態に関連して特に示され、説明されたが、本発明の精神及び範囲から逸脱することなく、形態及び詳細の種々の変更をなし得ることが理解されるであろう。
【図面の簡単な説明】
【００５０】
【図１】本発明によるルータ及びネットワークの手段によって相互接続されたソース・ステーション及び宛先サーバを示す。
【図２】本発明に用いられるようなＩＰヘッダー及びＩＰオプション・フィールドの記述を有するＩＰデータグラムの図である。
【図３】本発明による、ソース「Ａ」からＩＰデータグラムを受信するときに、ソース・ステーション「Ａ」に近いルータ「Ｂ」によって実行される種々のステップを示すフローチャートである。
【図４】本発明による、ルータ「Ｂ」からＩＰデータグラムを受信するときに、宛先サーバ「Ｄ」に近いルータ「Ｃ」によって実行される種々のステップを示すフローチャートである。
【符号の説明】
【００５１】
１００：顧客ステーション（Ａ）
１０１：経路指定装置（Ｂ）
１０２：パブリック・ネットワーク
１０３：経路指定装置（Ｃ）
１０４：アプリケーション・サーバ（Ｄ）
１０５、１０６：プライベート・ネットワーク
２００：ＩＰデータグラム
２０１：ＩＰオプション・フィールド
２０７：ソースＴＣＰ（ＵＤＰ）ポート番号
【図１】
2006101513.tif 000003
【図２】
2006101513.tif 000004
【図３】
2006101513.tif 000005
【図４】
2006101513.tif 000006