(57)【要約】【課題】Ｐ２Ｐアプリケーションソフトウェアが、ＵＰｎＰ  ＩＧＤのポートマッピング機能を使用する場合、接続相手を特定しないため、セキュリティ上の問題や、一のＰ２Ｐアプリケーションソフトウェアしか一のポートを使用することができないという問題がある。【解決手段】ポートマッピング制御部２０４は、予約として、他のポートマッピングと重複する宛先ポートと、通信プロトコルとを含むポートマッピングを受け付ける。そして、ＬＡＮに接続されたコンピュータからパケットを受信することが通知されると、予約として受け付けたポートマッピングを、正規のポートマッピングとして、ポートマッピングテーブルに追加する。【選択図】図２
2007110266.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信ネットワークと第２の通信ネットワークとを接続するルータにおいて、
一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、前記パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成するポートマッピング制御手段と、
前記ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルータ手段とを備え、
ポートマッピング制御手段は、前記第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、前記ポートマッピングテーブルのポートマッピングの削除、または前記ポートマッピングテーブルへのポートマッピングの追加を行う
ことを特徴とするルータ。
【請求項２】
ポートマッピング制御手段は、第２の通信ネットワーク側からパケットを受信する前に、第１の通信ネットワーク側に接続されたコンピュータから、予約としてポートマッピングを受け付け、予約として受け付けた前記ポートマッピングを含むポートマッピングテーブルを生成する
請求項１記載のルータ。
【請求項３】
ポートマッピング制御手段は、予約として、他のポートマッピングと重複する宛先ポートと、通信プロトコルとを含むポートマッピングを受け付ける
請求項２記載のルータ。
【請求項４】
ポートマッピング制御手段が、予約として受け付けたポートマッピングに対応するパケットを受信した場合に、前記ポートマッピングにもとづいて、前記パケットの宛先ポートに対応づけられている送信先のコンピュータに、パケットを受信したことを示す受信通知を送信する通知手段を備えた
請求項２または請求項３記載のルータ。
【請求項５】
ポートマッピング制御手段は、受信通知の送信先からパケットを受信することが通知された場合に、予約として受け付けたポートマッピングを、正規のポートマッピングとして、ポートマッピングテーブルに追加する
請求項４記載のルータ。
【請求項６】
通知手段は、ポートマッピング制御手段が、予約として受け付けたポートマッピングを正規のポートマッピングとしてポートマッピングテーブルに追加した場合に、パケットの送信元に、通信経路を確保したことを示すメッセージを送信する
請求項５記載のルータ。
【請求項７】
第１の通信ネットワークと第２の通信ネットワークとの間でパケットを転送するパケットフォワード方法において、
ポートマッピング制御手段が、一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、前記パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成するポートマッピング制御ステップと、
ルータ手段が、前記ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルーティングステップとを備え、
ポートマッピング制御ステップで、ポートマッピング制御手段が、前記第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、前記ポートマッピングテーブルのポートマッピングの削除、または前記ポートマッピングテーブルへのポートマッピングの追加を行う
ことを特徴とするパケットフォワード方法。
【請求項８】
ポートマッピング制御手段が、ポートマッピング制御ステップで、第２の通信ネットワーク側からパケットを受信する前に、第１の通信ネットワーク側に接続されたコンピュータから、予約としてポートマッピングを受け付け、予約として受け付けた前記ポートマッピングを含むポートマッピングテーブルを生成する
請求項７記載のパケットフォワード方法。
【請求項９】
ポートマッピング制御手段が、ポートマッピング制御ステップで、予約として、他のポートマッピングと重複する宛先ポートと、通信プロトコルとを含むポートマッピングを受け付ける
請求項８記載のパケットフォワード方法。
【請求項１０】
ポートマッピング制御手段が、ポートマッピング制御ステップで、予約として受け付けたポートマッピングに対応するパケットを受信した場合に、通知手段が、前記ポートマッピングにもとづいて、前記パケットの宛先ポートに対応づけられている送信先のコンピュータに、パケットを受信したことを示す受信通知を送信する受信通知送信ステップを備えた
請求項８または請求項９記載のパケットフォワード方法。
【請求項１１】
ポートマッピング制御手段が、ポートマッピング制御ステップで、受信通知の送信先からパケットを受信することが通知された場合に、予約として受け付けたポートマッピングを、正規のポートマッピングとして、ポートマッピングテーブルに追加する
請求項１０記載のパケットフォワード方法。
【請求項１２】
ポートマッピング制御手段が、予約として受け付けたポートマッピングを正規のポートマッピングとしてポートマッピングテーブルに追加した場合に、通知手段が、パケットの送信元に、通信経路を確保したことを示すメッセージを送信するポートマッピング通知ステップを備えた
請求項１１記載のパケットフォワード方法。
【請求項１３】
第１の通信ネットワークと第２の通信ネットワークとを接続するルータとして機能するコンピュータに搭載されるパケットフォワードプログラムにおいて、
コンピュータに、
一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、前記パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成し、前記第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、生成した前記ポートマッピングテーブルのポートマッピングの削除、または前記ポートマッピングテーブルへのポートマッピングの追加を行うポートマッピング制御処理と、
前記ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルーティング処理とを実行させる
ためのパケットフォワードプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）を利用するルータ、パケットフォワード方法、およびパケットフォワードプログラムに関する。
【背景技術】
【０００２】
昨今、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）電話や、インスタントメッセンジャーなどの、Ｐ２Ｐ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）機能を用いた通信が広まるとともに、ブロードバンドルータにおいて、ＵＰｎＰ技術を利用したＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）越えが行われている。
【０００３】
ここで、ＮＡＴ越えとは、インターネットに接続されたコンピュータから、ＮＡＴの配下のコンピュータや、通信ネットワークに直接接続することをいう。
【０００４】
ＮＡＴ越えは、コンピュータに搭載されているアプリケーションソフトウェアが、動的にポートとプロトコルと接続相手とを指定（ポートマッピング）し、パケットのフォワーディング（送り先）を決めるもので、ユーザの手を煩わすことなくＰ２Ｐ機能を利用できるようにすることを目的としている。
【０００５】
なお、特許文献１には、インターネットとＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）とを接続し、インターネットに接続されたコンピュータとＬＡＮに接続されたコンピュータとを接続するために開いたポートを、所定のタイミングで閉じる中継装置について記載されている。
【０００６】
また、特許文献２には、ＬＡＮとインターネットとに接続されたルータが、インターネットに接続された通信機器に対応してポート番号を割り当てる方法について記載されている。
【０００７】
【特許文献１】特開２００４−３２８０２７号公報  （段落００２２〜００６２、図１）
【特許文献２】特開２００５−１５１１４２号公報  （段落００４５〜０１５７、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１に記載されている中継装置は、中継装置がポートを閉じるまでの間はポートが開かれているため、不正に接続されるおそれがあり、セキュリティ上の問題がある。
【０００９】
また、特許文献２に記載されている方法は、ＬＡＮに接続されたコンピュータが実行する一のＰ２Ｐアプリケーションソフトウェアのみ一のポートを使用することができ、同一のポートを使って、複数のコンピュータがＰ２Ｐアプリケーションソフトウェアを同時に実行することができないという問題がある。
【００１０】
そこで、本発明は、ＵＰｎＰ  ＣＰ（Ｃｏｎｔｒｏｌ  Ｐｏｉｎｔ）機能を有する複数のアプリケーションソフトウェアが、同時にＩＧＤ（Ｉｎｔｅｒｎｅｔ  Ｇａｔｅｗａｙ  Ｄｅｖｉｃｅ）上で同一のポートを安全に利用することができるルータ、パケットフォワード方法、およびパケットフォワードプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明によるルータは、第１の通信ネットワークと第２の通信ネットワークとを接続するルータにであって、一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成するポートマッピング制御手段と、ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルータ手段とを備え、ポートマッピング制御手段は、第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、ポートマッピングテーブルのポートマッピングの削除、またはポートマッピングテーブルへのポートマッピングの追加を行うことを特徴とする。
【００１２】
ポートマッピング制御手段は、第２の通信ネットワーク側からパケットを受信する前に、第１の通信ネットワーク側に接続されたコンピュータから、予約としてポートマッピングを受け付け、予約として受け付けたポートマッピングを含むポートマッピングテーブルを生成してもよい。
【００１３】
ポートマッピング制御手段は、予約として、他のポートマッピングと重複する宛先ポートと、通信プロトコルとを含むポートマッピングを受け付けてもよい。
【００１４】
ポートマッピング制御手段が、予約として受け付けたポートマッピングに対応するパケットを受信した場合に、ポートマッピングにもとづいて、パケットの宛先ポートに対応づけられている送信先のコンピュータに、パケットを受信したことを示す受信通知を送信する通知手段を備えてもよい。
【００１５】
ポートマッピング制御手段は、受信通知の送信先からパケットを受信することが通知された場合に、予約として受け付けたポートマッピングを、正規のポートマッピングとして、ポートマッピングテーブルに追加してもよい。
【００１６】
通知手段は、ポートマッピング制御手段が、予約として受け付けたポートマッピングを正規のポートマッピングとしてポートマッピングテーブルに追加した場合に、パケットの送信元に、通信経路を確保したことを示すメッセージを送信してもよい。
【００１７】
本発明によるパケットフォワード方法は、第１の通信ネットワークと第２の通信ネットワークとの間でパケットを転送するパケットフォワード方法であって、ポートマッピング制御手段が、一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成するポートマッピング制御ステップと、ルータ手段が、ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルーティングステップとを備え、ポートマッピング制御ステップで、ポートマッピング制御手段が、第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、ポートマッピングテーブルのポートマッピングの削除、またはポートマッピングテーブルへのポートマッピングの追加を行うことを特徴とする。
【００１８】
ポートマッピング制御手段が、ポートマッピング制御ステップで、第２の通信ネットワーク側からパケットを受信する前に、第１の通信ネットワーク側に接続されたコンピュータから、予約としてポートマッピングを受け付け、予約として受け付けたポートマッピングを含むポートマッピングテーブルを生成してもよい。
【００１９】
ポートマッピング制御手段が、ポートマッピング制御ステップで、予約として、他のポートマッピングと重複する宛先ポートと、通信プロトコルとを含むポートマッピングを受け付けてもよい。
【００２０】
ポートマッピング制御手段が、ポートマッピング制御ステップで、予約として受け付けたポートマッピングに対応するパケットを受信した場合に、通知手段が、ポートマッピングにもとづいて、パケットの宛先ポートに対応づけられている送信先のコンピュータに、パケットを受信したことを示す受信通知を送信する受信通知送信ステップを備えてもよい。
【００２１】
ポートマッピング制御手段が、ポートマッピング制御ステップで、受信通知の送信先からパケットを受信することが通知された場合に、予約として受け付けたポートマッピングを、正規のポートマッピングとして、ポートマッピングテーブルに追加してもよい。
【００２２】
ポートマッピング制御手段が、予約として受け付けたポートマッピングを正規のポートマッピングとしてポートマッピングテーブルに追加した場合に、通知手段が、パケットの送信元に、通信経路を確保したことを示すメッセージを送信するポートマッピング通知ステップを備えてもよい。
【００２３】
本発明によるポートフォワードプログラムは、第１の通信ネットワークと第２の通信ネットワークとを接続するルータとして機能するコンピュータに搭載されるパケットフォワードプログラムであって、コンピュータに、一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成し、第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、生成したポートマッピングテーブルのポートマッピングの削除、またはポートマッピングテーブルへのポートマッピングの追加を行うポートマッピング制御処理と、ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルーティング処理とを実行させることを特徴とする。
【発明の効果】
【００２４】
本発明によれば、第１の通信ネットワーク側に接続されたコンピュータの要求に応じたポートマッピングで、受信したパケットをコンピュータに送信することができる。
【００２５】
また、ポートマッピング制御手段が、予約としてポートマッピングを受け付けるように構成されている場合には、第１の通信ネットワーク側に接続されたコンピュータは、ポートマッピングを予約することができる。
【００２６】
また、ポートマッピング制御手段が、他のポートマッピングと重複する宛先ポートと、通信プロトコルとを含むポートマッピングを受け付けるように構成されている場合には、同一のポートを用いたポートマッピングを行うことができる。
【００２７】
ポートマッピング制御手段が、予約として受け付けたポートマッピングに対応するパケットを受信すると、パケットを受信したことを示す受信通知をコンピュータに送信し、コンピュータからパケットを受信することが通知されると、予約として受け付けたポートマッピングを、正規のポートマッピングとして、ポートマッピングテーブルに追加するように構成されている場合には、第１の通信ネットワーク側に接続されたコンピュータに、接続の可否を問い合わせるため、安全性を高めることができる。
【発明を実施するための最良の形態】
【００２８】
本発明の実施の形態について、図面を参照して説明する。図１は、本発明によるポートフォワードシステムの実施の形態の一構成例を示すブロック図である。
【００２９】
この実施の形態のポートフォワードシステムは、ＵＰｎＰ  ＣＰ（Ｃｏｎｔｒｏｌ  Ｐｏｉｎｔ）としてのＰＣ（コンピュータ）１０１、１０２、１０３、ＵＰｎＰ  ＩＧＤとしてパケットを送受信（パケットフォワーディング）するブロードバンドルータ（ルータ）１０４、インターネット１０５、リモートホストとしてのＰＣ１０６、１０７、およびＳＩＰ（Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバ１０８を含む。
【００３０】
ＰＣ１０１、１０２、１０３、およびブロードバンドルータ１０４は、互いにＬＡＮ等の通信ネットワーク（第１の通信ネットワーク）で接続されている。ＰＣ１０６、１０７、ＳＩＰサーバ１０８、およびブロードバンドルータ１０４は、インターネット（第２の通信ネットワーク）１０５に接続されている。従って、ＰＣ１０１、１０２および１０３と、ＰＣ１０６、１０７およびＳＩＰサーバ１０８とは、ブロードバンドルータ１０４およびインターネット１０５を介して互いに接続されている。なお、この実施の形態では、第２の通信ネットワークとしてインターネット１０５を例示したが、本発明はこれに限定されるものではなく、ＷＡＮ等の通信ネットワークであってもよい。
【００３１】
なお、ＳＩＰサーバ１０８は、予め、ＰＣ１０６、１０７およびブロードバンドルータ１０４のＩＰアドレスと、ブロードバンドルータ１０４に接続されているＰＣ１０１、１０２、１０３のＥｘｔｅｒｎａｌＰｏｒｔとを記憶している。
【００３２】
図２は、ブロードバンドルータ１０４の一構成例を示すブロック図である。ブロードバンドルータ１０４は、ＬＡＮインタフェース２０２、ＵＰｎＰ  ＩＧＤ制御部２０３、ポートマッピング制御部（ポートマッピング制御手段）２０４、ルータ（ルータ手段）部２０５、およびＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インタフェース２０６を含む。
【００３３】
ＬＡＮインタフェース２０２は、ＬＡＮ回線を介してＰＣ１０１、１０２および１０３と接続して、各ＰＣとパケットを送受信する。
【００３４】
ＵＰｎＰ  ＩＧＤ制御部２０３は、ＵＰｎＰ  ＩＧＤ機能を有し、ＵＰｎＰ  Ｃｏｎｔｒｏｌ  ＰｏｉｎｔであるＰＣ１０１、１０２および１０３と送受信するメッセージの解析や発行を行い、ブロードバンドルータ１０４をＵＰｎＰ対応のブロードバンドルータとして動作させる。なお、ＩＧＤとは、ＵＰｎＰの標準仕様で定義され、ルータやホームゲートウェイ機器の総称をいう。
【００３５】
ポートマッピング制御部２０４は、ＵＰｎＰ  ＩＧＤ制御部２０３のメッセージ解析結果が、ＰＣ１０１、１０２または１０３によるポートマッピングの追加、削除または予約の要求であった場合、ポートマッピングテーブルを生成し、該当するポートのマッピングの追加、削除または予約をルータ部２０５に指示する。なお、ポートマッピングとは、一方の通信ネットワークからパケットを受信するポートと、そのパケットの送信先の他方の通信ネットワークに接続されたＰＣと、通信プロトコルとの対応づけをいう。
【００３６】
なお、ポートマッピングの追加とは、ポートマッピングにもとづいてパケットフォワーディングを開始することをいい、この実施の形態では、ポートマッピングテーブルにおいて、ＵＰｎＰで標準に定義されたパラメータであるＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅを、ポートマッピングテーブルで、Ｅｎａｂｌｅに設定することをいう。
【００３７】
ポートマッピングの削除とは、ポートマッピングにもとづくパケットフォワーディングを終了することをいい、この実施の形態では、ポートマッピングテーブルからポートマッピングを消去することをいう。
【００３８】
また、ポートマッピングの予約とは、パケットフォワーディングの開始前に、ポートマッピングを行うことをいい、この実施の形態では、ＵＰｎＰで標準に定義されたパラメータであるＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅを、ポートマッピングテーブルで、Ｄｉｓａｂｌｅに設定することをいう。
【００３９】
ルータ部２０５は、ルーティング機能と、ＮＡＰＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｐｏｒｔ  Ｔｒａｎｓｌａｔｉｏｎ）機能とを有し、ポートマッピングテーブルを参照して、ＬＡＮ−ＷＡＮ間のパケットフォワーディングを行う。
【００４０】
ＷＡＮインタフェース２０６は、インターネット１０５等のＷＡＮ回線と接続し、インターネット１０５に接続されているＰＣ１０６、１０７およびＳＩＰサーバ１０８とパケットを送受信する。
【００４１】
ルータ部２０５は、ＷＡＮインタフェース２０６がＬＡＮ方向へのパケットを受信した場合、ポートマッピングテーブルを参照して、追加されているポート宛のパケットであれば、そのままＬＡＮインタフェース２０２を介して該当ＰＣへ送信する。
【００４２】
もし、予約されているポート宛のパケットであれば、ルータ部２０５は、そのパケットの処理をＵＰｎＰ  ＩＧＤ制御部２０３に引き継がせる。そして、ＵＰｎＰ  ＩＧＤ制御部２０３は、予約されているポートのＰＣすべてに着信を通知する。着信を通知されたＰＣのうち、パケットを受信するＰＣは、ブロードバンドルータ１０４にポートマッピングの追加を指示して、そのパケットを受信するとともに、そのパケットの送信元のＰＣとの通信経路を確保する。
【００４３】
なお、通知手段は、ＬＡＮインタフェース２０２およびＷＡＮインタフェース２０６によって実現される。
【００４４】
ブロードバンドルータ１０４は、コンピュータに、一方の通信ネットワーク側から受信するパケットの宛先ポートと、他方の通信ネットワークに接続されたコンピュータであって、前記パケットの送信先であるコンピュータを示す情報と、通信プロトコルとを対応づけるポートマッピングを示すポートマッピングテーブルを生成し、第１の通信ネットワーク側に接続されたコンピュータの要求に応じて、生成した前記ポートマッピングテーブルのポートマッピングの削除、または前記ポートマッピングテーブルへのポートマッピングの追加を行うポートマッピング制御処理と、ポートマッピングテーブルにもとづいて、一方の通信ネットワーク側から受信したパケットを、他方の通信ネットワーク側に接続されたコンピュータに送信するルーティング処理とを実行させることを特徴とするパケットフォワードプログラムを搭載している。
【００４５】
次に、本発明の実施の形態の動作について説明する。まず、ＬＡＮに接続された各ＰＣがポートマッピングの予約をする際の動作について説明する。
【００４６】
まず、ＬＡＮに接続され、ＩＰアドレスが１９２．１６８．０．２であるＰＣ１０１が、ユーザの操作に従って、ポートマッピングの予約を要求するメッセージを、ブロードバンドルータ１０４に送信する場合について説明する。
【００４７】
図３は、各ＰＣが送信するメッセージを示す説明図である。図３（Ａ）には、ＰＣ１０１がブロードバンドルータ１０４に送信したメッセージが例示されている。
【００４８】
図３（Ａ）で例示したＰＣ１０１がブロードバンドルータ１０４に送信したメッセージには、ＵＰｎＰのＲｅｍｏｔｅＨｏｓｔのパラメータをＥｍｐｔｙ（ワイルドカード）に設定（接続相手を不特定に設定）すること、ＬＡＮの外部ポート（ＥｘｔｅｒｎａｌＰｏｒｔ）が１００であること、ＬＡＮの内部ポート（ＩｎｔｅｒｎａｌＰｏｒｔ）が１００であること、ＰＣ１０１のＩＰアドレス（ＩｎｔｅｒｎａｌＣｌｉａｎｔ）が１９２．１６８．０．２であること、プロトコルがＴＣＰであること、およびポートマッピングの予約（ＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄがＤｉｓａｂｌｅ）であることが示されている。
【００４９】
図４は、ポートマッピングテーブルの一例を示す説明図である。ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＬＡＮインタフェース２０２を介して、図３（Ａ）で例示したメッセージを受信すると、受信したメッセージにもとづいて、図４の１行目に示すように、ポートマッピングテーブルを更新する。
【００５０】
次に、ＩＰアドレスが１９２．１６８．０．３であるＰＣ１０２が、ポートマッピングの予約を要求するメッセージを、ブロードバンドルータ１０４に送信する場合について説明する。
【００５１】
図３（Ｂ）には、ＰＣ１０２がブロードバンドルータ１０４に送信したメッセージが例示されている。
【００５２】
図３（Ｂ）で例示したＰＣ１０２がブロードバンドルータ１０４に送信したメッセージには、ＵＰｎＰのＲｅｍｏｔｅＨｏｓｔのパラメータをＥｍｐｔｙ（ワイルドカード）に設定（接続相手を不特定に設定）すること、ＬＡＮの外部ポート（ＥｘｔｅｒｎａｌＰｏｒｔ）が１００であること、ＬＡＮの内部ポート（ＩｎｔｅｒｎａｌＰｏｒｔ）が１００であること、ＰＣ１０１のＩＰアドレス（ＩｎｔｅｒｎａｌＣｌｉａｎｔ）が１９２．１６８．０．３であること、プロトコルがＴＣＰであること、およびポートマッピングの予約（ＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄがＤｉｓａｂｌｅ）であることが示されている。
【００５３】
ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＬＡＮインタフェース２０２を介して、図３（Ｂ）で例示したメッセージを受信すると、受信したメッセージにもとづいて、図４の２行目に示すように、ポートマッピングテーブルを更新する。
【００５４】
なお、一般に、ＵＰｎＰ  ＩＧＤは、異なるＩｎｔｅｒｎａｌＣｌｉｅｎｔ（ＬＡＮに接続されたＰＣ）が、重複したＥｘｔｅｒｎａｌＰｏｒｔとＰｒｏｔｏｃｏｌとの組み合わせでポートマッピングを要求した場合（すなわち、重複したポートマッピングが要求された場合）には、ポートマッピングを許可しない（受け付けない）。どちらのＩｎｔｅｒｎａｌＣｌｉｅｎｔへパケットを送信すべきか判断できないためである。しかし、上述した予約の状態では、まだパケットが送信されるわけではなく、ポートマッピングが重複していても問題は発生しない。そこで、この実施の形態では、重複したポートマッピングの予約を許可し、受け付ける（ポートマッピングテーブルにポートマッピングを予約する）。
【００５５】
次に、ＩＰアドレスが１９２．１６８．０．４であるＰＣ１０３が、ポートマッピングの予約を要求するメッセージを、ブロードバンドルータ１０４に送信する場合について説明する。
【００５６】
図３（Ｃ）には、ＰＣ１０３がブロードバンドルータ１０４に送信したメッセージが例示されている。
【００５７】
図３（Ｃ）で例示したＰＣ１０３がブロードバンドルータ１０４に送信したメッセージには、ＵＰｎＰのＲｅｍｏｔｅＨｏｓｔのパラメータをＥｍｐｔｙ（ワイルドカード）に設定（接続相手を不特定に設定）すること、ＬＡＮの外部ポート（ＥｘｔｅｒｎａｌＰｏｒｔ）が１００であること、ＬＡＮの内部ポート（ＩｎｔｅｒｎａｌＰｏｒｔ）が１００であること、ＰＣ１０１のＩＰアドレス（ＩｎｔｅｒｎａｌＣｌｉａｎｔ）が１９２．１６８．０．４であること、プロトコルがＴＣＰであること、およびポートマッピングの予約（ＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄがＤｉｓａｂｌｅ）であることが示されている。
【００５８】
ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＬＡＮインタフェース２０２を介して、図３（Ｃ）で例示したメッセージを受信すると、受信したメッセージにもとづいて、図４の３行目に示すように、ポートマッピングテーブルを更新する。
【００５９】
ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＳＩＰ  ＲＥＧＩＳＴＥＲメッセージにおいて、ユーザエージェントの存在をＳＩＰサーバ１０８に登録する。具体的には、ポートマッピング制御部２０４は、ＷＡＮインタフェース２０６を介して、ＳＩＰサーバ１０８に、予約または追加したＥｘｔｅｒｎａｌＰｏｒｔの番号を通知する。
【００６０】
ＳＩＰサーバ１０８は、通知されたＥｘｔｅｒｎａｌＰｏｒｔの番号を、ブロードバンドルータ１０４のＩＰアドレスと対応づけて記憶する。
【００６１】
次に、インターネット１０５に接続されたＰＣ１０６がＰＣ１０１に接続する場合の動作について説明する。図５は、インターネット１０５に接続されたＰＣが、ＬＡＮに接続されたＰＣに接続する動作の説明図である。
【００６２】
ＰＣ１０６は、インターネット１０５を介してＳＩＰサーバ３０８に接続し、ブロードバンドルータ１０４のＩＰアドレスと、ブロードバンドルータ１０４のＩＰアドレスに対応づけられているＥｘｔｅｒｎａｌＰｏｒｔの番号（１００）とを検索して抽出する（図５中の（１））。
【００６３】
ＰＣ１０６は、抽出したブロードバンドルータ１０４のＩＰアドレスとＥｘｔｅｒｎａｌＰｏｒｔの番号とにもとづいて、ブロードバンドルータ１０４に、ＥｘｔｅｒｎａｌＰｏｒｔの番号（１００）と、プロトコル（ＴＣＰ）とを示す情報を送信してＰＣ１０１への接続を要求する（図５中の（２））。
【００６４】
ブロードバンドルータ１０４のルータ部２０５は、ポートマッピングテーブルを参照して、受信したパケットが、予約されているポート宛のパケットであると判断して、処理をＵＰｎＰ  ＩＧＤ制御部２０３に引き継ぐ。
【００６５】
ＵＰｎＰ  ＩＧＤ制御部２０３は、受信したＥｘｔｅｒｎａｌＰｏｒｔの番号（１００）を予約したＰＣ１０１、１０２および１０３に、ＬＡＮインタフェース２０２を介して、接続要求を受信したことを示す着信通知を送信する（図５中の（３））。なお、着信通知は、ＰＣ１０６のＩＰアドレス、プロトコル、およびＰＣ１０６が送信したＥｘｔｅｒｎａｌＰｏｒｔの番号（１００）を含む。
【００６６】
ＰＣ１０１は、着信通知を受信すると、受信したＰＣ１０６のＩＰアドレス、プロトコル、およびＰＣ１０６が送信したＥｘｔｅｒｎａｌＰｏｒｔの番号（１００）にもとづいて、ＰＣ１０６に接続するか否かを判断する。なお、ＰＣ１０１は、着信通知をＰＣ１０１に接続されているディスプレイ等の表示手段（図示せず）に表示させ、ＰＣ１０１のユーザに、ＰＣ１０６に接続するか否かを判断させてもよい。
【００６７】
ＰＣ１０６に接続すると判断すると、ＰＣ１０１は、ポートマッピングテーブルの内容の更新を要求するメッセージを生成して、ブロードバンドルータ１０４に送信する（図５中の（４））。
【００６８】
図３（Ｄ）には、ＰＣ１０１がブロードバンドルータ１０４に送信したメッセージが例示されている。
【００６９】
図３（Ｄ）で例示したＰＣ１０１がブロードバンドルータ１０４に送信したメッセージには、ＵＰｎＰのＲｅｍｏｔｅＨｏｓｔを１０．１０．１０．１０に設定すること、ＬＡＮの外部ポート（ＥｘｔｅｒｎａｌＰｏｒｔ）が１００であること、ＬＡＮの内部ポート（ＩｎｔｅｒｎａｌＰｏｒｔ）が１００であること、ＰＣ１０１のＩＰアドレス（ＩｎｔｅｒｎａｌＣｌｉａｎｔ）が１９２．１６８．０．２であること、プロトコルがＴＣＰであること、およびポートマッピングの追加（ＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄがＥｎａｂｌｅ）であることが示されている。
【００７０】
ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＬＡＮインタフェース２０２を介して、図３（Ｄ）で例示したメッセージを受信すると、受信したメッセージにもとづいて、図４の４行目に示すように、ポートマッピングテーブルを更新する。すなわち、ポートマッピング制御部２０４は、予約されたポートマッピングを、正規のポートマッピングとしてポートマッピングテーブルに追加する。
【００７１】
ブロードバンドルータ１０４は、ポートマッピングテーブルを参照して、ＰＣ１０１から受信したパケットをＰＣ１０６に送信し、ＰＣ１０６から受信したパケットをＰＣ１０１に送信して、ＰＣ１０１とＰＣ１０６との間の通信経路を確保する（図５中の（５））。
【００７２】
ブロードバンドルータ１０４は、ポートマッピングテーブルにもとづいて、ＰＣ１０１とＰＣ１０６との間の通信経路を確保すると、ＰＣ１０６に、通信経路を確保したことを示すメッセージを送信してもよい。
【００７３】
なお、インターネット１０５に接続されたＰＣ１０７がＰＣ１０２に接続する場合であっても、ブロードバンドルータ１０４は、インターネット１０５に接続されたＰＣ１０６がＰＣ１０１に接続する場合と同様な動作を行う。
【００７４】
そして、ＰＣ１０２がＰＣ１０７に接続すると判断すると、ＰＣ１０２は、ポートマッピングテーブルの内容の更新を要求するメッセージを生成して、ブロードバンドルータ１０４に送信する。
【００７５】
図３（Ｅ）には、ＰＣ１０２がブロードバンドルータ１０４に送信したメッセージが例示されている。
【００７６】
図３（Ｅ）で例示したＰＣ１０２がブロードバンドルータ１０４に送信したメッセージには、ＵＰｎＰのＲｅｍｏｔｅＨｏｓｔを２０．２０．２０．２０に設定すること、ＬＡＮの外部ポート（ＥｘｔｅｒｎａｌＰｏｒｔ）が１００であること、ＬＡＮの内部ポート（ＩｎｔｅｒｎａｌＰｏｒｔ）が１００であること、ＰＣ１０１のＩＰアドレス（ＩｎｔｅｒｎａｌＣｌｉａｎｔ）が１９２．１６８．０．３であること、プロトコルがＴＣＰであること、およびポートマッピングの追加（ＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄがＥｎａｂｌｅ）であることが示されている。
【００７７】
ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＬＡＮインタフェース２０２を介して、図３（Ｅ）で例示したメッセージを受信すると、受信したメッセージにもとづいて、図４の５行目に示すように、ポートマッピングテーブルを更新する。すなわち、ポートマッピング制御部２０４は、予約されたポートマッピングを、正規のポートマッピングとしてポートマッピングテーブルに追加する。
【００７８】
ブロードバンドルータ１０４は、ポートマッピングテーブルを参照して、ＰＣ１０２から受信したパケットをＰＣ１０７に送信し、ＰＣ１０７から受信したパケットをＰＣ１０２に送信して、ＰＣ１０２とＰＣ１０７との間の通信経路を確保する（図５中の（６））。
【００７９】
ブロードバンドルータ１０４は、ポートマッピングテーブルにもとづいて、ＰＣ１０２とＰＣ１０７との間の通信経路を確保すると、ＰＣ１０７に、通信経路を確保したことを示すメッセージを送信してもよい。
【００８０】
次に、ＬＡＮに接続されたＰＣ１０１が、インターネット１０５に接続されたＰＣ１０６に接続する場合の動作について説明する。図６は、ＬＡＮに接続されたＰＣが、インターネット１０５に接続されたＰＣに接続する動作の説明図である。
【００８１】
なお、ＰＣ１０１は、図３（Ａ）で例示したメッセージをブロードバンドルータ１０４に送信し、ブロードバンドルータ１０４は、受信したメッセージにもとづいて、図４の１行目に示すように、ポートマッピングテーブルを更新しているものとする。
【００８２】
ＰＣ１０１は、ブロードバンドルータ１０４を介してＳＩＰサーバ１０８に接続し、ＰＣ１０６のＩＰアドレスを検索して抽出する（図６中の（１））。
【００８３】
ＰＣ１０１は、抽出したＰＣ１０６のＩＰアドレスをポートマッピングテーブルに追加するために、図３（Ｄ）で例示したメッセージをブロードバンドルータ１０４に送信し、ブロードバンドルータ１０４は、受信したメッセージにもとづいて、図４の４行目に示すように、ポートマッピングテーブルを更新する（図６中の（２））。
【００８４】
ブロードバンドルータ１０４は、ポートマッピングテーブルを参照して、ＰＣ１０１から受信したパケットをＰＣ１０６に送信し（図６中の（３））、ＰＣ１０６から受信したパケットをＰＣ１０１に送信して、ＰＣ１０１とＰＣ１０６との間の通信経路を確保する（図６中の（４））。
【００８５】
以上に述べたように、この実施の形態によれば、ＬＡＮに接続された複数のＰＣにＥｘｔｅｒｎａｌＰｏｒｔとプロトコルとを重複してポートマッピングすることができる。そのため、それらのＰＣは、それぞれ重複したＥｘｔｅｒｎａｌＰｏｒｔとプロトコルとを用いて、Ｐ２Ｐアプリケーションソフトウェアを動作させることができる。
【００８６】
また、この実施の形態によれば、ブロードバンドルータ１０４は、ＵＰｎＰのＲｅｍｏｔｅＨｏｓｔがＥｍｐｔｙの状態（つまり、インターネットに接続されたＰＣにポートを開放した状態）ではポートマッピングの予約のみを行うため、インターネット１０５に接続されたＰＣがＬＡＮに接続されたＰＣに不正に侵入したり、攻撃したりすることを防ぐことができる。
【００８７】
また、この実施の形態によれば、ブロードバンドルータ１０４は、ＬＡＮに接続されたＰＣに着信通知を送信するため、ＬＡＮに接続されたＰＣは、接続する相手方を、接続する前に確認することができる。
【００８８】
なお、ブロードバンドルータ１０４のポートマッピング制御部２０４は、ＬＡＮに接続されたＰＣの要求に応じて、接続要求を拒否するＰＣのＩＰアドレスをポートマッピングテーブルに追加してもよい。そのように構成した場合には、不正な接続要求を行うＰＣからの接続要求を、ブロードバンドルータ１０４が拒否するため、ＬＡＮに接続されたＰＣのセキュリティを高めることができる。
【００８９】
なお、この実施の形態では、ポートマッピングテーブルのＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄの欄を、ＤｉｓａｂｌｅあるいはＥｎａｂｌｅにすることで、ポートマッピングの予約を制御している。しかし、このＰｏｒｔＭａｐｐｉｎｇＥｎａｂｌｅｄは、ＵＰｎＰで標準に定義されたパラメータであり、場合によっては、別の解釈で利用される場合がある。
【００９０】
そのため、ＰｏｒｔＭａｐｐｉｎｇＤｅｓｃｒｉｐｔｉｏｎが、ポートマッピングの予約または追加を示すようにしてもよい。図７は、ＰｏｒｔＭａｐｐｉｎｇＤｅｓｃｒｉｐｔｉｏｎが、ポートマッピングの予約（ｙｏｙａｋｕ）または追加（ｔｓｕｉｋａ）を示す場合に、ＬＡＮに接続されたＰＣがブロードバンドルータ１０４に送信するメッセージを示す説明図である。
【００９１】
図７（Ａ）は、図３（Ａ）に対応し、同様の意味を有するメッセージである。図７（Ｂ）は、図３（Ｂ）に対応し、同様の意味を有するメッセージである。図７（Ｃ）は、図３（Ｃ）に対応し、同様の意味を有するメッセージである。図７（Ｄ）は、図３（Ｄ）に対応し、同様の意味を有するメッセージである。図７（Ｅ）は、図３（Ｅ）に対応し、同様の意味を有するメッセージである。
【００９２】
そのように構成すれば、ＬＡＮに接続されたＰＣは、確実にポートマッピングの予約または追加を行うことができる。
【００９３】
なお、ブロードバンドルータ１０４のポートマッピング制御部２０４は、任意のメッセージを含む着信通知を、ＬＡＮに接続されたＰＣに送信してもよい。例えば、ポートマッピングテーブルが、接続要求を拒否するＩＰアドレスを示す情報を含んでいる場合に、そのＩＰアドレスのＰＣから接続要求を受信したことを示す情報を含む着信通知を、ＬＡＮに接続されたＰＣに送信する。
【００９４】
そのように構成すれば、ＬＡＮに接続されたＰＣは、接続要求を拒否するＰＣからの接続要求のログを生成し、不正な接続要求への対策に役立てることができる。
【産業上の利用可能性】
【００９５】
本発明は、ＵＰｎＰ対応アプリケーションソフトウェアや、ブロードバンドルータに適用することができる。
【図面の簡単な説明】
【００９６】
【図１】本発明によるポートフォワードシステムの実施の形態の一構成例を示すブロック図である。
【図２】ブロードバンドルータの一構成例を示すブロック図である。
【図３】各ＰＣが送信するメッセージを示す説明図である。
【図４】ポートマッピングテーブルの一例を示す説明図である。
【図５】インターネットに接続されたＰＣが、ＬＡＮに接続されたＰＣに接続する動作の説明図である。
【図６】ＬＡＮに接続されたＰＣが、インターネットに接続されたＰＣに接続する動作の説明図である。
【図７】ＰｏｒｔＭａｐｐｉｎｇＤｅｓｃｒｉｐｔｉｏｎが、ポートマッピングの予約または追加を示す場合に、ＬＡＮに接続されたＰＣがブロードバンドルータに送信するメッセージを示す説明図である。
【符号の説明】
【００９７】
１０１、１０２、１０３、１０６、１０７  ＰＣ
１０４  ブロードバンドルータ
１０５  インターネット
１０８  ＳＩＰサーバ
２０２  ＬＡＮインタフェース
２０３  ＵＰｎＰ  ＩＧＤ制御部
２０４  ポートマッピング制御部
２０５  ルータ部
２０６  ＷＡＮインタフェース
【図１】
2007110266.tif 000003
【図２】
2007110266.tif 000004
【図３】
2007110266.tif 000005
【図４】
2007110266.tif 000006
【図５】
2007110266.tif 000007
【図６】
2007110266.tif 000008
【図７】
2007110266.tif 000009