(57)【要約】【課題】トンネル通信装置及び方法に関し、ＮＡＴルータ装置を経由するネットワーク環境において、ＬＡＮ環境側に設置したトンネル通信装置とインターネット環境内のトンネル装置とのトンネル通信を可能にする。【解決手段】トンネル通信により送信する元データのＩＰパケットをカプセル化する際に、トンネル通信毎に異なる代替ポート番号を埋め込んだカプセル化ＩＰパケットを出力するカプセル化処理部２５１と、受信したカプセル化ＩＰパケットのヘッダ内のＩＰアドレス（外側アドレス）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（内側アドレス）を比較し、不一致を検出したとき、内側アドレスを外側アドレスで書き換え、かつ、元データのＩＰパケットのポート番号を、代替ポート番号又は該代替ポート番号対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するデカプセル処理部２５２を備える。【選択図】図２
2010278638.tif 000002
【特許請求の範囲】
【請求項１】
トンネル通信により送信する元データのＩＰパケットをカプセル化する際に、トンネル通信毎に異なる代替ポート番号を埋め込んだカプセル化ＩＰパケットを出力するカプセル化処理部と、
受信した前記カプセル化ＩＰパケットのヘッダ内のＩＰアドレス（以下、外側アドレスという。）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（以下、内側アドレスという。）を比較し、両者のアドレスの不一致を検出したとき、前記内側アドレスを前記外側アドレスで書き換え、かつ、前記デカプセル化後の元データのＩＰパケットのポート番号を、差出アドレスが不一致のとき前記代替ポート番号に、宛先アドレスが不一致のとき前記代替ポート番号対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するデカプセル処理部と、
を備えたことを特徴とするトンネル通信装置。
【請求項２】
トンネル通信により送信する元データのＩＰパケットをカプセル化して、カプセル化ＩＰパケットを出力するカプセル化処理部と、
前記カプセル化されたＩＰパケットを入力してデカプセル化し、元データのＩＰパケットを出力するデカプセル化処理部と、
一台のトンネル通信装置内でトンネル通信毎に異なる代替ポート番号を、前記元データのＩＰパケットのヘッダに含まれる差出ＩＰアドレス、宛先ＩＰアドレス、差出ポート番号及び宛先ポート番号に対応付けて登録した代替ポート番号対応表と、を備え、
前記カプセル化処理部は、元データのＩＰパケットをカプセル化する際、前記代替ポート番号を、前記カプセル化ＩＰパケットに埋め込む代替ポート番号付加部を備え、
前記デカプセル化処理部は、前記カプセル化ＩＰパケットのヘッダ内のＩＰアドレス（以下、外側アドレスという。）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（以下、内側アドレスという。）を比較し、両者のアドレスが不一致の場合、アドレス変換が行われたことを検出するアドレス変換検出部と、
前記アドレス変換が行われたことを検出したとき、前記内側アドレスを前記外側アドレスで書き換え、かつ、差出ＩＰアドレスが不一致の場合、前記デカプセル化後の元データのＩＰパケットのポート番号を前記代替ポート番号に書き換え、宛先ＩＰアドレスが不一致の場合、前記デカプセル化後の元データのＩＰパケットのポート番号が、前記代替ポート番号であるか否かを検査し、前記代替ポート番号である場合、前記代替ポート番号対応表で該代替ポート番号に対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するパケット書換部と、
を備えたことを特徴とするトンネル通信装置。
【請求項３】
トンネル通信により送信する元データのＩＰパケットをカプセル化する際に、トンネル通信毎に異なる代替ポート番号を埋め込んだカプセル化ＩＰパケットを出力するカプセル化処理ステップと、
受信した前記カプセル化ＩＰパケットのヘッダ内のＩＰアドレス（以下、外側アドレスという。）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（以下、内側アドレスという。）を比較し、両者のアドレスの不一致を検出したとき、前記内側アドレスを前記外側アドレスで書き換え、かつ、前記デカプセル化後の元データのＩＰパケットのポート番号を、差出アドレスが不一致のとき前記代替ポート番号に、宛先アドレスが不一致のとき前記代替ポート番号対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するデカプセル処理ステップと、
を含むことを特徴とするトンネル通信方法。
【請求項４】
トンネル通信により送信する元データのＩＰパケットをカプセル化して、カプセル化ＩＰパケットを出力するカプセル化処理ステップと、
前記カプセル化されたＩＰパケットを入力してデカプセル化し、元データのＩＰパケットを出力するデカプセル化処理ステップと、
一台のトンネル通信装置内でトンネル通信毎に異なる代替ポート番号を、前記元データのＩＰパケットのヘッダに含まれる差出ＩＰアドレス、宛先ＩＰアドレス、差出ポート番号及び宛先ポート番号に対応付け、代替ポート番号対応表に登録するステップを含み、
前記カプセル化処理ステップは、元データのＩＰパケットをカプセル化する際、前記代替ポート番号を、前記カプセル化ＩＰパケットに埋め込む代替ポート番号付加ステップと、を含み、
前記デカプセル化処理ステップは、前記カプセル化ＩＰパケットのヘッダ内のＩＰアドレス（以下、外側アドレスという。）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（以下、内側アドレスという。）を比較し、両者のアドレスが不一致の場合、アドレス変換が行われたことを検出するアドレス変換検出ステップと、
前記アドレス変換が行われたことを検出したとき、前記内側アドレスを前記外側アドレスで書き換え、かつ、差出ＩＰアドレスが不一致の場合、前記デカプセル化後の元データのＩＰパケットのポート番号を前記代替ポート番号に書き換え、宛先ＩＰアドレスが不一致の場合、前記デカプセル化後の元データのＩＰパケットのポート番号が、前記代替ポート番号であるか否かを検査し、前記代替ポート番号である場合、前記代替ポート番号対応表で該代替ポート番号に対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するパケット書換ステップと、
を含むことを特徴とするトンネル通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トンネル通信装置及び方法に関する。
【背景技術】
【０００２】
一般にトンネル通信とは、或る階層のプロトコルで構成されたデータを、同位或いは上位の階層のプロトコルで構成されたデータに内包して通信する技術であり、インターネット環境において一般的に使用されている技術である。ＩＰ（Internet Protocol）ネットワークで使用されるトンネル通信方式の例として、セキュア通信を実現するＩＰｓｅｃ  ＥＳＰ（IP Security Encapsulating Security Payload）方式（文献ＲＦＣ４３０３参照）が挙げられる。
【０００３】
ＩＰｓｅｃ  ＥＳＰ方式は、ＩＰパケットのカプセル化を行うトンネルモードを備え、暗号化されたＩＰパケットによるトンネル通信を実現する。以下では、ＩＰｓｅｃ  ＥＳＰ方式をトンネル通信の例として説明する。トンネル通信で実施される処理として、ＩＰパケットのカプセル化及びデカプセル化がある。
【０００４】
ＩＰパケットのカプセル化は、トンネル通信により送信する元データのＩＰパケットを暗号化してカプセル化したパケットに、ＩＰヘッダ及びＥＳＰヘッダを付加したＩＰｓｅｃ  ＥＳＰパケットを生成する。また、デカプセル化はＩＰｓｅｃ  ＥＳＰパケットのＩＰヘッダ及びＥＳＰヘッダを除去した後、暗号化されたデータを復号して元データのＩＰパケットを得る。以降の説明では、カプセル化する前の元データのＩＰパケットのＩＰヘッダに設定されたＩＰアドレスを内側アドレス、カプセル化された後のＩＰｓｅｃ  ＥＳＰパケットのＩＰヘッダに設定されたＩＰアドレスを外側アドレスと称する。
【０００５】
トンネル通信は、インターネット環境でＶＰＮ（Virtual Private Network）を実現する目的等で使用されている。一般にＶＰＮでは、経路上の両端にＩＰｓｅｃルータ装置を設置し、ホスト装置の通信に対してトンネル通信の処理を実施する。このとき、両端のホスト装置のＩＰアドレスは、同一のプライベートアドレス空間（文献ＲＦＣ１９１８参照）に属するものを用い、インターネット環境のグローバルアドレス空間とは異なる空間で運用される。そのため、ＩＰｓｅｃルータ装置が、プライベートアドレス空間に属するＩＰアドレスを有するホスト装置の送信したＩＰパケットをカプセル化するとき、ＩＰｓｅｃルータ装置自体に設定された、グローバルアドレス空間に属するＩＰアドレスを外側アドレスに設定して送信する。
【０００６】
一方、通信経路上のブリッジ装置によってトンネル通信の処理を実施する方法もある。ここでは、このトンネル通信を実現する装置をインライン型トンネル装置と称する。インライン型トンネル装置は、ホスト装置のＩＰアドレスを使用してトンネル通信を実施するため、ＩＰアドレスの再設定を要することなく動作する。即ち、インライン型トンネル装置では、ホスト装置の送信したＩＰパケットをカプセル化するとき、外側アドレスに元データのＩＰパケットのＩＰアドレスを設定して送信する。これにより、インライン型トンネル装置は、送信側と受信側とで同一のアドレス空間で運用される。
【０００７】
ところで、今日ではインターネット環境の普及に伴い、グローバルアドレス空間のＩＰアドレスの枯渇が問題となっている。グローバルＩＰアドレス枯渇の対策の一つとして、ＮＡＴ（Network Address Translation）技術が使用されている。ＮＡＴ技術とは、ＮＡＴルータ装置によって、ＩＰパケットのＩＰヘッダに設定されたＩＰアドレスを、プライベートアドレスとグローバルアドレスとで適正に変換し、プライベートアドレス空間に属するＩＰアドレスのホスト装置と、グローバルアドレス空間に属するＩＰアドレスのホスト装置との通信を可能とする技術である。
【０００８】
ＬＡＮ（Local Area Network）環境内の多数のホスト装置に対してプライベートアドレス空間に属するＩＰアドレスを設定し、インターネット環境との境界部分にＮＡＴルータ装置を設置することにより、グローバルアドレス空間に属するＩＰアドレスの割り当てが少ない場合でも、多数のホスト装置がインターネット環境の装置と通信することが可能となる。
【０００９】
インライン型トンネル装置を、ＬＡＮ環境内のホスト装置とインターネット環境内のホスト装置との通信に適用する場合、ＮＡＴルータ装置のインターネット環境側にインライン型トンネル装置を設置すれば、支障なくトンネル通信を行うことができる。しかし、実際の運用環境では、ＮＡＴルータ装置のグローバルアドレス空間側に自由にインライン型トンネル装置を設置することができない場合がある。
【００１０】
例えば、インターネット環境へのアクセスライン提供者側でＮＡＴルータ装置を設置し、インターネットの利用者にプライベートアドレス空間のＩＰアドレスを割り当てるサービスを提供する運用環境が挙げられる。このような運用環境では、インターネット環境へのアクセスライン提供者側の管理上の制約により、アクセスライン提供者のＮＡＴルータ装置のプライベートアドレス空間側にインライン型トンネル装置を設置しなければならない。
【００１１】
ＮＡＴルータ装置を経由するネットワーク環境において、ＩＰｓｅｃ  ＥＳＰ方式を利用可能とする技術として、ＮＡＴ−Ｔｒａｖｅｒｓａｌ（文献ＲＦＣ３９４７参照）が規定されている。ＮＡＴ−Ｔｒａｖｅｒｓａｌでは、鍵交換のプロセスであるＩＫＥ（Internet Key Exchange）のネゴシエーション処理において、通信経路上にＮＡＴルータ装置が存在することを検出し、ＩＰｓｅｃ  ＥＳＰパケットをＵＤＰ（User Datagram Protocol）方式でカプセル化することによってＮＡＴルータを越える処理を行う。ＩＰｓｅｃルータ装置によるトンネル通信の場合、両端のネットワーク環境は同一のプライベートアドレス空間に属し、ＮＡＴルータ装置を経由する環境でも内側アドレスの変換を必要としない。
【００１２】
また、ネットワークアドレス変換機構を通した６−４トンネリングプロトコルをサポートする方法として、ＩＰｖ４パケットにカプセル化されたアウトバウンドＩＰｖ６パケットを受信し、アウトバウンドパケットのＩＰｖ４ヘッダのプライベートＩＰｖ４ソースアドレスを、パブリックＩＰｖ４ソースアドレスに変換し、変換したパケットをＩＰｖ４ネットワークで送信し、インバウンドパケットの反対のアドレス変換のため、プライベートＩＰｖ４アドレスと６−４ソースアドレスのインタフェースＩＤ値との関連を格納する方法が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特表２００６−５０６８３９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
インライン型トンネル装置を、ＮＡＴルータ装置が介在するＬＡＮ環境内に設置し、インターネット環境内のインライン型トンネル装置を対向装置としてトンネル通信を実施する場合、カプセル化ＩＰパケットの外側アドレスはＮＡＴルータ装置により変換され、内側アドレスと異なるアドレス空間のＩＰアドレスが設定される。
【００１５】
そのため、インライン型トンネル装置を、ＮＡＴルータ装置を経由するＬＡＮ環境（プライベートアドレス空間）側に設置してトンネル通信を行うことができなかった。本発明は、ＮＡＴルータ装置を経由するネットワーク環境において、ＮＡＴルータ装置のＬＡＮ環境側にインライン型トンネル装置を設置し、インターネット環境内のインライン型トンネル装置を対向装置としてトンネル通信を行うことを可能にする。
【課題を解決するための手段】
【００１６】
上記課題を解決するトンネル通信装置は、トンネル通信により送信する元データのＩＰパケットをカプセル化する際に、トンネル通信毎に異なる代替ポート番号を埋め込んだカプセル化ＩＰパケットを出力するカプセル化処理部と、受信した前記カプセル化ＩＰパケットのヘッダ内のＩＰアドレス（以下、外側アドレスという。）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（以下、内側アドレスという。）を比較し、両者のアドレスの不一致を検出したとき、前記内側アドレスを前記外側アドレスで書き換え、かつ、前記デカプセル化後の元データのＩＰパケットのポート番号を、差出アドレスが不一致のとき前記代替ポート番号に、宛先アドレスが不一致のとき前記代替ポート番号対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するデカプセル処理部と、を備えたものである。
【００１７】
また、上記課題を解決するトンネル通信方法は、トンネル通信により送信する元データのＩＰパケットをカプセル化する際に、トンネル通信毎に異なる代替ポート番号を埋め込んだカプセル化ＩＰパケットを出力するカプセル化処理ステップと、受信した前記カプセル化ＩＰパケットのヘッダ内のＩＰアドレス（以下、外側アドレスという。）と、デカプセル化後の元データのＩＰパケットのヘッダ内のＩＰアドレス（以下、内側アドレスという。）を比較し、両者のアドレスの不一致を検出したとき、前記内側アドレスを前記外側アドレスで書き換え、かつ、前記デカプセル化後の元データのＩＰパケットのポート番号を、差出アドレスが不一致のとき前記代替ポート番号に、宛先アドレスが不一致のとき前記代替ポート番号対応付けられた元データのＩＰパケットのポート番号に書き換えて出力するデカプセル処理ステップと、を含むものである。
【発明の効果】
【００１８】
通信経路上にＮＡＴルータ装置が設置されたネットワーク環境において、ＮＡＴルータ装置のＬＡＮ環境側にトンネル通信装置を設置した場合でも、該トンネル通信装置における代替ポート番号の通知機能及びＩＰアドレス及びポート番号を書き換えるパケット書き換え機能により、インターネット環境の対向装置との間でトンネル通信を行うことが可能となる。
【図面の簡単な説明】
【００１９】
【図１】インライン型トンネル装置を適用したネットワーク環境の構成例を示す図である。
【図２】インライン型トンネル装置の内部構成例を示す図である。
【図３】カプセル化処理フローを示す図である。
【図４】デカプセル化処理フローを示す図である。
【発明を実施するための形態】
【００２０】
図１に開示のトンネル通信装置（インライン型トンネル装置）を適用したネットワーク環境の構成例を示す。図１において、ＬＡＮ環境１１０には、インライン型トンネル装置１１２と、プライベートアドレス空間１００に属するＩＰアドレスを有するホスト装置１１１が設置される。また、インターネット環境１４０には、インライン型トンネル装置１４１と、グローバルアドレス空間１３０に属するＩＰアドレスを有するホスト装置１４２とが設置される。ＬＡＮ環境１１０とインターネット環境１４０とを繋ぐ通信経路上には、ＮＡＴルータ装置１２０及びインターネット１３１が介在する。
【００２１】
図２にインライン型トンネル装置の内部構成例を示す。図２において、インライン型トンネル装置２００は、ホスト装置側に接続されるＬＡＮ側のネットワークポート２１０及びインターネット側に接続されるＷＡＮ側のネットワークポート２２０を備える。また、トンネル通信を制御するトンネル制御部２５０、ＬＡＮ側のネットワークポート２１０に接続されたパケット受信処理部２１１及びパケット送信処理部２１２を備え、ＷＡＮ側のネットワークポート２２０に接続されたパケット送信処理部２２１及びパケット受信処理部２２２を備える。
【００２２】
トンネル制御部２５０内には、カプセル化処理部２５１、デカプセル化処理部２５２及び代替ポート番号対応表２５３を備える。カプセル化処理部２５１は、ネットワークポート２１０のパケット受信処理部２１１で受信処理したＩＰパケットを、ＵＤＰカプセル化されたトンネルモードのＩＰｓｅｃ  ＥＳＰ形式でカプセル化する処理を実施する。カプセル化されたＩＰパケットは、ネットワークポート２２０のパケット送信処理部２２１で送信処理される。
【００２３】
デカプセル化処理部２５２は、ネットワークポート２２０のパケット受信処理部２２２で受信処理したカプセル化ＩＰパケットをデカプセル化する処理を実施する。デカプセル化されたＩＰパケットは、ネットワークポート２１０のパケット送信処理部２１２で送信処理される。
【００２４】
次に、トンネル通信の処理フローについて説明する。プライベートアドレス空間１００のホスト装置１１１は、グローバルアドレス空間１３０のホスト装置１４２とトンネル通信を行う際、ホスト装置１１１のＩＰアドレスを差出アドレス、ホスト装置１４２のＩＰアドレスを宛先アドレスとしてＩＰパケットを作成し、ホスト装置１４２に到達する通信経路上に送信する。
【００２５】
ＬＡＮ環境１１０の通信経路上に設置されたインライン型トンネル装置１１２は、ネットワークポート２１０のパケット受信処理部２１１で当該ＩＰパケットを受信処理し、トンネル制御部２５０へ転送する。トンネル制御部２５０は、当該ＩＰパケットのＩＰヘッダに含まれる差出アドレス及び宛先ＩＰアドレス、トランスポートプロトコルの種類（ＴＣＰ或いはＵＤＰ）、トランスポートヘッダに含まれる差出ポート番号及び宛先ポート番号を検査し、トンネル通信の対象であるかを判断する。トンネル通信の対象であるか否かは、予め定められたポリシーに従ってこれらのヘッダ情報に基づいて判断する。
【００２６】
トンネル通信の対象である場合、カプセル化処理部２５１により当該ＩＰパケットのカプセル化処理を開始する。カプセル化方式は、ＵＤＰカプセル化したトンネルモードのＩＰｓｅｃ  ＥＳＰ形式とする。カプセル化処理の開始時、当該ＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレス及び宛先ＩＰアドレス、トランスポートプロトコルのヘッダに含まれる差出ポート番号及び宛先ポート番号が、代替ポート番号対応表２５３に登録されているかどうかを検査する。
【００２７】
代替ポート番号対応表２５３の例を表１に示す。
【表１】
2010278638.tif 000003
【００２８】
代替ポート番号対応表２５３は、トンネル通信の元データであるＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレス及び宛先ＩＰアドレス、並びにトランスポートヘッダに含まれる差出ポート番号及び宛先ポート番号の組み合わせに対して、ユニークな代表ポート番号を登録したものである。即ち、代表ポート番号が異なれば、差出ＩＰアドレス、宛先ＩＰアドレス、差出ポート番号及び宛先ポート番号の少なくとも１つが異なり、異なるトンネル通信の対象となる。
【００２９】
差出ＩＰアドレスは、ＮＡＴルータ装置１２０によってグローバルＩＰアドレスに置き換えられ、差出ＩＰアドレスが異なる複数のホスト装置１１１から送信された、異なるトンネル通信対象のＩＰパケットであっても、ＮＡＴルータ装置１２０を通した後は、差出ＩＰアドレスとして同一のグローバルＩＰアドレスが付与されて送信されるため、複数のトンネル通信を識別することができなくなる。そこで、それらを区別するために、トンネル通信毎にユニークな代表ポート番号を生成し、カプセル化したＩＰパケットに該代表ポート番号を埋め込んで送信する。代替ポート番号対応表２５３は、トランスポートプロトコル毎に備える。
【００３０】
代替ポート番号対応表２５３に、トンネル送信の元データのＩＰパケットの上記ヘッダ情報が登録されていない場合、インライン型トンネル装置１１０内において一意に定められる１６ビットの代替ポート番号を新規に生成取得し、代替ポート番号対応表２５３に登録する。既に登録されている場合は、上記ヘッダ情報に対応する代替ポート番号を取得する。
【００３１】
続いてカプセル化処理のＥＳＰヘッダ生成時に、代替ポート番号付加部２５４により、ＥＳＰヘッダ（文献ＲＦＣ４３０３参照）の中の３２ビットフィールドであるＳＰＩ（Security Parameters Index）値の設定欄の下位１６ビットに、取得した代替ポート番号を設定する。
【００３２】
このインライン型トンネル装置では、ＳＰＩ値の上位１６ビットを本来のＳＰＩ値として扱うこととする。また、カプセル化処理のＩＰヘッダ生成時に、外側アドレスは内側アドレスと同一のＩＰアドレスを、ＵＤＰヘッダのポート番号は、インライン型トンネル装置間で予め定めた番号を設定する。
【００３３】
ＷＡＮ側のネットワークポート２２０のパケット送信処理部２２１により、カプセル化処理部２５１でカプセル化処理が完了したＩＰパケットを送信処理し、ＮＡＴルータ装置１２０への通信経路上に送信する。ＮＡＴルータ装置１２０は、カプセル化されたＩＰパケットの差出外側アドレス及びＵＤＰヘッダの差出ポート番号の書き換え処理を実施し、ホスト装置１４２への通信経路上に送信する。
【００３４】
インターネット環境１４０の通信経路上に設置されたインライン型トンネル装置１４１は、ＷＡＮ側のネットワークポート２２０のパケット受信処理部２２１で当該ＩＰパケットを受信処理し、トンネル制御部２５０へ転送する。トンネル制御部２５０は、当該ＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレス及び宛先ＩＰアドレス、トランスポートプロトコルの種類（ＵＤＰ）、トランスポートヘッダに含まれる差出ポート番号及び宛先ポート番号を検査し、トンネル通信の対象であるか否かを判断する。トンネル通信の対象であるか否かの判断は、予め定められたポリシーに従ってこれらのヘッダ情報に基づいて判断する。
【００３５】
トンネル通信の対象であった場合、デカプセル化処理部２５２で当該ＩＰパケットのＥＳＰヘッダのＳＰＩ値に従い、デカプセル化処理を開始する。ＮＡＴ検出部２５５は、受信したカプセル化ＩＰパケット、及びデカプセル化したＩＰパケットの両者のＩＰヘッダに含まれる差出ＩＰアドレスを検査し、外側アドレスと内側アドレスとで異なっているかどうかを検査する。両者のＩＰアドレスが異なっていた場合、ＮＡＴルータ装置１２０によってアドレス変換が行われたと判断する。
【００３６】
アドレス変換が行われたと判断した場合、パケット書換部２５６は、デカプセル化された元データのＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレスを外側アドレスで書き換える。また、デカプセル化された元データのＩＰパケットのトランスポートヘッダに含まれる差出ポート番号を代替ポート番号（ＳＰＩ値の下位１６ビットの値）で書き換える。
【００３７】
チェックサム再計算部２５７は、デカプセル化されたＩＰパケットのＩＰヘッダに含まれるチェックサム値及びトランスポートヘッダに含まれるチェックサム値を再計算して書き換える。アドレス変換が行われなかったと判断した場合は、パケット書換部２５６及びチェックサム再計算部２５７による処理は実施しない。
【００３８】
デカプセル化処理部２５２でデカプセル化処理が完了したＩＰパケットを、ネットワークポート２１０のパケット送信処理部２１２により送信処理し、ホスト装置１４２への通信経路上に送信する。ホスト装置１４２は、当該ＩＰパケットの受信処理を実施する。
【００３９】
ホスト装置１４２は、ホスト装置１１１に応答しようとする際、受信したＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレスと宛先ＩＰアドレスとを入れ替え、かつ、トランスポートヘッダに含まれる差出ポート番号と宛先ポート番号とを入れ替えたＩＰパケットを作成し、ＮＡＴルータ装置１２０に到達する通信経路上に送信する。即ち、宛先ＩＰアドレスはＮＡＴルータ装置１２０によって書き換えられたＩＰアドレスの値、宛先ポート番号はインライン型トンネル装置１４１が書き換えた代替ポート番号の値となる。
【００４０】
インターネット環境１４０の通信経路上に設置されたインライン型トンネル装置１４１は、ネットワークポート２１０のパケット受信処理部２１１で当該ＩＰパケットを受信処理し、トンネル制御部２５０へ転送する。トンネル制御部２５０は、当該ＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレス及び宛先ＩＰアドレス、トランスポートプロトコルの種類（ＴＣＰ或いはＵＤＰ）、トランスポートヘッダに含まれる差出ポート番号及び宛先ポート番号を検査し、トンネル通信の対象であるかを判断する。
【００４１】
トンネル通信の対象であった場合、カプセル化処理は、インライン型トンネル装置１１２での処理と同様に、ＵＤＰカプセル化したトンネルモードのＩＰｓｅｃ  ＥＳＰ形式でカプセル化処理を実施する。カプセル化処理部２５１でカプセル化処理が完了したＩＰパケットを、ネットワークポート２２０のパケット送信処理部２２１により送信処理し、ＮＡＴルータ装置１２０への通信経路上に送信する。
【００４２】
ＮＡＴルータ装置１２０は、カプセル化されたＩＰパケットの宛先外側アドレス及びＵＤＰヘッダの宛先ポート番号の書き換えを実施し、ホスト装置１１１への通信経路上に送信する。ＬＡＮ環境１１０の通信経路上に設置されたインライン型トンネル装置１１２は、ネットワークポート２２０のパケット受信処理部２２１でＩＰパケットを受信処理し、トンネル制御部２５０へ転送する。
【００４３】
トンネル制御部２５０は、当該ＩＰパケットのＩＰヘッダに含まれる差出ＩＰアドレス及び宛先ＩＰアドレス、トランスポートプロトコルの種類（ＵＤＰ）、並びにトランスポートヘッダに含まれる差出ポート番号及び宛先ポート番号を検査し、トンネル通信の対象であるか否かを判断する。
【００４４】
トンネル通信の対象であった場合、デカプセル化処理部２５２で当該ＩＰパケットのＥＳＰヘッダのＳＰＩ値に従い、デカプセル化処理を開始する。ＮＡＴ検出部２５５は、当該カプセル化ＩＰパケットとデカプセル化後のＩＰパケットとの各ＩＰヘッダに含まれる宛先ＩＰアドレスを検査し、外側アドレスと内側アドレスとで異なっているかどうかを検査する。両者のＩＰアドレスが異なっている場合、ＮＡＴルータ装置１２０によってアドレス変換が行われたと判断する。
【００４５】
アドレス変換が行われたと判断した場合、パケット書換部２５６は、デカプセル化されたＩＰパケットのＩＰヘッダに含まれる宛先ＩＰアドレス（グローバルアドレス）を、外側アドレス（アドレス変換後のプライベートアドレス）で書き換える。また、デカプセル化されたＩＰパケットのトランスポートヘッダに含まれる宛先ポート番号が代替ポート番号対応表２５３に登録されているか検査し、登録されている場合は、該代替ポート番号に対応する差出ポート番号の値を取得し、該差出ポート番号で宛先ポート番号を書き換える。
【００４６】
チェックサム再計算部２５７は、デカプセル化されたＩＰパケットのＩＰヘッダに含まれるチェックサム値及びトランスポートヘッダに含まれるチェックサム値を再計算して書き換える。アドレス変換が行われなかったと判断した場合は、パケット書換部２５６及びチェックサム再計算部２５７による処理は実施しない。
【００４７】
デカプセル化処理部２５１でデカプセル化処理が完了したＩＰパケットを、ネットワークポート２１０のパケット送信処理部２１２により送信処理し、ホスト装置１１１への通信経路上に送信する。ホスト装置１１１は、当該ＩＰパケットの受信処理を実施する。
【００４８】
上述のトンネル通信の処理フローにおけるインライン型トンネル装置２００のカプセル化処理フローを図３に、デカプセル化処理フローを図４に示す。カプセル化処理フローは図３に示すように、まず、ネットワークポート２１０より元データのＩＰパケットを受信する（３−１）。次に該ＩＰパケットのヘッダ情報を検査する（３−２）。該ヘッダ情報を基にトンネル通信の対象かどうか判定する（３−３）。
【００４９】
トンネル通信の対象である場合、該ＩＰパケットのヘッダ情報が代替ポート番号対応表に登録されているかどうかを検査する（３−４）。代替ポート番号対応表に登録されていない場合、新規の代替ポート番号を取得して代替ポート番号対応表に登録する（３−５）。次に、該ＩＰパケットのカプセル化処理を実施し、その際に、ＥＳＰヘッダのＳＰＩ値の設定欄の下位１６ビットに、取得した代替ポート番号を設定する（３−６）。そして、ネットワークポート２２０より該カプセル化ＩＰパケットを送信する（３−７）。
【００５０】
デカプセル化処理は図４に示すように、ネットワークポート２２０よりカプセル化されたＩＰパケットを受信すると（４−１）、該ＩＰパケットのヘッダ情報を検査し（４−２）、トンネル通信の対象か否かを判定する（４−３）。トンネル通信の対象である場合、ＩＰパケットのデカプセル化処理を実施する（４−４）。
【００５１】
デカプセル化後に、該ＩＰパケットの差出ＩＰアドレスが外側アドレスと内側アドレスとで異なるか否かを判定する（４−５）。外側アドレスと内側アドレスとで異なる場合、ＬＡＮ環境からインターネット環境への転送の際にＮＡＴルータ装置によりアドレス変換が行われたと判断し、ＩＰパケットのヘッダ情報を書換える処理を行う（４−６）。
【００５２】
また、宛先ＩＰアドレスが外側アドレスと内側アドレスとで異なるか否かを判定する（４−７）。宛先ＩＰアドレスが外側アドレスと内側アドレスとで異なる場合、インターネット環境からＬＡＮ環境への転送の際にＮＡＴルータ装置によりアドレス変換が行われたと判断し、代替ポート番号対応表に当該ＩＰパケットのヘッダ情報が登録されているか否かを検査する（４−８）。
【００５３】
代替ポート番号対応表に登録されている場合、当該デカプセル化後のＩＰパケットのヘッダ情報の宛先ポート番号を、代表ポート番号から、該代表ポート番号に対応付けられた差出ポート番号に書換え（４−９）、ネットワークポート２１０よりＩＰパケットを送信する（４−１０）。
【００５４】
このように、インライン型トンネル装置において、一方のネットワークポートから元データＩＰパケットを受信してカプセル化する際、カプセル化ＩＰパケットに代替ポート番号を埋め込み、他方のネットワークポートへ送信する。代替ポート番号は、アドレス変換後のポート番号の衝突を防ぐために、一台のインライン型トンネル装置内でトランスポートプロトコルのセッション毎に一意の値となるように生成した番号である。
【００５５】
また、対向のインライン型トンネル装置において、一方のネットワークポートからカプセル化ＩＰパケットを受信してデカプセル化する際、外側アドレスと内側アドレスとを比較し、不一致の場合、通信経路上のＮＡＴルータ装置によって外側アドレスが変換されたものと判定する。アドレスが変換されたと判定した場合、デカプセル化されたＩＰパケットに含まれる内側アドレスを外側アドレスのＩＰアドレスに書き替え、トランスポートヘッダのポート番号を代替ポート番号に書き換え、或いはその逆に代替ポート番号を元データのＩＰパケットのポート番号に書き換え、他方のネットワークポートへ送信する。
【符号の説明】
【００５６】
１００  プライベートアドレス空間
１１０  ＬＡＮ環境
１１１  ホスト装置
１１２  インライン型トンネル装置
１２０  ＮＡＴルータ装置
１３０  グローバルアドレス空間
１３１  インターネット
１４０  インターネット環境
１４１  インライン型トンネル装置
１４２  ホスト装置
２００  インライン型トンネル装置
２１０  ネットワークポート
２１１  パケット受信処理部
２１２  パケット送信処理部
２２０  ネットワークポート
２２１  パケット送信処理部
２２２  パケット受信処理部
２５０  トンネル制御部
２５１  カプセル化処理部
２５２  デカプセル化処理部
２５３  代替ポート番号対応表
２５４  代替ポート番号付加部
２５５  ＮＡＴ検出部
２５６  パケット書換部
２５７  チェックサム再計算部
【図１】
2010278638.tif 000004
【図２】
2010278638.tif 000005
【図３】
2010278638.tif 000006
【図４】
2010278638.tif 000007