(57)【特許請求の範囲】
【請求項１】
パケットをプライベートネットワークとの間で送受信するＬＡＮインターフェース手段と、
前記送受信されたパケットを中継するＩＰルーティング手段と、
受信されたパケットがＥＳＰ（Encapsulating Security Payload）か否かを判断するＥＳＰ監視手段と、
前記受信されたパケットにアドレス変換を施すＮＡＴ処理手段と、
ＥＳＰのパケットにアドレス変換を施すＥＳＰＮＡＴ処理手段と、
パケットをグローバルネットワークとの間で送受信するＷＡＮインターフェースとを備え、
前記ＥＳＰＮＡＴ処理手段は、セキュリテイーパラメータインデックスと前記プライベートネットワーク上の端末のＩＰアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ＥＳＰのパケットのアドレス変換を実施することを特徴とするネットワークアドレス変換装置。
【請求項２】
第１のプライベートネットワークを介して複数のＶＰＮクライアントを収容したアドレス変換装置と、第２のプライベートネットワークを介して複数の内線端末を収容したＶＰＮゲートウェイトと、前記アドレス変換装置および前記ＶＰＮゲートウェイの接続されたグローバルネットワークとで構成されたＶＰＮクライアント多重化システムにおいて、
前記アドレス変換装置は、
パケットを前記第１のプライベートネットワークとの間で送受信するＬＡＮインターフェース手段と、
前記送受信されたパケットを中継するＩＰルーティング手段と、
受信されたパケットがＥＳＰ（Encapsulating Security Payload）か否かを判断するＥＳＰ監視手段と、
前記受信されたパケットにアドレス変換を施すＮＡＴ処理手段と、
ＥＳＰのパケットにアドレス変換を施すＥＳＰＮＡＴ処理手段と、
パケットをグローバルネットワークとの間で送受信するＷＡＮインターフェースとを備え、
前記ＥＳＰＮＡＴ処理手段は、セキュリテイーパラメータインデックスと前記第１のプライベートネットワーク上の端末のＩＰアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ＥＳＰのパケットのアドレス変換を実施する
ことを特徴とするＶＰＮクライアント多重化システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークアドレス変換方法およびその装置並びにＶＰＮクライアント多重化システムに関し、特にＥＳＰパケットを用いたＶＰＮにおけるネットワークアドレス変換方法およびその装置並びにＶＰＮクライアント多重化システムに関するものである。
【０００２】
【従来の技術】
ＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ  ）は、アクセスサーバやＷＡＮルータあるいはＶＰＮ専用装置などを利用して実現されるＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  ）の技術であり、その定義は「共有ネットワークをプライベートネットワークとし、ユーザが共有ネットワークを利用していることを意識することなく利用すること」であり、またそのための基盤テクノロジーを指す。ここでいう「共有ネットワーク」とは、インターネットや公衆通信網の電話網やフレーム・リレー網のことを指している。インターネットやフレーム・リレー上に、プライベートネットワークを構築し、利用者がそのことを意識しないで使える環境がＶＰＮであるということができる。
【０００３】
ＶＰＮ機能としては、データリンク層ではＰＰＴＰ、Ｌ２ＴＰ等、ネットワーク層ではＩＰｓｅｃ、セッション層ではＳＯＣＫＳｖ５やＳＳＬ３．０（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）といったいくつかの種類がある。ここでＩＰｓｅｃは、ＴＣＰ／ＩＰ上で暗号化通信を行うための標準であり、ＲＦＣ２４０１〜２４１２（ＲＦＣ：Ｒｅｑｕｅｓｔ  Ｆｏｒ  Ｃｏｍｍｅｎｔｓ）等で規定されている。これはＩＰレベルでの認証・暗号化によってＶＰＮを提供し、ＰＧＰやＳＳＨと違ってＩＰレベルにセキュリティ機能を施すことにより、エンドユーザは使用するホストやアプリケーションを意識することなく、安全な通信を確保することができ、柔軟な運用が可能になる。しかし、ＶＰＮから出てしまった情報はもはや保護されないので、例えばメールの内容を保護したい場合にはＰＧＰ等が必要になる。
【０００４】
〔ＥＳＰの概要〕
ＩＰｓｅｃでは、セキュリティプロトコルとして以下の２つが定義され、その実装が必須になっている。
・ＥＳＰ（Ｅｎｃａｐｓｕｌａｔｉｎｇ  Ｓｅｃｕｒｉｔｙ  Ｐａｙｌｏａｄ）
・ＡＨ（ＩＰ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｈｅａｄｅｒ）
【０００５】
このうち、ＥＳＰとは、パケットの暗号化と認証機能を実現するプロトコルの一種であり、詳細はＲＦＣ２４０６に記載されている。各プロトコルは、セキュリティプロトコルで処理されるデータの範囲を示すトランスポートモードとトンネルモードの２つのモードが用意されている。トランスポートモードはＩＰのデータ部分を対象とし、トンネルボードはＩＰパケット全体を対象としている。したがって、トンネルモードはＩＰパケット全体を暗号化し、それを新しいＩＰパケットにカプセル化（包み込む）することにより、データだけでなくＩＰヘッダも暗号化されるため、送信元アドレスや宛先アドレス、使用しているプロトコル（アプリケーション）等の情報の隠蔽が可能である。プライベートネットワークを利用している場合でも、ＶＰＮゲートウェイにグローバルアドレスが付与されていれば、そのグローバルアドレスを含むＩＰヘッダが付加されるので、インターネットを経由してプライベートアドレス同士の端末間で通信をすることが可能である。一方、トランスポートモードは、ＩＰヘッダを暗号化せずにＩＰパケットのユーザデータ（トランスポート層以上の部分）のみを暗号化するモードであり、主に端末間でのピア・ツー・ピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）の通信におけるセキュリティを提供するために利用される。
【０００６】
このようなＶＰＮにおいては、インターネット接続装置（例えばルータ等）に付与されているグローバルＩＰアドレスを、配下のプライベートＩＰアドレスが付与された端末（以下、プライベートホストという）とで共有することにより、プライベートホストとインターネット上のグローバルＩＰアドレスが付与されたホスト（以下、グローバルホストという）とのエンドエンドのＩＰ通信を実現する。
【０００７】
アドレスを共有するためには、プライベートホストが送出したグローバルホスト向けのパケットのソースアドレス、すなわちプライベートホストに付与されたプライベートＩＰアドレスをインターネット接続装置に付与されたグローバルＩＰアドレスに変換するアドレス変換方法がある。また、アドレス変換方法としては、従来よりＮＡＴとＩＰマスカレードが存在する。ＮＡＴは複数のプライベートホストが順次にグローバルＩＰアドレスを共有することを可能とするものであり、ＩＰマスカレードは複数のプライベートホストが同時にグローバルＩＰアドレスを共有することを可能とするものである。
【０００８】
図１７は、プライベートネットワークからのインターネット接続を説明するためのネットワーク構成図である。同図に示すように、プライベートネットワークＰＮを構成する複数のプライベートホストＰＨ１，…がアドレス変換装置Ｒを介して、インターネットＩＮＥＴおよびグローバルホストＧＨ１’、ＧＨ２’に接続されている場合を例にしてＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ  ）およびＩＰマスカレードについて具体的に説明する。どちらの方法においても共有されるのはプライベートネットワークＰＮに付与されているグローバルＩＰアドレスＧＲ（アドレス変換装置Ｒのインターネット側のＩＰアドレス）であり、この共有を実施するのがアドレス変換装置Ｒである。グローバルホストＧＨ１’，ＧＨ２’にはそれぞれグローバルＩＰアドレスＧ１’，Ｇ２’が付与され、プライベートホストＰＨ１，ＰＨ２，ＰＨ３にはそれぞれプライベートＩＰアドレスＰ１，Ｐ２，Ｐ３が付与されている。
【０００９】
〔１．ＮＡＴ〕
アドレス変換装置ＲがプライベートネットワークＰＮから受信したパケットを図１８に示すフローチャートに従って処理するとともに、インターネットから受信したパケットを図１９に示すフローチャートに従って処理する。図１８に示すようにアドレス変換装置Ｒは任意のプライベートホストＰＨ１から受信したパケットのソースアドレス（プライベートホストＰＨ１，…に付与されているプライベートＩＰアドレス、以下ＰＡという）を読み出し（ステップｓ１０１）、アドレス変換装置ＲのグローバルＩＰアドレス（以下、ＧＲという）に対応しているプライベートＩＰアドレスと一致するか否かを判断し（ステップｓ１０２）、一致しない場合にはそのパケットを破棄し（ステップｓ１０５）、一致する場合にはパケット内のＰＡを格納する各フィールドにアドレス変換装置ＲのＧＲを書き込むことによる（ステップｓ１０３）、グローバルＩＰアドレスが付与されていないプライベートホストＰＨ１，…からのパケットのソースアドレスをＧＲに変換する。そして、アドレス変換されたパケットをインターネットＩＮＥＴに転送する（ステップｓ１０４）。
【００１０】
一方、アドレス変換装置Ｒがインターネット上の任意のグローバルホストＧＨ１’，…からのパケットを受信すると、図１９に示すようにパケット内のＧＲを格納する各フィールドにＧＲに対応しているＰＡを書き込むことにより（ステップｓ２０１）、送信先のアドレスをアドレス変換装置ＲのＧＲから、何れかのプライベートホストＰＨ１，…のプライベートＩＰアドレスに変換するアドレス変換を行い、アドレス変換されたパケットをプライベートネットワークＰＮに送る（ステップｓ２０２）。
このように、ＮＡＴではアドレス変換装置Ｒが自己のＧＲを何れか１台のプライベートホストＰＨ１，…のＰＡに１対１に対応させてアドレス変換を行っており、同時にインターネットと接続可能なプライベートホストＰＨ１，…の台数が一台に限定されることになる。
【００１１】
〔２．ＩＰマスカレード〕
次にＩＰマスカレードにおいて説明を行う。プライベートホストＰＨ１，…での一連のトランザクション処理に付与されるポート番号（以下、ＰＰという）アドレス変換装置Ｒが各プライベートホストＰＨ１，…のＰＡとプライベートホストＰＨ１，…でのトランザクション処理に付与されたポート番号の対（ＰＡ，ＰＰ）をアドレス変換装置Ｒからインターネット側に送受信されるパケットのユニークなポート番号（以下、ＧＰという）ＧＰに１対１に対応させ、その対応関係を内部テーブルに記憶しており、これによって各プライベートホストＰＨ１，…のＰＡをアドレス変換装置ＲのＧＲの多対一にマップすることを可能としている。
【００１２】
図２０は、ＩＰマスカレードにおけるアドレス変換装置ＲがプライベートネットワークＰＮから受信したパケットの処理を示すフローチャートである。図２１は、ＩＰマスカレードにおけるアドレス変換装置ＲがインターネットＩＮＥＴから受信したパケットの処理を示すフローチャートである。図２０に示すようにアドレス変換装置Ｒは、任意のプライベートホストＰＨ１，…から受信したパケットから送信元のＩＰアドレスとポート番号ＰＰを読み出す（ステップｓ３０１）。そして、読み出したＰＡとＰＰの対（ＰＡ，ＰＰ）に対応するＧＰが内部テーブルに記憶されているか否か判断し（ステップｓ３０２）、記憶されている場合にはパケット内のＰＡを格納するフィールドにＧＲを書き込む（ステップｓ３０３）とともにパケット内のＰＰを格納する各フィールドにＧＰを書き込むことにより（ステップｓ３０４）、グローバルＩＰアドレスが付与されていないプライベートホストＰＨ１，…からのパケットの送信元アドレスをＧＲに変換するとともに送信元のポート番号ＰＰをユニークなポート番号ＧＰに変換する。そして、アドレス変換されたパケットをインターネットに転送する（ステップｓ３０５）。
【００１３】
また、（ＰＡ，ＰＰ）に対応するＧＰが内部テーブルに記憶されていない場合には、その（ＰＡ，ＰＰ）に対して、ユニークなＧＰが生成できるか否かを判断し（ステップｓ３０６）、生成できなければパケットを破棄し（ステップｓ３１１）、生成できる場合には（ＰＡ，ＰＰ）に対応したユニークなＧＰを作成して（ステップｓ３０７）、内部テーブルに（ＰＡ，ＰＰ）と生成したＧＰを格納するエントリを付け加える（ステップｓ３０８）。そして、パケット内のＰＡを格納する各フィールドにＧＲを書き込む（ステップｓ３０９）とともにパケット内のＰＰを格納する各フィールドにＧＰを書き込むことにより（ステップｓ３１０）、グローバルＩＰアドレスが付与されていないプライベートホストＰＨ１，…からのパケットの送信元アドレスをＧＲに変換するとともに送信元のポート番号ＰＰをユニークなポート番号ＧＰに変換する。そして、アドレス変換されたパケットをインターネットに転送する（ステップｓ３１１）。
【００１４】
一方、アドレス変換装置ＲがインターネットＩＮＥＴ上の任意のグローバルホストＧＨ１’，…からのパケットを受信すると、図２１に示すようにパケットからＧＰを読み出し（ステップｓ４０１）、内部テーブルにそのＧＰに対応する（ＰＡ，ＰＰ）の対があるか否かを判断する（ステップｓ４０２）。そして、対応する（ＰＡ，ＰＰ）の対が内部テーブルにある場合には、パケット内のＧＲを格納する各フィールドＰＰを書き込むことにより（ステップｓ４０４）、送信先のアドレスをアドレス変換装置ＲのＧＲから何れかのプライベートホストＰＨ１，…のプライベートＩＰアドレスＰＡに変換するアドレス変換を行う。そして、アドレス変換されたパケットをプライベートネットワークＰＮに送る（ステップｓ４０５）。なお、内部テーブルに受信パケットのＧＰと対応する（ＰＡ，ＰＰ）がない場合には、そのパケットは破棄される（ステップｓ４０６）。
【００１５】
【発明が解決しようとする課題】
ここでプライベートネットワーク上に位置するＶＰＮクライアントから、ＥＳＰパケットを送出し、任意のインターネット上のＶＰＮゲートウェイとＶＰＮセッションを確立する場合において、上記のＮＡＴとＩＰマスカレードを適用する場合について説明する。ＶＰＮクライアントとは、プライベートネットワーク上に位置し、ＩＰパケットに対してＥＳＰの処理を施し、ＥＳＰパケットを送出する機能を備えた機器である。ＶＰＮセッションは必ずＶＰＮクライアントから開始される（ＶＰＮのイニシエータ）。また、ＶＰＮゲートウェイとは、インターネット上に位置し、ＩＰパケットに対してＥＳＰの処理を施し、ＥＳＰパケットを送出する機能を備えた機器である。ＶＰＮの設定はセッション待ち受けの設定とする（ＶＰＮのレスポンダ）。
【００１６】
図２２は、ＥＳＰパケットフォーマットを示す模式図である。ＥＳＰでパケットの認証および暗号化を行う場合、同図に示すとおり、ＩＰヘッダは認証対象外であるので、アドレス変換を行うことは可能である。その場合においては、１対１のアドレス変換であるＮＡＴのみが可能であり、１つのグローバルＩＰアドレスを複数のセッションで共有するＮ対１のアドレス変換であるＩＰマスカレードを行うことはできない。これは、ＥＳＰのパケットはＴＣＰでもＵＤＰでもないため、ポート番号による多重化ができないためである（ＥＳＰヘッダにはポート番号という概念がない）。
【００１７】
図２３は、ＶＰＮにＮＡＴを適用した場合を説明するためのネットワーク構成図である。同図に示すように、ＮＡＴを適用した場合、プライベートネットワークに仕置するＶＰＮクライアントにおいて、インターネット上のＶＰＮゲートウェイとＶＰＮセッションを可能としているが、１対１のＮＡＴによってアドレス変換をしなければいけないため、そのプライベートネットワーク上でＶＰＮセッションを確立可能な端末は一台に限定される。そのため、図２４に示すようにプライベート空間内の複数のＶＰＮクライアントから、ＶＰＮセッションを複数確立するためには、そのＶＰＮセッションの数だけ、ＮＡＴ機能を有する機器（例えばルータ等）を用意しなければならない。そのため機器コスト、またその機器の管理コスト等が増大するという問題があった。
【００１８】
本発明は、このような課題を解決するためのものであり、１つのプライベートネットワーク上にある複数のＶＰＮクライアントから１つのアドレス変換装置経由でインターネットに接続し、同時に１つまたは複数のＶＰＮゲートウェイとの間でＶＰＮセッション（使用プロトコルはＥＳＰ）を構築可能とするネットワークアドレス変換装置を提供することを目的とする。
また、このようなネットワークアドレス変換装置を用いることにより、ＶＰＮクライアントの多重化を実現可能とするＶＰＮクライアント多重化システムを提供することをその他の目的とする。
【００１９】
【課題を解決するための手段】
このような目的を達成するために、本発明に係るネットワークアドレス変換装置は、パケットをプライベートネットワークとの間で送受信するＬＡＮインターフェース手段と、前記送受信されたパケットを中継するＩＰルーティング手段と、受信されたパケットがＥＳＰ（Encapsulating Security Payload）か否かを判断するＥＳＰ監視手段と、前記受信されたパケットにアドレス変換を施すＮＡＴ処理手段と、ＥＳＰのパケットにアドレス変換を施すＥＳＰＮＡＴ処理手段と、パケットをグローバルネットワークとの間で送受信するＷＡＮインターフェースとを備え、前記ＥＳＰＮＡＴ処理手段は、セキュリテイーパラメータインデックスと前記プライベートネットワーク上の端末のＩＰアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ＥＳＰのパケットのアドレス変換を実施する。
【００２１】
また、本発明に係るＶＰＮクライアント多重化システムは、第１のプライベートネットワークを介して複数のＶＰＮクライアントを収容したアドレス変換装置と、第２のプライベートネットワークを介して複数の内線端末を収容したＶＰＮゲートウェイトと、前記アドレス変換装置および前記ＶＰＮゲートウェイの接続されたグローバルネットワークとで構成されたＶＰＮクライアント多重化システムにおいて、前記アドレス変換装置は、パケットを前記第１のプライベートネットワークとの間で送受信するＬＡＮインターフェース手段と、前記送受信されたパケットを中継するＩＰルーティング手段と、受信されたパケットがＥＳＰ（Ｅｎｃａｐｓｕｌａｔｉｎｇ  Ｓｅｃｕｒｉｔｙ  Ｐａｙｌｏａｄ）か否かを判断するＥＳＰ監視手段と、前記受信されたパケットにアドレス変換を施すＮＡＴ処理手段と、ＥＳＰのパケットにアドレス変換を施すＥＳＰＮＡＴ処理手段と、パケットをグローバルネットワークとの間で送受信するＷＡＮインターフェースとを備え、前記ＥＳＰＮＡＴ処理手段は、セキュリテイーパラメータインデックスと前記第１のプライベートネットワーク上の端末のＩＰアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ＥＳＰのパケットのアドレス変換を実施する。
【００２２】
このように構成することにより本発明は、ＥＳＰパケット中のＳＰＩを利用することにより、ＶＰＮ内のプライベートアドレスとインターネット上のグローバルアドレスとのアドレス変換を実現し、ＶＰＮ内の複数の端末とインターネット上のＶＰＮゲートウェイとを接続することができる。したがって、１つのプライベートネットワーク上にある複数のＶＰＮクライアントから１つのアドレス変換装置経由でインターネットに接続し、同時に１つまたは複数のＶＰＮゲートウェイとの間でＶＰＮセッション（使用プロトコルはＥＳＰ）を構築可能となる。
【００２３】
【発明の実施の形態】
次に、本発明の一つの実施の形態について図を用いて説明する。
図１は、本発明の一つの実施の形態を示すブロック図である。同図に示すように、本実施の形態に係るシステムは、ＶＰＮクライアントＬＨ１＿１、ＬＨ１＿２およびＬＨ２と、プライベートネットワークＬと、アドレス変換装置Ｒと、グローバルネットワークであるインターネットＩＮＥＴと、ＶＰＮゲートウェイＧＨ１およびＧＨ２と、プライベートネットワークＸおよびＹと、内線端末ＸＨ１、ＸＨ２、ＹＨ１およびＹＨ２とで構成されている。
また、ＶＰＮクライアントＬＨ１＿１は、パケット処理部ＬＨ１＿１ａとＶＰＮ処理部ＬＨ１＿１ｂとＬＡＮインターフェースＬＨ１＿１ｃとで構成されている。
【００２４】
また、アドレス変換装置Ｒは、パケットをＬＡＮとの間で送受信するＬＡＮインターフェースＲａと、パケットをルーティングするＩＰルーティングＲｂと、受信したパケットがＥＳＰかどうか判断するＥＳＰ監視部Ｒｄと、パケットにアドレス変換を施すＮＡＴ処理部Ｒｃと、ＥＳＰのパケットにアドレス変換を施すＥＳＰＮＡＴ処理部Ｒｅと、パケットをＷＡＮとの間で送受信するＷＡＮインターフェースＲｆとで構成されている。
また、ＶＰＮゲートウェイＧＨ１は、ＷＡＮインターフェースＧＨ１ａとＶＰＮ処理部ＧＨ１ｂとＬＡＮインターフェースＧＨ１ｃとで構成されている。
また、内線端末ＸＨ１は、ＬＡＮインターフェースＸＨ１ａとパケット処理部ＸＨ１ｂとで構成されている。
【００２５】
ここで、アドレス変換装置Ｒの構成要素について詳細に説明する。
ＬＡＮインターフェースＲａは、イーサネット処理といったＯＳＩ参照モデルの物理層およびデータリンク層に関する処理、またはフィルタリング等のＯＳＩ参照モデルのネットワーク層の処理を行う。
ＩＰルーティングＲｂは、ルーティングテーブルに基づいて、パケットのルーティングを行う。ただし、ディステイネーションアドレスが自分自身であった場合、トランスポートレイヤ以上の処理に委ね、パケットを内部に取り込む。
ＥＳＰ監視部Ｒｄの内部には、ＬＡＮ側から受信したパケットとＷＡＮ側から受信したパケットに対して施す処理が異なることにより、ＬＡＮ側、ＷＡＮ側という２つ処理部を持つ。ＬＡＮ側から来たパケットは、そのパケットのＩＰの上位プロトコルがＥＳＰかどうか判断する。ＥＳＰであったら、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側に処理を渡し、ＥＳＰでなければＮＡＴ処理部ＲｃのＬＡＮ側に処理を渡す。ＷＡＮ側から来たパケットの場合、そのパケットのＩＰの上位プロトコルがＥＳＰかどうか判断し、ＥＳＰであったら、ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側に処理を渡し、ＥＳＰでなければＮＡＴ処理部ＲｃのＷＡＮ側に処理を渡す。
【００２６】
図２は、ＥＳＰ監視部のＬＡＮ側の処理フローチャートを示す。
〔ステップｓ５０１（ＥＳＰ判断）〕
ＬＡＮインターフェースＲａから受信したＩＰパケットのＩＰヘッダのプロトコルフィールドを読み取り、ＥＳＰかどうか、すなわち５０番かどうか判断する（ＩＡＮＡによってプロトコル番号５０は、ＥＳＰのため予約されている）。ＥＳＰであるならばステップｓ５０２へ、ＥＳＰ以外のプロトコルであった場合ステップｓ５０３へ処理を移行する。
〔ステップｓ５０２（ＥＳＰＮＡＴ処理へ移行）〕
ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１に処理を渡す。
〔ステップｓ５０３（ＮＡＴ処理へ移行）
ＮＡＴ処理部ＲｃのＬＡＮ側処理部Ｒｃ１に処理を渡す。
【００２７】
図３は、ＥＳＰ監視部のＷＡＮ側の処理フローチャートを示す。
〔ステップｓ６０１（ＥＳＰ判断）〕
ＩＰルーティングから受信したＩＰパケットのＩＰヘッダのプロトコルフィールドを読み取り、ＥＳＰかどうか、すなわち５０番かどうか判断する（ＩＡＮＡによってプロトコル番号５０は、ＥＳＰのため予約されている）判断する。ＥＳＰであるならばステップｓ６０２へ、ＥＳＰ以外のプロトコルであった場合ステップｓ６０３へ処理を移行する。
〔ステップｓ６０２（ＥＳＰＮＡＴ処理へ移行）〕
ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３に処理を渡す。
〔ステップｓ６０３（ＮＡＴ処理へ移行）〕
ＮＡＴ処理部ＲｃのＷＡＮ側処理部Ｒｃ２に処理を渡す。
【００２８】
ＮＡＴ処理部Ｒｃは、ＥＳＰ監視部Ｒｄからパケットを受け取り、自らが持つ変換テーブルに従って、そのパケットのアドレスを変換する。ＬＡＮ側から受信したパケットとＷＡＮ側から受信したパケットに対して施す処理が異なるのでＬＡＮ側処理部Ｒｄ１、ＷＡＮ側処理部Ｒｄ２という２つ処理部を持つこととする。詳細にいうと、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１から、ＮＡＴ処理部ＲｃのＬＡＮ側処理部Ｒｃ１がパケットを受信するとき、そのパケットはソースアドレスとしてプライベートアドレスを持つが、ＮＡＴ処理部Ｒｃは自らが持つ変換テーブルに従ってそのパケットのソースアドレスをグローバルアドレスに変換して、インターネットＩＮＥＴヘ中継する。反対に、ＥＳＰ監視部ＲｄのＷＡＮ側から、ＮＡＴ処理部ＲｃのＷＡＮ側処理部Ｒｃ２がパケットを受信するとき、そのパケットのディスティネーションアドレスに対してＮＡＴ処理部Ｒｃが変換を施す。ＮＡＴ処理部Ｒｃでは、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ  ）とそれに改良を加えたＩＰマスカレードというアドレス変換方法を行うことが可能である。
【００２９】
ＥＳＰＮＡＴ処理部Ｒｅは、ＥＳＰ監視部Ｒｄからパケットを受け取り、自らが持つ内部テーブルに従って、パケットのアドレスを変換し、パケットをＩＰルーティングＲｂまたはＷＡＮインターフェースＲｆに送出する。ＥＳＰＮＡＴ処理部Ｒｅは、本発明の特徴とする構成であり、その構成要素は（１）内部テーブルＲｅ２、（２）ＬＡＮ側処理部Ｒｅ１、（３）ＷＡＮ側処理部Ｒｅ３である。
【００３０】
（１）内部テーブルＲｅ２
図４は、内部テーブルを示す模式図である。内部テーブルＲｅ２は、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１が受信したパケットのソースアドレスを格納するＶＰＮクライアントフィールドと送信先のインターネット上に存在するＶＰＮゲートウェイのグローバルアドレスを格納するＶＰＮゲートウェイフィールド、そのパケットのレスポンスパケットのＳＰＩの値を格納するＳＰＩフィールドを持つ。これらのＶＰＮゲートウェイフィールド、ＶＰＮクライアントフィールド、ＳＰＩフィールドに格納される１組のデータの組をレコードと呼ぶ。
【００３１】
ここで、ＳＰＩの概要について説明する。
ＳＰＩとは、受信者がセキュリティプロトコル毎にセキュリティパラメータであるセキュリティアソシエーション（以下、ＳＡという）を識別するために使うもので、ＥＳＰヘッダ（図２２参照）に含まれている。ＩＰｓｅｃでは、暗号化や認証に使用するアルゴリズムを規定していない。このため、様々な種類のアルゴリズムの中から利用したいものを選択することが可能となる。しかし、当然、相手側がどのアルゴリズムを使用して暗号化したのか、どのアルゴリズムを利用して認証しているのかということが分からなければパケットを受け取ることができない。このような情報を保持するために、ＩＰｓｅｃではＳＡを利用する。ＶＰＮクライアントとＶＰＮゲートウェイが保持するＳＡには、使用する暗号化アルゴリズムの種類、暗号化アルゴリズムのモード、暗号化アルゴリズムで使用する初期ベクトル（ＩＶ）の長さ、認証アルゴリズムの種類、認証アルゴリズムのモード、暗号化鍵、認証鍵などの情報がされている。
【００３２】
このＳＡはそれぞれの機器で保持され、ＩＰｓｅｃパケットを送り出す場合には、相手側の保持するＳＡの中から利用できるものを送信側が選択し、そのＳＡに付けられているＳＰＩの値をそのパケットのＥＳＰヘッダのフィールドに含めて送信する。受信側は、ＥＳＰヘッダ中のＳＰＩ値によってどのＳＡが使用されているのかを識別する。ＳＰＩ値は鍵交換のフェーズで決定される３２ビットの擬似乱数値である。またＳＡは単方向である。つまり、端末Ａと端末Ｂが通信する場合、端末Ａから端末Ｂへのパケットと、端末Ｂから端末Ａへのパケットには異なるＳＡが使用される。よって、行きのパケットはＤＥＳで暗号化し、帰りのパケットはトリプルＤＥＳで暗号化するといったような、その方向によって使用するアルゴリズムを変えることも可能である。ＳＡが単方向ということは、すなわち、鍵交換を行ったＶＰＮクライアント、ＶＰＮゲートウェイは、互いに受信したＩＰｓｅｃパケットに対して適切なＳＡを識別するためのＳＰＩ値、ＩＰｓｅｃパケットを送信する際に適切なＳＡを選択するためのＳＰＩ値という２つのＳＰＩ値を持つことになる。
【００３３】
図５は、ＳＰＩとＳＡの使用例を示す説明図である。
▲１▼  ＩＰｓｅｃパケットの送出側はＩＰｓｅｃ処理が必要なパケットがきたら、適切なＳＡを選択し、どのようなセキュリティパラメータに従ってパケットに処理を施すか決定する。受信したパケットに対して、ＩＰｓｅｃ処理が必要か否かおよび適切なＳＡを選択する方法は、そのパケットのＩＰアドレス、トランスポート層プロトコルなどによって決定される。
▲２▼  ▲１▼によって決定したＳＡに従い、パケットにＩＰｓｅｃ処理（パケットの暗号化等）を施し、パケットを送出する。
▲３▼  ＩＰｓｅｃパケットの受信側はＩＰｓｅｃのパケットを受信したら、そのパケットのＳＰＩ値を読み出して、そのＳＰＩ値を元にセキュリティパラメータ表を検索し、そのＩＰｓｅｃパケットを復号化するのに適切なＳＡを選択する。
▲４▼  ▲３▼で検索したＳＡを用いて、ＩＰｓｅｃ処理（パケットの復号化等）を行う。ここで説明したＳＰＩをインデックスとして適切なＳＡを選択したり、受信パケットの宛先アドレス等からＶＰＮ処理するか否かといった機能はＶＰＮクライアント、ＶＰＮゲートウェイの構成要素ＶＰＮ処理部が行う。
【００３４】
（２）ＬＡＮ側処理部Ｒｅ１
ＬＡＮ側処理部Ｒｅ１は、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１から受信したＥＳＰパケットに対して、図６に示すようなフローチャートに従い、パケットを処理する。
【００３５】
図６は、ＥＳＰ処理部における処理フローチャートを示す。
〔ステップｓ７０１〕
ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１は、受信したパケットのソースアドレス、ディスティネーションアドレス、ＳＰＩ値と内部テーブルを参照し、受信パケットを「新規」、「登録不可」、「登録完了」の３つの状態の何れかに判別する。受信パケットを「新規」と判別した場合にはステップｓ７０２へ、「登録不可」と判別した場合にはステップｓ７０５へ、登録完了と判別した場合はステップｓ７０６へと処理を移行する。
【００３６】
次に、受信パケットの状態を判別方法を説明する。
図７は、図６のステップｓ７０１の詳細フローチャートを示す。
まず、受信したパケットのディスティネーションアドレスを読み出し、内部テーブルのＶＰＮゲートウェイフィールドを参照して、読み出したディスティネーションアドレスと同一のアドレスがあるかどうか判断する（ステップｓ９０１）。ディスティネーションアドレスと同一のアドレスが存在する場合には、ステップｓ９０２へ移行する。ディスティネーションアドレスと同一のアドレスが存在しない場合には、受信パケットの状態を「新規」に決定する（ステップｓ９０６）。ステップｓ９０２では、内部テーブルを参照し、受信パケットのディスティネーションアドレスと同一のアドレスを持つＶＰＮゲートウェイフィールドのレコードを抽出する。ステップｓ９０３では、ステップｓ９０２で抽出された全てのレコードにおいて、ＳＰＩフィールドに値が格納されているかどうか判断する。全てのレコードにおいて、ＳＰＩフィールドに値が格納されていた場合、受信パケットの状態、を「登録完了」とする（ステップｓ９０４）。少なくとも１つのレコードのＳＰＩフィールドにおいて、値が格納されていない場合、受信パケットの状態を「登録不可」とする（ステップｓ９０５）。
【００３７】
〔ステップｓ７０２〕
・受信したパケットのソースアドレスを内部テーブルのＶＰＮクライアントフィールドに、ディステイネーションアドレスを内部テーブルのＶＰＮゲートウェイフィールドに格納する。
〔ステップｓ７０３〕
・受信したパケットのソースアドレスをルータが持つグローバルアドレスに変換する。
〔ステップｓ７０４〕
・パケットをＷＡＮインターフェースに転送する。
〔ステップｓ７０５〕
・パケットを破棄する。
〔ステップｓ７０６〕
・受信したパケットのソースアドレスをルータが持つグローバルアドレスに変換する。
〔ステップｓ７０７〕
・パケットをＷＡＮインターフェースに転送する。
【００３８】
（３）ＷＡＮ側処理部Ｒｅ３
次にＷＡＮ側処理部Ｒｅ３は、ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２から受信したＥＳＰパケットに対し、図８に示すようなフローチャートに従ってパケットを処理する。
【００３９】
図８は、ＥＳＰＮＡＴ処理部のＷＡＮ側処理部における処理フローチャートを示す。
〔ステップｓ８０１〕
・ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３は、受信したパケットのソースアドレス、ディスティネーションアドレス、ＳＰＩ値と内部テーブルを参照し、受信パケットを「未登録」、「登録途中」、「登録完了」の３つの状態の何れかに判別する。受信パケットを「未登録」と判別した場合にはステップｓ８０２へ、「レスポンス」と判別した場合にはステップｓ８０５へ、「登録済み」と判別した場合はステップｓ８０３へと処理を移行する。
【００４０】
次に、受信パケットの状態を判別する方法を説明する。
図９は、受信パケットが「未登録」、「レスポンス」、「登録完了」の何れの状態か判断するためのフローチャートを示す。まず、受信したパケットのソースアドレスを読み出し、内部テーブルのＶＰＮゲートウェイフィールドを参照して、読み出したソースアドレスと同一のアドレスがあるかどうか判断する（ステップｓ１００１）。ソースアドレスと同一のアドレスが存在する場合には、ステップｓ１００２へ移行する。ＶＰＮゲートウェイフィールドに受信パケットのソースアドレスと同一のアドレスが存在しない場合には、受信パケットの状態を「未登録」に決定する（ステップｓ１００７）。ステップｓ１００２では、内部テーブルを参照し、受信パケットのソースアドレスと同一のアドレスを持つＶＰＮゲートウェイフィールドのレコードを抽出する。
【００４１】
ステップｓ１００３では、ステップｓ１００２で抽出された全てのレコードにおいて、ＳＰＩフィールドに値が格納されているかどうか判断する。全てのレコードにおいて、ＳＰＩフィールドに値が格納されていた場合、ステップｓ１００５に移行する。少なくとも１つのレコードのＳＰＩフィールドにおいて、値が格納されていない場合、受信パケットの状態を「レスポンス」とする（ｓ１００４）。ステップｓ１００５では、受信パケットのＳＰＩ値を読み込み、ステップｓ１００２で抽出されたレコードにおけるＳＰＩフィールドにおいて、同一の値が格納されているかどうか判断する。同一の値が格納されていた場合、受信パケットの状態を「登録完了」とする（ステップｓ１００６）。同一の値が格納されていない場合は、受信パケットの状態を「未登録」とする（ステップｓ１００７）。
【００４２】
〔図８のステップｓ８０２〕
・パケットを破棄する。
〔ステップｓ８０３〕
・受信したパケットのＥＳＰヘッダのＳＰＩ値を読み出して、内部テーブルを参照し、読み出したＳＰＩ値と同一のＳＰＩフィールドを含むレコードを抽出する。抽出したレコードのＶＰＮクライアントフィールドに格納されているアドレスをパケットのディスティネーションアドレスに変換する。
〔ステップｓ８０４〕
・パケットをＩＰルーティングＲｂに転送する。
〔ステップｓ８０５〕
図９のステップｓ１００２により抽出されたレコードにおいて、ＳＰＩフィールドに値が格納されていないレコードを抽出し、そのレコードのＳＰＩフィールドに受信したパケットのＥＳＰヘッダのＳＰＩフィールドに格納されているＳＰＩ値を格納する。
【００４３】
ＷＡＮインターフェースＲｆは、ＰＰＰやＩＳＤＮ回線処理といったＯＳＩ参照モデルの物理層およびデータリンク層に関する処理、またはフィルタリング等のＯＳＩ参照モデルのネットワーク層の処理を行う。これらの処理は本発明の主旨ではないため、ここでは言及しない。また、接続回線は、ＩＳＤＮや専用線、イーサーネットといった種類は問わない。
【００４４】
本実施の形態は上記構成要素により、ＥＳＰパケットを送出するプライベートネットワーク上の複数のＶＰＮクライアント間でグローバルなＩＰアドレスを同時に共用することが可能なアドレス変換方法を実現する。従来のアドレス変換装置には、ＥＳＰ監視部とＥＳＰＮＡＴ処理部がなかったので、ＥＳＰパケットを送出するプライベートネットワーク上の複数のＶＰＮクライアント間でグローバルなＩＰアドレスを同時に共用することができなかったのに対し、ＥＳＰ監視部とＥＳＰＮＡＴ処理部を新規に追加したことにより、グローバルなＩＰアドレスを同時に共用することができるようになった。
【００４５】
なお、本発明において、グローバルなＩＰアドレスを同時に共用することができることに関して、ＶＰＮゲートウェイが送信したＥＳＰパケットに含まれるＳＰＩ値がＶＰＮクライアント固有であることを前提としているが、ＳＰＩ値は、鍵交換時に決定される３２ビットの擬似乱数値であるため、約４３億分の１で異なるＶＰＮクライアントが同一のＳＰＩ値を保持することがある。この場合は、ＶＰＮゲートウェイからのＥＳＰパケットのディスティネーションアドレスを適切なＶＰＮクライアントのアドレスに変換することができないため、正しく通信を行うことができない。この問題は、再度鍵交換を行うといった運用で回避することとする。
【００４６】
〔ＶＰＮクライアント多重化システム〕
図１に示すＶＰＮ多重化システムは、１つのプライベートネットワーク上にある複数のＶＰＮクライアントから１つのアドレス変換装置を経由してインターネットに接続し、同時に１つまたは複数のＶＰＮゲートウェイとの間でＶＰＮセッションを構築する。ＶＰＮセッションの多重化を行う際のシステムは、アドレス変換装置配下のプライベートネットワーク上に位置する複数のＶＰＮクライアント、アドレス変換装置、インターネット上に位置する複数のＶＰＮゲートウェイ、内線端末の４つのノードから構成される。
【００４７】
次に、４つのノードの構成要素を各々説明する。
ＶＰＮクライアントＬＨ１＿１は、パケットの処理およびルーティングを実施するパケット処理部ＬＨ１＿１ａと、パケットにＶＰＮの処理を施すＶＰＮ処理部ＬＨ１＿１ｂと、パケットをイーサーネットとの間で送受信するＬＡＮインターフェースＬＨ１＿１ｃとで構成されている。
アドレス変換装置Ｒは、パケットをＬＡＮとの間で送受信するＬＡＮインターフェースＲａと、パケットをルーティングするＩＰルーティングＲｂと、受信したパケットがＥＳＰかどうか判断するＥＳＰ監視部Ｒｄと、パケットにアドレス変換を施すＮＡＴ処理部Ｒｃと、ＥＳＰのパケットにアドレス変換を施すＥＳＰＮＡＴ処理部Ｒｅと、パケットをＷＡＮとの間で送受信するＷＡＮインターフェースＲｆとで構成されている。
ＶＰＮゲートウェイＧＨ１は、パケットをＷＡＮとの間で送受信するＷＡＮインターフェースＧＨ１ａと、パケットにＶＰＮの処理を施すＶＰＮ処理部ＧＨ１ｂと、パケットをＬＡＮとの間で送受信するＬＡＮインターフェースＧＨ１ｃとで構成されている。
内線端末ＸＨ１は、パケットをＬＡＮとの間で送受信するＬＡＮインターフェースＸＨ１ａと、パケットの処理およびルーティングするパケット処理部ＸＨ１ｂとで構成されている。
【００４８】
これらのシステム構成要素において、アドレス変換装置Ｒの各構成要素は、前記アドレス変換装置の構成要素の説明と同一である。また、それ以外の構成要素については、特に従来のＴＣＰ／ＩＰ通信およびＴＣＰ／ＩＰ通信ノード上のＶＰＮ処理部については、従来の処理とは特に変わらず、新規な部分は存在しないので、説明を省略する。
【００４９】
以下、システムの構成を説明する。
複数のＶＰＮクライアントＬＨ１＿１，…がアドレス変換装置Ｒにバス接続されてプライベートネットワークＬを構成している。ＬＨ１＿１，…に付記した添え字は、「対向ＶＰＮゲートウェイの添え字」アンダーバー「ＶＰＮクライアントの添え字」（例：対向ＶＰＮゲートウェイがＧ１で、その対向ＶＰＮゲートウェイに接続するＶＰＮクライアントが２台あるとき、ＬＨ１＿１、ＬＨ１＿２となる）。添え字については、以下、同様の記述規則とする。プライベートネットワークＬはアドレス変換装置Ｒを介してインターネットＩＮＥＴに接続しており、インターネットＩＮＥＴ上には複数のＶＰＮゲートウェイＧＨ１，…が存在し、各々のＶＰＮゲートウェイＧＨ１，…の配下には複数の内線端末ＸＨ１，ＸＨ２，…がバス接続されてプライベートネットワークＸ，…を構築している。プライベートネットワーク上の各ＶＰＮクライアントＬＨ１＿１，ＬＨ１＿２，ＬＨ２，…には、各々プライベートＩＰアドレスＬ１＿１，Ｌ１＿２，Ｌ２，…が付与されている。
【００５０】
また、アドレス変換装置ＲのインターネットＩＮＥＴ側には、グローバルＩＰアドレスＧＲが付与されている。インターネットＩＮＥＴ上のＶＰＮゲートウェイＧＨ１，…のインターネットＩＮＥＴ側には、各々グローバルＩＰアドレスＧ１，…が付与されている。ＶＰＮゲートウェイ配下の内線端末ＸＨ１，…には各々プライベートＩＰアドレスＸ１，…が付与されている。
図１中に示す太破線の矢印は、ＶＰＮクライアントから内線端末へのパケットの流れを示している。太線の矢印は、内線端末からＶＰＮクライアントヘのパケットの流れである。細線の矢印は、ＶＰＮクライアントからのパケットが内線端末へと到達する際の各構成要素における処理の流れを示している。細線の矢印は、内線端末からのパケットがＶＰＮクライアントヘと到達する際の各構成要素における処理の流れを示している。
【００５１】
【実施例】
次に、本発明の実施例について説明する。
図１０は、本発明の実施例を示すネットワーク構成図である。同図に示すようなアドレス変換装置Ｒを介してＶＰＮゲートウェイＬＨ１＿１，ＬＨ１＿２，ＬＨ２とＶＰＮゲートウェイＧＨ１，ＧＨ２との間で３とおりのＶＰＮセッションを確立する場合を例にして、アドレス変換装置でのアドレス変換手順を説明する。
【００５２】
まず、本発明を実施するための前提条件は、ＶＰＮクライアントがセキュアな通信を行う対向のＶＰＮゲートウェイと鍵交換のフェーズを完了していることである。既にこの時点で各々の２点間の鍵交換のフェーズは完了し、各ＶＰＮクライアントおよびＶＰＮゲートウェイはともにセキュアな通信に必要なパラメータの集合であるＳＡを保持しているものとする。鍵交換に関しては、トランスポート層プロトコルＵＤＰ、ポート番号５００番が使用される。よってＮＡＴ処理部においては、トランスポート層プロトコルＵＤＰ、ポート番号５００番のパケットに対して、ポート番号を５００番に保持したまま、アドレスのみを変換する方法によって対処する。このとき、アドレス、プロトコル、ポート番号の組を変換テーブルに保持するわけだが、その保持期間は鍵交換が完了した後、可能な限り短時間で終了することが望ましい。鍵交換を行ったＶＰＮクライアントおよびＶＰＮゲートウェイは、互いに受信したＥＳＰパケット用のＳＡを識別するためのＳＰＩ値（以下、受信ＳＰＩ値という）、ＥＳＰパケットを送信する際に適切なＳＡを選択するためのＳＰＩ値（以下、送信ＳＰＩ値という）という２つのＳＰＩ値を持っていることになる。
【００５３】
本実施例ではＶＰＮクライアントＬＨ１＿１はＶＰＮゲートウェイＧＨ１と、ＶＰＮクライアントＬＨ１＿２はＶＰＮゲートウェイＧＨ１と、ＶＰＮクライアントＬＨ２はＶＰＮゲートウェイＧＨ２と鍵交換を完了しているとする。図１０に示すようにＶＰＮクライアントＬＨ１＿１は、ＶＰＮゲートウェイ配下のネットワークＸ向けのパケットに対して、ＥＳＰ処理を施すわけだが、適切なＳＡを選択する際の送信ＳＰＩ値がＡＡＡであり、またＶＰＮゲートウェイＧＨ１から受信したＥＳＰパケットに対しては、適切なＳＡを選択するために受信ＳＰＩ値ＢＢＢが使用される。同様にＶＰＮクライアントＬＨ１＿２の送信ＳＰＩ値はＣＣＣ、受信ＳＰＩ値はＤＤＤ，ＶＰＮクライアントＬＨ２の送信ＳＰＩ値はＥＥＥ、受信ＳＰＩ値はＦＦＦである。ＶＰＮゲートウェイＧＨ１の送信ＳＰＩ値は、パケットの宛先がＬ１＿１であった場合ＢＢＢ，Ｌ１＿２であった場合ＤＤＤであり、受信ＳＰＩ値は、ＡＡＡ、ＣＣＣの２つを保持している。同様にＶＰＮゲートウェイＧＨ２の送信ＳＰＩ値は、パケットの宛先がＬ２であった場合、ＦＦＦであり、受信ＳＰＩ値はＥＥＥを保持している。
【００５４】
ここで、３つのＶＰＮセッションの確立の例を述べて、本実施例を説明する。アドレス変換装置Ｒを介して、ＶＰＮクライアントＬＨ１＿１とＶＰＮゲートウェイＧＨ１、ＶＰＮクライアントＬＨ１＿２とＶＰＮゲートウェイＧＨ１、ＶＰＮクライアントＬＨ２とＶＰＮゲートウェイＧＨ２との間で３とおりのＶＰＮセッションを確立する場合を例にして、アドレス変換手順を説明する。なお、以下の例ではＥＳＰ・トンネルモードについて説明するが、ＥＳＰ・トランスポートモードについても同様の手順で行われる。
【００５５】
図１０におけるＶＰＮクライアントＬＨ１＿１は、ＶＰＮゲートウェイＧＨ１と鍵交換を完了している。また、ＶＰＮクライアントＬＨ１＿２はＶＰＮゲートウェイＧＨ１と鍵交換を完了し、ＶＰＮクライアントＬＨ２はＶＰＮゲートウェイＧＨ２と鍵交換を完了しており、各々ＳＰＩ値を保持している。同図において、破線矢印はＶＰＮセッションを示しており、矢印の起点がＶＰＮセッション確立要求するホストであり、矢印の先がＶＰＮセッション確立要求相手のホストである。
【００５６】
ＶＰＮセッション▲１▼は、ＶＰＮクライアントＬＨ１＿１がＶＰＮゲートウェイＧＨ１との間にＶＰＮセッションを確立し、プライベートネットワークＸ上の端末ＸＨ１と通信を行うことを意味している。また、ＶＰＮセッション▲２▼は、ＶＰＮクライアントＬＨ１＿２がＶＰＮゲートウェイＧＨ１との間にＶＰＮセッションを確立し、プライベートネットワークＸ上の端末ＸＨ２と通信を行うことを意味している。さらに、ＶＰＮセッション▲３▼は、ＶＰＮクライアントＬＨ２がＶＰＮゲートウェイＧＨ２との間にＶＰＮセッションを確立し、プライベートネットワークＹ上の端末ＹＨ１と通信を行うことを意味している。
このようなＶＰＮセッション▲１▼、▲２▼、▲３▼を順に確立していくものとする。
【００５７】
図１１、図１２、図１３、図１４、図１５、図１６は、図１０に示すＶＰＮセッションを確立するにあたってのＥＳＰＮＡＴ処理部における内部テーブルの変化、パケットのアドレス変換等の変化を時系列的に示したシーケンス図である。ここでパケットの形態を分かりやすく表示するため、ソースアドレス（以下、ＳＡという）、ディスティネーションアドレス（以下、ＤＡという）、セキュリティパラメータインデックスの値（以下、ＳＰＩという）、データ（以下、ＤＡＴＡという）のみを示すことにより、パケットの構成を簡易に表記する。
【００５８】
まず、プライベートネットワークＬ上のＶＰＮゲートウェイＬＨ１＿１がインターネットＩＮＥＴ上のＶＰＮゲートウェイＧＨ１配下のプライベートネットワークＸ上の端末ＸＨ１に対して通信を行うものとする。
【００５９】
〔１〕ＶＰＮクライアントＬＨ１＿１
１−１  ＶＰＮクライアントＬＨ１＿１のパケット送出部ＬＨ１＿１ａ（図１）が送信先のＩＰアドレスＸ１のパケットＰ１を作成し、ＶＰＮ処理部ＬＨ１＿１ｂへ渡す。
１−２  パケットＰ１のディスティネーションアドレスはＸ１であり、プライベートネットワークＸ向けのパケットのため、パケットＰ１にＥＳＰ処理を施し、ＥＳＰパケットＥＰ１を生成する。そして、ＬＡＮインターフェースＬＨ１＿１ｃヘ処理を渡す。
１−３  ＶＰＮクライアントＬＨ１＿１のＬＡＮインターフェースＬＨ１＿１ｃは、ＥＳＰパケットＥＰ１をプライベートネットワークＬへ送出する。
【００６０】
〔２〕アドレス変換装置Ｒ
２−１  ＥＳＰパケットＥＰ１をアドレス変換装置ＲのＬＡＮインターフェースＲａが受信し、ＩＰルーティングＲｂヘ処理を渡す。
２−２  ＩＰルーティングＲｂはＥＳＰパケットＥＰ１のディステイネーションアドレスＧ１を読み出し、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１へ処理を渡す。
２−３  ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１は、ＥＳＰパケットＥＰ１のＩＰヘッダのプロトコルフィールドを参照し、パケットのＩＰの上位プロトコルがＥＳＰかどうかを判断する（図２のステップｓ５０１）。
２−４  ＥＳＰパケットＥＰ１はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１へ処理を渡す（図２のステップｓ５０２）。
【００６１】
２−５  ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、パケットのディステイネーションアドレスＧ１と同一のアドレスが格納されているかどうかを検索する（図７のステップｓ９０１）。
２−６  その結果、同一のアドレスが格納されていないので、ＥＳＰパケットＥＰ１の状態を「新規」と判断する（図７のステップｓ９０６）。
２−７  内部テーブルＲｅ２のＶＰＮゲートウェイフィールドにＧ１を格納し、ＶＰＮクライアントフィールドにＬ１＿１を格納する（図６のステップｓ７０２）。
２−８  ＥＳＰパケットＥＰ１のソースアドレスをＧＲに変換し（変換後のＥＳＰパケットをＥＰ１’とする）、ＷＡＮインターフェースＲｆヘ処理を渡す。２−９  ＷＡＮインターフェースＲｆは、ＥＳＰパケットＥＰ１’をインターネットＩＮＥＴへ送出する。
【００６２】
〔３〕ＶＰＮゲートウェイＧＨ１
３−１  ＥＳＰパケットＥＰ１’をＶＰＮゲートウェイＧＨ１のＷＡＮインターフェースＧＨ１ａが受信し、ＶＰＮ処理部ＧＨ１ｂへ処理を渡す。
３−２  ＶＰＮ処理部ＧＨ１ｂは、ＥＳＰパケットＥＰ１’のＳＰＩ値ＡＡＡを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ１’を復号化してパケットＰ１を取り出し、ＬＡＮインターフェースＧＨ１ｃヘ処理を渡す。
３−３  ＬＡＮインターフェースＧＨ１ｃは、パケットＰ１をプライベートネットワークＸへ送出する。
【００６３】
〔４〕内線端末ＸＨ１
４−１  パケットＰ１を内線端末ＸＨ１のＬＡＮインターフェースＸＨ１ａが受信し、パケット処理部ＸＨ１ｂへ処理を渡す。
４−２  パケット処理部ＸＨ１ｂは、パケットＰ１の内容を読み取り、適切な処理を実行する。
【００６４】
次に、この時点でプライベートネットワークＬ上のＶＰＮクライアントＬＨ１＿２がインターネットＩＮＥＴ上のＶＰＮゲートウェイＧＨ１配下のプライベートネットワークＸ上の端末ＸＨ２に対して通信を行うものとする。
【００６５】
〔５〕ＶＰＮクライアントＬＨ１＿２
５−１  ＶＰＮクライアントＬＨ１＿２のパケット処理部が送信先Ｘ２のパケットＰ２を作成し、ＶＰＮ処理部へ渡す。
５−２  パケットＰ２のディスティネーションアドレスはＸ２であるとともに、プライベートネットワークＸ向けのパケットのため、パケットＰ２にＥＳＰ処理を施し、ＥＳＰパケットＥＰ２を生成する。そして、ＬＡＮインターフェースヘと処理を渡す。
５−３  ＶＰＮクライアントＬＨ１＿２のＬＡＮインターフェースは、ＥＳＰパケットＥＰ２をプライベートネットワークＬへ送出する。
【００６６】
〔６〕アドレス変換装置Ｒ
６−１  ＥＳＰパケットＥＰ２をアドレス変換装置ＲのＬＡＮインターフェースＲａが受信し、ＩＰルーティングＲｂヘ処理を渡す。
６−２  ＩＰルーティングＲｂはＥＳＰパケットＥＰ２のディステイネーションアドレスＧ１を読み出し、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１へ処理を渡す。
６−３  ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１は、ＥＳＰパケットＥＰ２のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ２のＩＰの上位プロトコルがＥＳＰかどうか判断する（図２のステップｓ５０１）。
６−４  ＥＳＰパケットＥＰ２はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１へ処理を渡す（図２のステップｓ５０２）。
【００６７】
６−５  ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ２のディステイネーションアドレスＧ１と同一のアドレスが格納されているかどうかを検索する（図７のステップｓ９０１）。
６−６  ６−５結果、同一のアドレスが格納されているので、受信パケットＥＰ２のディスティネーションアドレスＧ１と同一のアドレスを持つＶＰＮゲートウェイフィールドのレコードを抽出する（図７のステップｓ９０２）。
６−７  ６−６で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されていないかどうかを判別する（図７のステップｓ９０３）。
６−８  ６−７の結果、そのＳＰＩフィールドに値が格納されてないので、パケットの状態を「登録不可」と判断する（図７のステップｓ９０５）。
６−９  ＥＳＰパケットＥＰ２を廃棄する（図６のステップｓ７０５）。このとき、パケットＰ２はトランスポート層のプロトコルがＴＣＰであった場合、タイムアウトまで再送される。
【００６８】
次に、この時点でプライベートネットワークＬ上のＶＰＮゲートウェイＬＨ２がインターネットＩＮＥＴ上のＶＰＮゲートウェイＧＨ２配下のプライベートネットワークＹ上の端末Ｙ１に対して通信を行うものとする。
【００６９】
〔７〕ＶＰＮクライアントＬＨ２
７−１  ＶＰＮクライアントＬＨ２のパケット処理部が送信先Ｙ１のパケットＰ３を作成し、ＶＰＮ処理部へ渡す。
７−２  パケットＰ３のディスティネーションアドレスはＹ１であり、ネットワークＹ向けのパケットのため、パケットＰ３にＥＳＰ処理を施し、ＥＳＰパケットＥＰ３を生成する。そして、ＬＡＮインターフェースヘと処理を渡す。
７−３  ＶＰＮクライアントＬＨ２のＬＡＮインターフェースは、ＥＳＰパケットＥＰ３をプライベートネットワークＬへ送出する。
【００７０】
〔８〕アドレス変換装置Ｒ
８−１  ＥＳＰパケットＥＰ３をアドレス変換装置ＲのＬＡＮインターフェースＲａが受信し、ＩＰルーティングＲｂヘ処理を渡す。
８−２  ＩＰルーティングＲｂはＥＳＰパケットＥＰ３のディスティネーションアドレスＧ２を読み出し、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１へ処理を渡す。
８−３  ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１は、ＥＳＰパケットＥＰ３のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ３のＩＰの上位プロトコルがＥＳＰかどうか判断する（図２のステップｓ５０１）。
８−４  ＥＳＰパケットＥＰ３はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１へ処理を渡す（図２のステップｓ５０２）。
【００７１】
８−５  ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ３のディステイネーションアドレスＧ２と同一のアドレスが格納されているかどうかを検索する（図７のステップｓ９０１）。
８−６  ８−５の結果、同一のアドレスが格納されていないので、ＥＳＰパケットＥＰ３の状態を「新規」と判断する（図７のｓ９０６）。
８−７  内部テーブルＲｅ２のＶＰＮゲートウェイフィールドにＧ２、ＶＰＮクライアントフィールドにＬ２を格納する（図６のステップｓ７０２）。
８−８  ＥＳＰパケットＥＰ３のソースアドレスをＧＲに変換し（変換後のパケットをＥＰ３’とする）、ＷＡＮインターフェースＲｆヘ処理を渡す。
８−９  ＷＡＮインターフェースＲｆは、ＥＳＰパケットＥＰ３’をインターネットＩＮＥＴへ送出する。
【００７２】
〔９〕ＶＰＮゲートウェイＧＨ２
９−１  ＥＳＰパケットＥＰ３’をＶＰＮゲートウェイＧＨ２のＷＡＮインターフェースが受信し、ＶＰＮ処理部へ処理を渡す。
９−２  ＶＰＮ処理部は、ＥＳＰパケットＥＰ３’のＳＰＩ値ＥＥＥを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ３’を復号化してパケットＰ３を取り出し、ＬＡＮインターフェースヘ処理を渡す。
９−３  ＬＡＮインターフェースは、パケットＰ３をプライベートネットワークＹへ送出する。
【００７３】
〔１０〕内線端末ＹＨ１
１０−１  パケットＰ３を内線端末ＹＨ１のＬＡＮインターフェースが受信し、パケット処理部へ処理を渡す。
１０−２  パケット処理部は、パケットＰ３の内容を読み取り、適切な処理を実行する。
【００７４】
次に、プライベートネットワークＸ上の内線端末ＸＨ１が４−２で示したパケットＰ１に対するレスポンスパケットを送信するものとする。
【００７５】
〔１１〕内線端末ＸＨ１
１１−１  内線端末ＸＨ１のパケット処理部ＸＨ１ｂが送信先Ｌ１＿１のパケットＰ４を作成し、ＬＡＮインターフェースＸＨ１ａヘ処理を渡す。
１１−２  内線端末ＸＨ１のＬＡＮインターフェースＸＨ１ａは、パケットＰ４をプライベートネットワークＸへ送出する。
【００７６】
〔１２〕ＶＰＮゲートウェイＧＨ１
１２−１  パケットＰ４をＶＰＮゲートウェイＧＨ１のＬＡＮインターフェースＧＨ１ｃが受信し、ＶＰＮ処理部ＧＨ１ｂへ処理を渡す。
１２−２  パケットＰ４のディスティネーションアドレスはＬＨ１１であり、宛先アドレスＬＨ１１向けのパケットのため、パケットＰ４にＥＳＰ処理を施し、ＥＳＰパケットＥＰ４を生成する。そしてＷＡＮインターフェースＧＨ１ａヘ処理を渡す。
１２−３  ＶＰＮゲートウェイＧＨ１のＷＡＮインターフェースＧＨ１ａは、ＥＳＰパケットＥＰ４をインターネットＩＮＥＴへ送出する。
【００７７】
〔１３〕アドレス変換装置Ｒ
１３−１  ＥＳＰパケットＥＰ４をアドレス変換装置ＲのＷＡＮインターフェースＲｆが受信し、ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２へ処理を渡す。
１３−２  ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２は、ＥＳＰパケットＥＰ４のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ４のＩＰの上位プロトコルがＥＳＰかどうか判断する（図３のステップｓ６０１）。
１３−３  ＥＳＰパケットＥＰ４はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３へ処理を渡す（図３のステップｓ６０２）。
１３−４  ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ４のディステイネーションアドレスＧ１と同一のアドレスが少なくとも１つ格納されているかどうかを検索する（図９のステップｓ１００１）。
１３−５  １３−４の結果、同一のアドレスが格納されているので、ＶＰＮゲートウェイフィールドがＧ１のレコードを抽出する（図９のステップｓ１００２）。
【００７８】
１３−６  １３−５で抽出したレコードにおいて、ＳＰＩフィールドに値が格納されてないものが１つあるかどうか検索する（図９のステップｓ１００３）
１３−７  １３−６の結果、１３−５で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されていないものがあったので、ＥＳＰパケットＥＰ４のパケットの状態を「レスポンス」と決定する（図９のステップｓ１００４）。
１３−８  １３−７の結果、ＥＳＰパケットＥＰ４の状態はレスポンスであったので、ＥＳＰパケットＥＰ４のＥＳＰヘッダに含まれるＳＰＩ値ＢＢＢを内部テーブルＲｅ２のＳＰＩフィールドに格納する（図８のステップｓ８０５）。
１３−９  ＥＳＰパケットＥＰ４のＳＰＩ値はＢＢＢであるので、ＥＳＰパケットＥＰ４のディスティネーションアドレスをＬＨ１１に変換し（アドレス変換されたパケットＥＰ４をＥＰ４’とする）、ＩＰルーティングＲｂヘ処理を渡す。
１３−１０  ＩＰルーティングＲｂは、ＥＳＰパケットＥＰ４’のディスティネーションアドレスを読み出し、ＬＡＮインターフェースＲａへ処理を渡す。
１３−１１  ＬＡＮインターフェースＲａはＥＳＰパケットＥＰ４’をプライベートネットワークＬへ送出する。
【００７９】
〔１４〕ＶＰＮクライアントＬＨ１＿１
１４−１  ＶＰＮクライアントＬＨ１＿１のＬＡＮインターフェースＬＨ１＿１ｃは、ＥＳＰパケットＥＰ４’を受信し、ＶＰＮ処理部ＬＨ１＿１ｂへ処理を渡す。
１４−２  ＶＰＮ処理部ＬＨ１＿１ｂは、ＥＳＰパケットＥＰ４’のＳＰＩ値ＢＢＢを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ４’を復号化してパケットＰ４を取り出し、パケット処理部ＬＨ１＿１ａへ処理を渡す。
１４−３  パケット処理部ＬＨ１＿１ａは、パケットＰ４の内容を読み取り、適切な処理を実行する。
【００８０】
次に、プライベートネットワークＹ上の内線端末ＹＨ１が１０−２で示した受信パケットＰ３に対するレスポンスパケットＰ５を送信するものとする。
【００８１】
〔１５〕内線端末ＹＨ１
１５−１  内線端末ＹＨ１のパケット処理部が送信先ＬＨ２のパケットＰ５を作成し、ＬＡＮインターフェースヘ処理を渡す。
１５−２  内線端末ＹＨ１のＬＡＮインターフェースは、パケットＰ５をプライベートネットワークＹへ送出する。
【００８２】
〔１６〕ＶＰＮゲートウェイＧＨ２
１６−１  パケットＰ５をＶＰＮゲートウェイＧＨ２のＬＡＮインターフェースが受信し、ＶＰＮ処理部へ処理を渡す。
１６−２  パケットＰ５のディスティネーションアドレスはＬ２であり、宛先アドレスＬ２向けのパケットのため、パケットＰ５にＥＳＰ処理を施し、ＥＳＰパケットＥＰ５を生成する。そしてＷＡＮインターフェースヘと処理を渡す。
１６−３  ＶＰＮクライアントＧＨ２のＷＡＮインターフェースは、ＥＳＰパケットＥＰ５をインターネットＩＮＥＴへ送出する。
【００８３】
〔１７〕アドレス変換装置Ｒ
１７−１  ＥＳＰパケットＥＰ５をアドレス変換装置ＲのＷＡＮインターフェースＲｆが受信し、ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２へ処理を渡す。
１７−２  ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２は、ＥＳＰパケットＥＰ５のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ５のＩＰの上位プロトコルがＥＳＰかどうか判断する（図３のステップｓ６０１）。
１７−３  ＥＳＰパケットＥＰ５はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３へ処理を渡す（図３のステップｓ６０２）。
１７−４  ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ５のディステイネーションアドレスＧ２と同一のアドレスが少なくとも１つ格納されているかどうかを検索する（図９のステップｓ１００１）。
１７−５  １７−４の結果、同一のアドレスが格納されているので、ＶＰＮゲートウェイフィールドがＧ２のレコードを抽出する（図９のステップｓ１００２）。
【００８４】
１７−６  １７−５で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されてないものが１つあるかどうか検索する（図９のステップｓ１００３）
１７−７  １７−６の結果、１７−５で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されていないものがあったので、ＥＳＰパケットＥＰ５のパケットの状態を「レスポンス」と決定する（図９のステップｓ１００４）。
１７−８  １７−７の結果、ＥＳＰパケットＥＰ５の状態はレスポンスであったので、ＥＳＰパケットＥＰ５のＥＳＰへッダに含まれるＳＰＩ値ＤＤＤを内部テーブルＲｅ２のＳＰＩフィールドへ格納する（図８のステップｓ８０５）
１７−９  ＥＳＰパケットＥＰ５のＳＰＩ値はＤＤＤであるので、ＥＳＰパケットＥＰ５のディスティネーションアドレスをＬ２に変換し（アドレス変換されたパケットＥＰ５をＥＰ５’とする）、ＩＰルーティングＲｂヘ処理を渡す。
１７−１０  パケットＥＰ５’のディステイネーションアドレスを読み出し、ＬＡＮインターフェースＲａへ処理を渡す。
１７−１１  ＬＡＮインターフェースＲａはＥＳＰパケットＥＰ５’をプライベートネットワークＬへ送出する。
【００８５】
〔１８〕ＶＰＮクライアントＬＨ２
１８−１  ＶＰＮクライアントＬＨ２のＬＡＮインターフェースは、ＥＳＰパケットＥＰ５’を受信し、ＶＰＮ処理部へと処理を渡す。
１８−２  ＶＰＮ処理部は、ＥＳＰパケットＥＰ５’のＳＰＩ値ＤＤＤを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ５’を復号化してパケットＰ５を取り出し、パケット処理部へ処理を渡す。
１８−３  パケット処理部は、パケットＰ５の内容を読み取り、適切な処理を実行する。
【００８６】
次に先ほど、アドレス変換装置Ｒによって、パケットが破棄されたプライベートネットワークＬ上のＶＰＮゲートウェイＬＨ１＿２からインターネットＩＮＥＴ上のＶＰＮゲートウェイＧＨ１配下のプライベートネットワークＸ上の端末ＸＨ２へのパケットがＴＣＰにより再送される、もしくは手動で再送を行ったものとする。
【００８７】
〔１９〕ＶＰＮクライアントＬＨ１＿２
１９−１  ＶＰＮクライアントＬＨ１＿２のパケット処理部が送信先Ｘ２のパケットＰ６を作成し、ＶＰＮ処理部へ渡す。
１９−２  パケットＰ６のディスティネーションアドレスはＸ２であり、プライベートネットワークＸ向けのパケットのため、パケットＰ６にＥＳＰ処理を施し、ＥＳＰパケットＥＰ６を生成する。そしてＬＡＮインターフェースヘと処理を渡す。
１９−３  ＶＰＮクライアントＬＨ１＿２のＬＡＮインターフェースは、ＥＳＰパケットＥＰ６をプライベートネットワークＬへ送出する。
【００８８】
〔２０〕アドレス変換装置Ｒ
２０−１  ＥＳＰパケットＥＰ６をアドレス変換装置ＲのＬＡＮインターフェースＲａが受信し、ＩＰルーティングＲｂヘ処理を渡す。
２０−２  ＩＰルーティングＲｂはパケットのディステイネーションアドレスＧ１を読み出し、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１へ処理を渡す。
２０−３  ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１は、ＥＳＰパケットＥＰ６のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ６のＩＰの上位プロトコルがＥＳＰかどうか判断する（図２のステップｓ５０１）。
２０−４  ＥＳＰパケットＥＰ６はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１へ処理を渡す（図２のステップｓ５０２）。
【００８９】
２０−５  ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ６のディステイネーションアドレスＧ１と同一のアドレスが格納されているか検索する（図７のステップｓ９０１）。
２０−６  ２０−５の結果、同一のアドレスが格納されていないので、ＥＳＰパケットＥＰ６の状態を「新規」と判断する（図７のステップｓ９０６）。
２０−７  内部テーブルＲｅ２のＶＰＮゲートウェイフィールドにＧ１、ＶＰＮクライアントフィールドにＬ１＿２を格納する（図６のステップｓ７０２）。
２０−８  ＥＳＰパケットＥＰ６のソースアドレスをＧＲに変換し（変換後のパケットをＥＰ６’とする）、ＷＡＮインターフェースＲｆヘ処理を渡す。
２０−９  ＷＡＮインターフェースＲｆは、ＥＳＰパケットＥＰ６’をインターネットＩＮＥＴへ送出する。
【００９０】
〔２１〕ＶＰＮゲートウェイＧＨ１
２１−１  ＥＳＰパケットＥＰ６’をＶＰＮゲートウェイＧＨ１のＷＡＮインターフェースＧＨ１ａが受信し、ＶＰＮ処理部ＧＨ１ｂへ処理を渡す。
２１−２  ＶＰＮ処理部ＧＨ１ｂは、ＥＳＰパケットＥＰ６’のＳＰＩ値ＣＣＣを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ６’を復号化してパケットＰ６を取り出し、ＬＡＮインターフェースＧＨ１ｃヘ処理を渡す。
２１−３  ＬＡＮインターフェースＧＨ１ｃは、パケットＰ６をプライベートネットワークＸに送出する。
【００９１】
〔２２〕内線端末ＸＨ２
２２−１  パケットＰ６を内線端末ＸＨ２のＬＡＮインターフェースが受信し、パケット処理部へ処理を渡す。
２２−２  パケット処理部は、パケットＰ６の内容を読み取り、適切な処理を実行する。
【００９２】
次に、プライベートネットワークＸ上の内線端末ＸＨ２が先ほど受信したパケットＰ６に対するレスポンスパケットＰ７を送信するものとする。
【００９３】
〔２３〕内線端末ＸＨ２
２３−１  内線端末ＸＨ２パケット処理部が送信先Ｌ１＿２向けのパケットＰ７を作成し、ＶＰＮ処理部へ渡す。
２３−２  内線端末ＸＨ２のＬＡＮインターフェースは、パケットＰ７をプライベートネットワークＸへ送出する。
【００９４】
〔２４〕ＶＰＮゲートウェイＧＨ１
２４−１  パケットＰ７をＶＰＮゲートウェイＧＨ１のＬＡＮインターフェースＧＨ１ｃが受信し、ＶＰＮ処理部ＧＨ１ｂへ処理を渡す。
２４−２  パケットＰ７のディステイネーションアドレスはＬ１＿２であるとともに、宛先アドレスＬ１＿２向けのパケットのため、パケットＰ７にＥＳＰ処理を施し、ＥＳＰパケットＥＰ７を生成する。そしてＷＡＮインターフェースＧＨ１ａヘ処理を渡す。
２４−３  ＶＰＮゲートウェイＧＨ１のＷＡＮインターフェースＧＨ１ａは、ＥＳＰパケットＥＰ７をインターネットＩＮＥＴへ送出する。
【００９５】
〔２５〕アドレス変換装置Ｒ
２５−１  ＥＳＰパケットＥＰ７をアドレス変換装置ＲのＷＡＮインターフェースＲｆが受信し、ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２へ処理を渡す。
２５−２  ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２は、ＥＳＰパケットＥＰ７のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ７のＩＰの上位プロトコルがＥＳＰかどうか判断する（図３のステップｓ６０１）。
２５−３  ＥＳＰパケットＥＰ７はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３へ処理を渡す（図３のステップｓ６０２）。
２５−４  ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ７のディステイネーションアドレスＧ１と同一のアドレスが少なくとも１つ格納されているか検索する（図９のステップｓ１００１）。
２５−５  ２５−４の結果、同一のアドレスが格納されているので、ＶＰＮゲートウェイフィールドがＧ１のレコードを抽出する（図９のステップｓ１００２）。
２５−６  ２５−５で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されてないものが１つあるかどうか検索する（図９のステップｓ１００３）
【００９６】
２５−７  ２５−６の結果、２５−５で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されていないものがあったので、ＥＳＰパケットＥＰ７のパケットの状態を「レスポンス」と決定する（図９のステップｓ１００４）。
２５−８  ２５−７の結果、ＥＳＰパケットＥＰ７の状態はレスポンスであったので、ＥＳＰパケットＥＰ７のＥＳＰヘッダに含まれるＳＰＩ値ＤＤＤを内部テーブルＲｅ２のＳＰＩフィールドに格納する（図８のステップｓ８０５）
２５−９  ＥＳＰパケットＥＰ７のＳＰＩ値はＤＤＤであるので、ＥＳＰパケットＥＰ７のディスティネーションアドレスをＬ１＿２に変換し（アドレス変換されたパケットＥＰ７をＥＰ７’とする）、ＩＰルーティングＲｂヘ処理を渡す。
２５−１０  ＥＳＰパケットＥＰ７’のディスティネーションアドレスを読み出し、ＬＡＮインターフェースＲａへ処理を渡す。
２５−１１  ＬＡＮインターフェースＲａはＥＳＰパケットＥＰ７’をプライベートネットワークＬへ送出する。
【００９７】
〔２６〕ＶＰＮクライアントＬＨ１＿２
２６−１  ＶＰＮクライアントＬＨ１＿２のＬＡＮインターフェースは、ＥＳＰパケットＥＰ７’を受信し、ＶＰＮ処理部へ処理を渡す。
２６−２  ＶＰＮ処理部は、ＥＳＰパケットＥＰ７’のＳＰＩ値ＤＤＤを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ７’を復号化してパケットＰ７を取り出し、パケット処理部へ処理を渡す。
２６−３  パケット処理部は、パケットＰ７の内容を読み取り、適切な処理を実行する。
【００９８】
次に、プライベートネットワークＬ上のＶＰＮゲートウェイＬＨ１＿１がインターネットＩＮＥＴ上のＶＰＮゲートウェイＧＨ１配下のプライベートネットワークＸ上の端末ＸＨ１に対して通信を行うものとする。
【００９９】
〔２７〕ＶＰＮクライアントＬＨ１＿１
２７−１  ＶＰＮクライアントＬＨ１＿１のパケット処理部ＬＨ１＿１ａが送信先Ｘ１のパケットＰ８を作成し、ＶＰＮ処理部ＬＨ１＿１ｂへ渡す。
２７−２  パケットＰ８のディスティネーションアドレスはＸ１であり、ネットワークＸ向けのパケットのため、パケットＰ８にＥＳＰ処理を施し、ＥＳＰパケットＥＰ８を生成する。そしてＬＡＮインターフェースＬＨ１＿１ｃヘと処理を渡す。
２７−３  ＶＰＮクライアントＬＨ１＿１のＬＡＮインターフェースＬＨ１＿１ｃは、ＥＳＰパケットＥＰ８をプライベートネットワークＬへ送出する。
【０１００】
〔２８〕アドレス変換装置Ｒ
２８−１  ＥＳＰパケットＥＰ８をアドレス変換装置ＲのＬＡＮインターフェースＲａが受信し、ＩＰルーティングＲｂヘ処理を渡す。
２８−２  ＩＰルーティングＲｂはＥＳＰパケットＥＰ８のディステイネーションアドレスＧ１を読み出し、ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１へ処理を渡す。
２８−３  ＥＳＰ監視部ＲｄのＬＡＮ側処理部Ｒｄ１は、ＥＳＰパケットＥＰ８のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ８のＩＰの上位プロトコルがＥＳＰかどうか判断する（図２のステップｓ５０１）。
２８−４  ＥＳＰパケットＥＰ８はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１へ処理を渡す（図２のステップｓ５０２）。
２８−５  ＥＳＰＮＡＴ処理部ＲｅのＬＡＮ側処理部Ｒｅ１は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ８のディスティネーションアドレスＧ１と同一のアドレスが格納されているか検索する（図７のｓ９０１）。
【０１０１】
２８−６  ２８−５の結果、同一のアドレスが格納されているので、ＶＰＮゲートウェイフィールドがＧ１のレコードを抽出する（図７のｓ９０２）。
２８−７  ２８−６で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されていないかどうかを検索する（図７のステップｓ９０３）
２８−８  ２８−７の結果、２８−６で抽出したレコードにおいて、そのＳＰＩフィールドに値ＢＢＢが格納されていたので、ＥＳＰパケットＥＰ８のパケットの状態を「登録完了」と決定する（図７のステップｓ９０４）
２８−９  ＥＳＰパケットＥＰ８のソースアドレスをＧＲに変換する（変換後のパケットをＥＰ８’とする）（図６のステップｓ７０６）。
２８−１０  ＷＡＮインターフェースＲｆヘ処理を渡す（図６のステップｓ７０７）。
２８−１１  ＷＡＮインターフェースＲｆは、ＥＳＰパケットＥＰ８’をインターネットＩＮＥＴに送出する。
【０１０２】
〔２９〕ＶＰＮゲートウェイＧＨ１
２９−１  ＥＳＰパケットＥＰ８’をＶＰＮゲートウェイＧＨ１のＷＡＮインターフェースＧＨ１ａが受信し、ＶＰＮ処理部ＧＨ１ｂへ処理を渡す。
２９−２  ＶＰＮ処理部ＧＨ１ｂは、ＥＳＰパケットＥＰ８’のＳＰＩ値ＡＡＡを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ８を復号化してパケットＰ８を取り出し、ＬＡＮインターフェースＧＨ１ｃヘ処理を渡す。
２９−３  ＬＡＮインターフェースＧＨ１ｃは、パケットＰ８をプライベートネットワークＸへ送出する。
【０１０３】
〔３０〕内線端末ＸＨ１
３０−１  パケットＰ８を内線端末ＸＨ１のＬＡＮインターフェースＸＨ１ａが受信し、パケット処理部ＸＨ１ｂへ処理を渡す。
３０−２  パケット処理部ＸＨ１ｂは、パケットＰ８の内容を読み取り、適切な処理を実行する。
【０１０４】
次に、プライベートネットワークＸ上の内線端末ＸＨ１が先ほど受信したパケットＰ８に対するレスポンスパケットＰ９を送信するものとする。
【０１０５】
〔３１〕内線端末ＸＨ１
３１−１  内線端末ＸＨ１のパケット処理部ＸＨ１ｂが送信先Ｌ１＿１のパケットＰ９を作成し、ＬＡＮインターフェースＸＨ１ａヘ渡す
３１−２  内線端末ＸＨ１のＬＡＮインターフェースＸＨ１ａは、パケットＰ９をプライベートネットワークＸへ送出する。
【０１０６】
〔３２〕ＶＰＮゲートウェイＧＨ１
３２−１  パケットＰ９をＶＰＮゲートウェイＧＨ１のＬＡＮインターフェースＧＨ１ｃが受信し、ＶＰＮ処理部ＧＨ１ｂへ処理を渡す。
３２−２  パケットＰ９のディスティネーションアドレスはＬ１＿２であり、宛先アドレスＬ１＿２のパケットのため、パケットＰ９にＥＳＰ処理を施し、ＥＳＰパケットＥＰ９を生成する。そしてＷＡＮインターフェースＧＨ１ａヘ処理を渡す。
３２−３  ＶＰＮゲートウェイＧＨ１のＷＡＮインターフェースＧＨ１ａは、ＥＳＰパケットＥＰ９をインターネットＩＮＥＴへ送出する。
【０１０７】
〔３３〕アドレス変換装置Ｒ
３３−１  ＥＳＰパケットＥＰ９をアドレス変換装置ＲのＷＡＮインターフェースＲｆが受信し、ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２へ処理を渡す。
３３−２  ＥＳＰ監視部ＲｄのＷＡＮ側処理部Ｒｄ２は、ＥＳＰパケットＥＰ９のＩＰヘッダのプロトコルフィールドを参照し、ＥＳＰパケットＥＰ９のＩＰの上位プロトコルがＥＳＰかどうかを判断する（図３のステップｓ６０１）。
３３−３  ＥＳＰパケットＥＰ９はＥＳＰであるため、ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３へ処理を渡す（図３のステップｓ６０２）。
３３−４  ＥＳＰＮＡＴ処理部ＲｅのＷＡＮ側処理部Ｒｅ３は、内部テーブルＲｅ２のＶＰＮゲートウェイフィールドを参照し、ＥＳＰパケットＥＰ９のディスティネーションアドレスＧ１と同一のアドレスが少なくとも１つ格納されているか検索する（図９のステップｓ１００１）。
３３−５  ３３−４の結果、同一のアドレスが格納されているので、ＶＰＮゲートウェイフィールドがＧ１のレコードを抽出する（図９のステップｓ１００２）。
３３−６  ３３−５で抽出したレコードにおいて、そのＳＰＩフィールドに値が格納されてないものがあるかどうか検索する（図９のステップｓ１００３）。
【０１０８】
３３−７  ３３−６の結果、ＳＰＩフィールドに値が格納されていないものがないので、３３−５で抽出したレコードにおけるＳＰＩフィールドにおいて、ＥＳＰパケットＥＰ９のＳＰＩ値ＢＢＢと同一のものが格納されているか検索する（図９のステップｓ１００５）
３３−８  ３３−７の結果、同一のＳＰＩ値が格納されていたので、ＥＳＰパケットＥＰ９の状態を「登録完了」と決定する（図９のステップｓ１００６）。
３３−９  ＥＳＰパケットＥＰ９のＳＰＩ値はＢＢＢであるので、ＥＳＰパケットＥＰ９のディスティネーションアドレスをＬ１１に変換し（アドレス変換されたパケットＥＰ９をＥＰ９’とする）、ＩＰルーティングＲｂヘ処理を渡す。
３３−１０  ＥＳＰパケットＥＰ９’のディスティネーションアドレスを読み出し、ＬＡＮインターフェースＲａへ処理を渡す。
３３−１１  ＬＡＮインターフェースＲａはＥＳＰパケットＥＰ９’をプライベートネットワークＬへ送出する。
【０１０９】
〔３４〕ＶＰＮクライアントＬＨ１＿１
３４−１  ＶＰＮクライアントＬＨ１＿１のＬＡＮインターフェースＬＨ１＿１ｃは、ＥＳＰパケットＥＰ９’を受信し、ＶＰＮ処理部ＬＨ１＿１ｂへと処理を渡す。
３４−２  ＶＰＮ処理部ＬＨ１＿１ｂは、ＥＳＰパケットＥＰ９’のＳＰＩ値ＢＢＢを読み出し、適切なＳＡを選択してＥＳＰパケットＥＰ９’を復号化してパケットＰ９を取り出し、パケット処理部ＬＨ１＿１ａへ処理を渡す。
３４−３  パケット処理部ＬＨ１＿１ａは、パケットＰ９の内容を読み取り、適切な処理を実行する。
以上のとおり図１１〜図１６に基づくアドレス変換手順により、ＶＰＮクライアント多重化システムを実現することができる。
【０１１０】
【発明の効果】
以上説明したように、本発明はＥＳＰパケット中のＳＰＩを利用することにより、ＶＰＮ内のプライベートアドレスとインターネット上のグローバルアドレスとのアドレス変換を実現し、ＶＰＮ内の複数の端末とインターネット上のＶＰＮゲートウェイとを接続することができる。したがって、１つのプライベートネットワーク上にある複数のＶＰＮクライアントから１つのアドレス変換装置経由でインターネットに接続し、同時に１つまたは複数のＶＰＮゲートウェイとの間でＶＰＮセッション（使用プロトコルはＥＳＰ）を構築可能となるため、本発明により次のような効果が得られる。
（１）複数の人がＰＣを利用するスペース（レンタルオフィス等）に設置してあるＰＣ、もしくは、持ち込んだＰＣから、それぞれの人が同時に会社等へのＶＰＮアクセスが可能になる。
（２）複数の人がＰＣを利用するスペースの管理コストが減る。
（３）本発明の機能を有する機器１台で複数のＶＰＮセッションを可能とするため、機器コストが減る。
（４）複数のＰＣから同時にＶＰＮセッションが可能なため、ＶＰＮでアクセスするユーザの利便性が向上する。
【図面の簡単な説明】
【図１】本実施の形態に係るシステムを示すネットワーク構成図である。
【図２】プロトコル監視部のＬＡＮ側処理部における処理を示すフローチャートである。
【図３】プロトコル監視部のＷＡＮ側処理部における処理を示すフローチャートである。
【図４】ＥＳＰＮＡＴ処理部の内部テーブルを示す模式図である。
【図５】ＳＡおよびＳＰＩを説明するための模式図である。
【図６】ＥＳＰＮＡＴ処理部のＬＡＮ側処理部における処理を示すフローチャートである。
【図７】図６のステップｓ７０１の詳細を示すフローチャートである。
【図８】ＥＳＰＮＡＴ処理部のＷＡＮ側処理部における処理を示すフローチャートである。
【図９】図８のステップｓ８０１の詳細を示すフローチャートである。
【図１０】実施例を示すネットワーク構成図である。
【図１１】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図１２】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図１３】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図１４】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図１５】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図１６】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図１７】プライベートネットワークからのインターネット接続を説明するためのネットワーク構成図である。
【図１８】ＮＡＴの処理（ＬＡＮ側）を示すフローチャートである。
【図１９】ＮＡＴの処理（ＷＡＮ側）を示すフローチャートである。
【図２０】ＩＰマスカレードの処理（ＬＡＮ側）を示すフローチャートである。
【図２１】ＩＰマスカレードの処理（ＷＡＮ側）を示すフローチャートである。
【図２２】ＥＳＰパケットのフォーマットを示す模式図である。
【図２３】ＶＰＮにＮＡＴを適用した場合を説明するためのネットワーク構成図である。
【図２４】複数のＮＡＴ機器を使用した状態を説明するためのネットワーク構成図である。
【符号の説明】
ＬＨ１＿１…ＶＰＮクライアント、ＬＨ１＿１ａ…パケット処理部、ＬＨ１＿１ｂ…ＶＰＮ処理部、ＬＨ１＿１ｃ…ＬＡＮインターフェース、ＬＨ１＿２，ＬＨ２…ＶＰＮクライアント、Ｌ…プライベートネットワーク、Ｒ…アドレス変換装置、Ｒａ…ＬＡＮインターフェース、Ｒｂ…ＩＰルーティング、Ｒｃ…ＮＡＴ処理部、Ｒｃ１…ＬＡＮ側処理部、Ｒｃ２…ＷＡＮ側処理部、Ｒｄ…ＥＳＰ監視部、Ｒｄ１…ＬＡＮ側処理部、Ｒｄ２…ＷＡＮ側処理部、Ｒｅ…ＥＳＰＮＡＴ処理部、Ｒｅ１…ＬＡＮ側処理部、Ｒｅ２…内部テーブル、Ｒｅ３…ＷＡＮ側処理部、Ｒｆ…ＷＡＮインターフェース、ＩＮＥＴ…インターネット、ＧＨ１…ＶＰＮゲートウェイ、ＧＨ１ａ…ＷＡＮインターフェース、ＧＨ１ｂ…ＶＰＮ処理部、ＧＨ１ｃ…ＬＡＮインターフェース、Ｘ…プライベートネットワーク、ＸＨ１…内線端末、ＸＨ１ａ…ＬＡＮインターフェース、ＸＨ１ｂ…パケット処理部、ＸＨ２…内線端末、ＧＨ２…ＶＰＮゲートウェイ、Ｙ…プライベートネットワーク、ＹＨ１，ＹＨ２…内線端末、Ｌ１＿１，Ｌ１＿２，Ｌ２，ＧＡ，Ｇ１，Ｇ２，Ｘ１，Ｘ２，Ｙ１，Ｙ２…ＩＰアドレス。
【図１】
0003597756.tif 000002
【図２】
0003597756.tif 000003
【図３】
0003597756.tif 000004
【図４】
0003597756.tif 000005
【図５】
0003597756.tif 000006
【図６】
0003597756.tif 000007
【図７】
0003597756.tif 000008
【図８】
0003597756.tif 000009
【図９】
0003597756.tif 000010
【図１０】
0003597756.tif 000011
【図１１】
0003597756.tif 000012
【図１２】
0003597756.tif 000013
【図１３】
0003597756.tif 000014
【図１４】
0003597756.tif 000015
【図１５】
0003597756.tif 000016
【図１６】
0003597756.tif 000017
【図１７】
0003597756.tif 000018
【図１８】
0003597756.tif 000019
【図１９】
0003597756.tif 000020
【図２０】
0003597756.tif 000021
【図２１】
0003597756.tif 000022
【図２２】
0003597756.tif 000023
【図２３】
0003597756.tif 000024
【図２４】
0003597756.tif 000025