(57)【要約】【課題】ＦＴＰやＨ．３２３といったＩＰアドレスやポート番号の情報をパケット内部に含むプロトコルの通信が可能となるＮＡＴ装置を提供する。【解決手段】プライベートアドレス空間に属する装置とグローバルアドレス空間に属する装置との間に位置するＮＡＴ装置であって、前記プライベートアドレス空間に属する装置と前記グローバルアドレス空間に属する装置との間でＴＣＰセッションを確立する際に、前記プライベートアドレス空間に属する装置のプライベートアドレスを、ＮＡＴ装置が保持するグローバルアドレスの中の任意のグローバルアドレスに対応づけるアドレス変換用のマッピングテーブルを作成する第１の手段と、前記ＴＣＰセッションが終了した時点から一定の時間が経過するまで、前記マッピングテーブルを保持する第２の手段と、前記一定の時間が経過した後、前記マッピングテーブルを消去する第３の手段とを備える。【選択図】　　　　図４
2004072480.tif 000002
【特許請求の範囲】
【請求項１】
プライベートアドレス空間に属する装置とグローバルアドレス空間に属する装置との間に位置するＮＡＴ装置であって、
前記プライベートアドレス空間に属する装置と前記グローバルアドレス空間に属する装置との間でＴＣＰセッションを確立する際に、前記プライベートアドレス空間に属する装置のプライベートアドレスを、ＮＡＴ装置が保持するグローバルアドレスの中の任意のグローバルアドレスに対応づけるアドレス変換用のマッピングテーブルを作成する第１の手段と、
前記ＴＣＰセッションが終了した時点から一定の時間が経過するまで、前記マッピングテーブルを保持する第２の手段と、
前記一定の時間が経過した後、前記マッピングテーブルを消去する第３の手段とを備えることを特徴とするＮＡＴ装置。
【請求項２】
プライベートアドレス空間に属する装置と、
グローバルアドレス空間に属する装置と、
前記プライベートアドレス空間に属する装置と前記グローバルアドレス空間に属する装置との間に位置するＮＡＴ装置とから構成される通信網におけるＴＣＰ通信方法であって、
前記プライベートアドレス空間に属する装置が、グローバルアドレス空間に属する任意の装置との間でＴＣＰセッションを確立する際に、通信に先立って、前記グローバルアドレス空間に属する他の任意の装置に対してＴＣＰパケットを送信し、
前記ＮＡＴ装置が、前記プライベートアドレス空間に属する装置のプライベートアドレスを、ＮＡＴ装置が保持するグローバルアドレスの中の任意のグローバルアドレスに対応づけるアドレス変換用のマッピングテーブルを作成し、当該マッピングテーブルを、前記ＴＣＰセッションが終了した時点から一定の時間が経過するまで保持しておき、
前記一定の時間内に、前記プライベートアドレス空間に属する装置が、前記マッピングテーブルを利用して、前記グローバルアドレス空間に属する任意の装置との間でＴＣＰセッションを確立することにより、前記グローバルアドレス空間に属する任意の装置が、前記保持されているマッピングテーブルを利用して、ＴＣＰパケットを前記プライベートアドレス空間の装置に到達させることを特徴とするＴＣＰ通信方法。
【請求項３】
前記一定の時間内に、前記プライベートアドレス空間に属する装置が、グローバルアドレス空間に属する任意の装置とＴＣＰセッションを確立する場合に、前記プライベートアドレス空間に属する装置が前記グローバルアドレス空間に属する他の任意の装置に対してＴＣＰパケットを送信した際に使用したソースアドレスとポート番号を利用してＴＣＰパケットを送信し、
前記ＮＡＴ装置が、当該ＴＣＰパケットに、前記プライベートアドレス空間に属する装置が前記グローバルアドレス空間に属する他の任意の装置に対してＴＣＰパケットを送信した際に使用したグローバルアドレスとポート番号を割り当てることを特徴とする請求項２に記載のＴＣＰ通信方法。
【請求項４】
前記一定の時間内に、前記プライベートアドレス空間に属する装置が、グローバルアドレス空間に属する任意の装置とＴＣＰセッションを確立する場合に、前記プライベートアドレス空間に属する装置が、前記グローバルアドレス空間の任意の装置に対してＳＹＮパケットを送信し、当該ＳＹＮパケットを送信した後に、セッション終了パケットを送信して、ＴＣＰパケットを受信するために待機状態に遷移することを特徴とする請求項３に記載のＴＣＰ通信方法。
【請求項５】
プライベートアドレス空間に属する装置とグローバルアドレス空間に属する装置との間に位置し、ＮＡＴ装置として機能するコンピュータに、ＴＣＰ通信制御手順を実行させる通信プログラムであって、
前記通信プログラムは、前記プライベートアドレス空間に属する装置と前記グローバルアドレス空間に属する装置との間でＴＣＰセッションを確立する際に、前記プライベートアドレス空間に属する装置のプライベートアドレスを、ＮＡＴ装置が保持するグローバルアドレスの中の任意のグローバルアドレスに対応づけるアドレス変換用のマッピングテーブルを作成させる第１の手順と、
前記ＴＣＰセッションが終了した時点から一定の時間が経過するまで、前記マッピングテーブルを保持させる第２の手順と、
前記一定の時間が経過した後、前記マッピングテーブルを消去させる第３の手順とを、コンピュータに実行させることを特徴とする通信プログラム。
【請求項６】
請求項５に記載された通信プログラムが記録された記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＮＡＴ（Ｎｅｔｗｏｒｋ　Ａｄｄｒｅｓｓ　Ｔｒａｎｓｌａｔｉｏｎ）装置、ＴＣＰ通信方法、通信プログラムおよび記録媒体に係わり、特に、ＮＡＴ装置に対して静的なマッピングテーブルを作成することなく、動的に作成されたマッピングテーブルを利用して、グローバルアドレス空間（ＷＡＮ）からプライベートアドレス空間（ＬＡＮ）へのＴＣＰの着信を許容するＮＡＴ装置およびＴＣＰ通信方法に関する。
【０００２】
【従来の技術】
プライベートアドレス空間に属する装置は、プライベートアドレスしか割り当てられていないために、インターネットなどのグローバルアドレス空間に属する装置にアクセスすることができない。
そこで、プライベートアドレス空間に属する装置が、グローバルアドレス空間に属する装置にアクセスできるようにするため、プライベートアドレス空間に属する装置とグローバルアドレス空間に属する装置との間にＮＡＴ装置を配置し、プライベートアドレス空間に属する装置のプライベートアドレスを、ＮＡＴ装置が持つグローバルアドレスの一つに相互に変換するようにしている。
例えば、ＮＡＴ装置は、プライベートアドレス空間に属する装置から発行されるＩＰパケットのヘッダ内のプライベートアドレスを、ＮＡＴ装置が保有するグローバルアドレスの中の任意の一つに変換して、インターネットに送出し、あるいは、インターネットから到着したＩＰパケットのヘッダ内のグローバルアドレスをプライベートアドレスに変換して、プライベートアドレス空間に送出する。この場合に、ＮＡＴ装置は、同時接続する接続数だけ、グローバルアドレスを保有している。
【０００３】
【発明が解決しようとする課題】
パケット内部のアドレス情報を利用するアプリケーションでは、ＮＡＴ装置で内部のアドレス情報が変換されないために通信ができないといった事象がある。
そこで、通信に先だってあらかじめパケットを送信することによりＮＡＴ装置にマッピングテーブルを作成し、プライベートアドレス空間に属する装置は、そのマッピングテーブルで割り当てられたグローバルアドレスをパケット内部に記述して送信することで、ＮＡＴ装置を通過する方法が考案されている。
しかし、この方法は、プライベートアドレス空間に属する装置が同一のソースポート番号を使って発信しても、異なる宛先に対して異なるＷＡＮ側のポート番号を割り当てるＮＡＴ装置では利用できないという問題点があった。
また、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ）のようなコネクション型プロトコルでは、コネクションヘの割り込みは考慮されていないことや、セッション終了後も端末で一定の時間が経過するまでポート番号を保持しつづけるために新たな通信が発生しても同一のポート番号を利用できないことから、適用領域がＵＤＰ（Ｕｓｅｒ　Ｄａｔａｇｒａｍ　Ｐｒｏｔｏｃｏｌ）の一部のＮＡＴ装置に限られていた。
【０００４】
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、ＦＴＰ（Ｆｉｌｅ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ）やＨ．３２３といったＩＰアドレスやポート番号の情報をパケット内部に含むプロトコルの通信が可能となるＮＡＴ装置およびＴＣＰ通信方法を提供することにある。
また、本発明の他の目的は、前述のＮＡＴ装置をコンピュータに実行させるための通信プログラムを提供することにある。
また、本発明の他の目的は、前述の通信プログラムが記録された記録媒体を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【０００５】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
本発明は、プライベートアドレス空間に属する装置とグローバルアドレス空間に属する装置との間に位置するＮＡＴ装置であって、ＴＣＰセッションが終了した後も一定の時間が経過するまでは、マッピングテーブルを保持し続け、マッピングテーブルが保持されている間はＴＣＰセッションを確立していたグローバルアドレス空間に属する装置（例えば、ＷＡＮ側サーバ、あるいは端末）に限り、当該マッピングテーブルを利用して、プライベートアドレス空間に属する装置（例えば、ＬＡＮ内の端末、あるいは、サーバ）にＴＣＰパケットを到達させることを特徴とする。
また、発明のＴＣＰ通信方法は、本発明のＮＡＴ装置を用いて、プライベートアドレス空間に属する装置（例えば、ＬＡＮ内の端末）が、グローバルアドレス空間に属する装置（例えば、ＷＡＮ側サーバ）とＴＣＰセッションを確立することで、ＮＡＴ装置のＷＡＮ側アドレスとポート番号を取得し、そのマッピングを利用して、グローバルアドレス空間に属する装置とのセッションを確立する際に自身で割り当てたソースアドレスとポート番号を後の通信で利用することを特徴とする。
また、本発明は、前述のＮＡＴ装置をコンピュータに実行させるための通信プログラムである。
また、本発明は、前述の通信プログラムが記録された記録媒体である。
【０００６】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
なお、実施の形態を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
図１は、本発明のＮＡＴ装置が適用される通信網の概略構成を示す模式図である。
同図において、１は、プライベートアドレス空間に属する装置であるＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）内の通信端末、２は、ＬＡＮとＷＡＮ（Ｗｉｄｅ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）の境界に位置するＮＡＴ装置、３は、グローバルアドレス空間に属する装置であるＷＡＮに属するアドレス通知サーバである。
図２は、本発明のＴＣＰ通信方法を説明するためのフローチャートであり、ＬＡＮ内の端末１が、ＮＡＴ装置２のＷＡＮ側アドレスとポート番号を取得し、以降の通信に利用する方法を示しており、また、この時の、シーケンスを図３に示す。
始めに、通信端末１は、アドレス通知サーバ３の間でＴＣＰセッションを確立する（図２のステップ１０１、図３の手順▲１▼）。
このとき、ＮＡＴ装置内には、通信端末１のプライベートアドレスを、ＮＡＴ装置２が保持するＷＡＮ側アドレス（グローバルアドレス）の中の任意のアドレスに対応づけるアドレス変換用のマッピングテーブルが作成される。
【０００７】
次に、通信端末１は、前述のセッションを利用して、アドレス通知サーバ３に対して、ＮＡＴ装置２のＷＡＮ側アドレスとポート番号を問い合わせ、アドレス通知サーバ３は、通信端末１に対して、ＮＡＴ装置２のＷＡＮ側アドレスとポート番号を返答する（図２のステップ１０２、図３の手順▲２▼）。
次に、一度ＴＣＰセッションを終了する（図２のステップ１０３、図３の手順▲３▼）。
この時、ＮＡＴ装置２は、すぐにマッピングテーブルを削除せず、後の通信に備えマッピングテーブルを一定の時間が経過するまでは保持しておく（図２のステップ１０４）。
次に、通信端末１が、アドレス通知サーバ３とＴＣＰセッションを確立した際に、端末自身が割り当てたものと同様のソースアドレスとポート番号を利用し、ＷＡＮ側の任意の装置とセッションを確立する（図２のステップ１０５、図３の手順▲４▼）。
この手順において、ＮＡＴ装置１で割り当てられるＷＡＮ側アドレスとポート番号は、ＷＡＮに属するアドレス通知サーバ３とのセッションにおいて割り当てられたものと同様のものである。
【０００８】
図４は、本実施の形態のＮＡＴ装置の概略構成を示す機能ブロック図である。
同図に示すように、本実施の形態のＮＡＴ装置２は、ＬＡＮ側パケット送受信部４と、マッピングテーブル保持用メモリ５と、タイマ６と、ＷＡＮ側パケット送受信部７とで構成される。
ＬＡＮ側パケット送受信部４で受信されたＳＹＮパケット（セッションを確率するためのパケット）のプライベートアドレスは、ＮＡＴ装置２によって適当なＷＡＮ側のアドレスとポート番号が割り当てられ、プライベートアドレスとＷＡＮ側アドレスとを対応づけるアドレス変換用のマッピングテーブルが、メモリ５に作成される。
このとき、マッピングテーブルでは、ＷＡＮ側から流入するパケットに対して発側情報まで考慮したマッピングテーブルが作成される。
セッション終了の際には、ＷＡＮ側パケット送受信部７で受信される、ＷＡＮ側からのＦＩＮなどのセッション終了パケットをトリガとしてタイマ６が動作し、一定の時間が経過するまではメモリ５の対応マッピングテーブルを保持しておき、一定の時間が経過した後に、メモリ５の対応マッピングテーブルを消去する。なお、ＦＩＮは、ＬＡＮ内の通信端末１から発信されてもよい。
【０００９】
図５は、本発明のＴＣＰ通信方法を用いて、異なるＮＡＴ装置配下の通信端末間でシグナリングによるファイル交換を行う場合のフローチャートを示し、また、このときのシーケンスを図６に示す。
なお、図６において、８，９は通信端末、１０，１１はＮＡＴ装置、１２は通信端末からの問い合わせに対して応答を返すアドレス通知サーバ、１３はファイル交換を行うにあたっての制御信号中継サーバである。
ここで、両通信端末は、ネットワークにログインしていることを、制御信号中継サーバ１３を介して通知されているものとする。
始めに、通信端末８は、アドレス通知サーバ１２とＴＣＰのセッションを確立し、ＮＡＴ装置１０のＷＡＮ側アドレス情報を取得する（図５のステップ２０１、図６の手順▲１▼）。
このとき、ＮＡＴ装置１０内には、通信端末８のプライベートアドレスを、ＮＡＴ装置１０が保持するＷＡＮ側アドレスの中の任意のアドレスに対応づけるアドレス変換用のマッピングテーブルが作成される。
【００１０】
次に、通信端末８は、取得したアドレス情報を持って、制御信号中継サーバ１３を経由して通信端末９に対してファイル交換を行う旨を通知する（図５のステップ２０２、図６の手順▲２▼）。
通信端末９は、アドレス通知サーバ１２とＴＣＰセッションを確立し、ＮＡＴ装置１１のＷＡＮ側アドレスを取得する（図５のステップ２０３、図６の手順▲３▼）。
このとき、ＮＡＴ装置１１内には、通信端末９のプライベートアドレスを、ＮＡＴ装置１１が保持するＷＡＮ側アドレスの中の任意のアドレスに対応づけるアドレス変換用のマッピングテーブルが作成される。
次に、通信端末９は、取得したアドレス情報をもって、制御信号中継サーバ１３を経由して通信端末８に対してファイル交換を行う旨を了解したことを通知する（図５のステップ２０４、図６の手順▲４▼）。
【００１１】
次に、通信端末９は、通信端末８から通知されたＮＡＴ装置１０のＷＡＮ側アドレスとポート番号を宛先として、アドレス通知サーバ１２にアクセスしたのと同様のソースアドレスとポート番号で、ＴＣＰセッションを確率するためのＳＹＮパケットを送信した後、セッション終了するためのＲＳＴパケットを送信する。その後に、通信端末９は、待機状態（Ｌｉｓｔｅｎｉｎｇ状態）に入る（図５のステップ２０５、図６の手順▲５▼）。
この時、ＮＡＴ装置１０では、マッピングテーブルのＷＡＮ側から流入するパケットに対する発側情報が、ＮＡＴ装置１１の情報に書き換えられる。
次に、通信端末８は、通信端末９から受け取ったＮＡＴ装置１１のＷＡＮ側アドレスとポート番号を宛先として、アドレス通知サーバ１２にアクセスした際のソースアドレスとポート番号でＴＣＰセッションを開始する（図５のステップ２０６、図６の手順▲６▼）。
以降、このセッションを用いてファイル交換を行う。
【００１２】
以上説明したように、本実施の形態のＴＣＰ通信方法によれば、ＮＡＴ装置のＷＡＮ側アドレスとポート番号情報を、通信に先立ち取得することができ、そのときのマッピングテーブルを後続の通信でも利用できるので、ＦＴＰやＨ．３２３といったＩＰアドレスやポート番号の情報をパケット内部に含むプロトコルの通信が可能になるほか、動的に作成されたＴＣＰマッピングテーブルをアプリケーションで利用できるので、従来の静的なマッピングテーブルを利用する方法に比ベセキュリティが高くなる。
なお、前述の説明において、ＮＡＴ装置はコンピュータに実行させることも可能であり、その場合に、ＮＡＴ装置におけるＴＣＰ通信制御方法は、コンピュータ内のハードディスクなどに格納される通信プログラムを、コンピュータが実行することにより行われる。この通信プログラムは、ＣＤ−ＲＯＭ、あるいは、ネットワークを介したダウンロードにより供給される。
以上、本発明者によってなされた発明を、前記実施の形態に基づき具体的に説明したが、本発明は、前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【００１３】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、ＦＴＰやＨ．３２３といったＩＰアドレスやポート番号の情報をパケット内部に含むプロトコルの通信が可能となる。
【図面の簡単な説明】
【図１】本発明のＮＡＴ装置が適用される通信網の概略構成を示す模式図である。
【図２】本発明の実施の形態のＴＣＰ通信方法を説明するためのフローチャートである。
【図３】図２に示すフローチャートのシーケンスを示す図である。
【図４】本発明の実施の形態のＮＡＴ装置の概略構成を示す機能ブロック図である。
【図５】本発明の実施の形態のＴＣＰ通信方法を用いて、異なるＮＡＴ装置配下の通信端末間でシグナリングによるファイル交換を行う場合のフローチャートである。
【図６】図５に示すフローチャートのシーケンスを示す図である。
【符号の説明】
１，８，９…通信端末、２，１０，１１…ＮＡＴ装置、３，１２…アドレス通知サーバ、４…ＬＡＮ側パケット送受信部、５…メモリ、６…タイマ、７…ＷＡＮ側パケット送受信部、１３…制御信号中継サーバ
【図１】
2004072480.tif 000003
【図２】
2004072480.tif 000004
【図３】
2004072480.tif 000005
【図４】
2004072480.tif 000006
【図５】
2004072480.tif 000007
【図６】
2004072480.tif 000008