(57)【要約】【課題】  ファイアウォール構成に関連する不都合を解消する。【解決手段】  本発明にかかる方法において、プライベートホストは、プライベートネットワークに、パブリックホストは、パブリックネットワークに接続されている。本方法は、自動ＮＡＴ提供ソフトウェアを提供することを含み、このソフトウェアは、プライベートホストまたはパブリックホストにより開始されるメッセージに応じて、プライベートホストに関連するセキュリティポリシーを調べ、プライベートホストとパブリックホストとの間の通信が許可されているか否かを判断する。本方法は、プライベートホストとパブリックホストとの間の通信が許可されていることが分かった場合、データベースに、プライベートＩＰアドレスと第２のパブリックＩＰアドレスとの間のアドレス変換のための第２のパブリックＩＰアドレスを自動的に提供する。【選択図】図１
2005086807.tif 000002
【特許請求の範囲】
【請求項１】
プライベートＩＰアドレスを有するプライベートホスト（１０２）が第１のパブリックＩＰアドレスを有するパブリックホスト（１１４）と通信するのを可能にするように、ネットワークアドレス変換（ＮＡＴ）データを自動的に生成する方法であって、該プライベートホストはプライベートネットワーク（１０８）に接続されており、該パブリックホストはパブリックネットワーク（１１２）に接続されている方法であり、
自動ＮＡＴ提供ソフトウェア（４０２）を提供することであって、該ソフトウェアは、前記プライベートホスト（１０２）と前記パブリックホスト（１１４）とのうちの一方によって開始される通信に応じて、前記プライベートホスト（１０２）に関連するセキュリティポリシーを調べることにより、該プライベートホスト（１０２）と前記パブリックホスト（１１４）との間の前記通信が許可されているか否かを判断するものであることと、
前記調べることにより、前記プライベートホストと前記パブリックホストとの間の前記通信が許可されていることが分かった場合、前記調べることの後に人間のオペレータの介入なしに前記ソフトウェアを使用して、データベースに、前記プライベートＩＰアドレスと前記第２のパブリックＩＰアドレスとの間のアドレス変換のための第２のパブリックＩＰアドレスを自動的に提供すること（５０４／５１４）であって、該第２のパブリックＩＰアドレスは、前記プライベートホスト（１０２）と前記パブリックホスト（１１４）との間の前記パブリックネットワーク（１１２）を介する前記通信を経路指定するためにソースＩＰアドレスと宛先ＩＰアドレスとのうちの一方として使用されるものである第２のパブリックＩＰアドレスを提供することと
を含む方法。
【請求項２】
前記セキュリティポリシーを、アクセスリスト（２０２）を使用して実施する
請求項１に記載の方法。
【請求項３】
前記通信が前記プライベートホストによって開始される場合、前記第２のパブリックＩＰアドレスは共有パブリックＩＰアドレスを表す（５０４）
請求項２に記載の方法。
【請求項４】
前記通信が前記パブリックホストによって開始される場合、前記第２のパブリックＩＰアドレスは、専用パブリックＩＰアドレスを表す（５１４）
請求項２に記載の方法。
【請求項５】
前記データベースは、ネットワークアドレス変換（ＮＡＴ）テーブル（３０２）を表す
請求項１に記載の方法。
【請求項６】
前記プライベートネットワークからの前記プライベートホストの除去を検出すること（６０２）と、
前記ソフトウェアを使用して、前記プライベートホストの前記除去を前記検出することに応じて、前記データベースから前記第２のパブリックＩＰアドレスを除去すること（６０４）と
をさらに含む請求項１に記載の方法。
【請求項７】
前記セキュリティポリシーは、汎用セキュリティポリシーを表す
請求項１に記載の方法。
【請求項８】
前記汎用ポリシーが変更された後に、該汎用ポリシーによって影響を受けるすべてのプライベートホストに対してＮＡＴデータを前記ソフトウェアを使用して自動的に生成すること
をさらに含む請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークアドレス変換データの自動提供に関する。
【背景技術】
【０００２】
パブリックネットワーク、たとえばインターネットを介するホスト間の通信を経路指定するために、長くＩＰアドレスが使用されてきた。
パブリックＩＰアドレスは、パブリックネットワークの交換装置が通信ホスト間で情報を経路指定するために理解し使用することができるアドレスである。
一方、プライベートＩＰアドレスは、プライベートネットワークにおいて接続されたホストに関連するアドレスである。
これらプライベートＩＰアドレスは、プライベートネットワーク内の情報の経路指定を可能にするが、たとえば、プライベートホストとパブリックネットワークに存在する外部ホストとの間の通信を容易にするために、パブリックネットワークを通して経路指定するために使用することはできない。
プライベートホストは、通常、機能の中でも特に、プライベートネットワークアドレスをパブリックネットワークに晒されないようにする役割を果たすファイアウォールを介して、インターネットに接続される。
【０００３】
論考を容易にするために、図１は、プライベートネットワーク１０８において相互接続された、たとえばコンピュータおよび／または他の装置を表す複数のプライベートホスト１０２、１０４および１０６を示す。
プライベートホスト１０２、１０４および１０６の各々は、プライベートネットワーク１０８内で情報を経路指定するための、それぞれプライベートＩＰアドレス１０．０．１．２、１０．０．１．３および１０．０．１．４として示すプライベートＩＰアドレスを有する。
プライベートネットワーク１０８はファイアウォール１１０を有し、ファイアウォール１１０は、セキュリティを実施し、プライベートネットワーク１０８に関連する装置とパブリックネットワーク１１２に関連する装置との間のアクセスを制御する装置を表す。
【０００４】
図１は、さらに、この例では、それぞれパブリックＩＰアドレス２００．１０．１．１および２００．１０．１．２によって、パブリックネットワーク１１２に接続されパブリックネットワーク１１２とパブリックネットワーク１１２に接続された他の装置（ファイアウォール１１０を介してプライベートホスト１０２、１０４および１０６等）に既知である装置を表す、パブリックホスト１１４および１１６を示す。
プライベートホスト１０２、１０４および１０６に関連するプライベートＩＰアドレスとは異なり、これらのパブリックＩＰアドレスの各々は、パブリックネットワーク１１２が、パブリックネットワーク１１２に連結されパブリックＩＰアドレスを有する他の任意の装置に情報を経路指定するために使用することができるものである。
【０００５】
プライベートホスト１０２、１０４または１０６等のプライベートホストとの間の通信を、セキュリティポリシーによって管理してもよい。
一般的に、セキュリティポリシーは、プライベートホストがアクセスおよびサービスを受ける場合にそれらにおける制限を指示する。
アクセスリストは、セキュリティポリシーを実施する１つの方法である。
【０００６】
図２は、アクセスリストエントリ番号１が、パブリックホスト１１４（パブリックＩＰアドレス２００．１０．１．１）とプライベートホスト１０２（プライベートＩＰアドレス１０．０．１．２）との間でテルネット（Telnet）サービスを許可する、アクセスリスト２０２の例を示す。
アクセスリストエントリ番号２は、プライベートホスト１０４（プライベートＩＰアドレス１０．０．１．３）とパブリックホスト１１４（パブリックＩＰアドレス２００．１０．１．１）との間でＨＴＴＰサービスを許可する。
アクセスリストエントリ番号３は、プライベートネットワーク１０８内の任意のホストがパブリックネットワーク１１２に接続された任意のパブリックホストとＦＰＴサービスに対して通信するのを許可する、汎用ポリシーを実施する。
３つの例のみを示すが、アクセスリストは、すべてのプライベートホストに対して汎用的であるか１つまたは複数のプライベートホストに対して特定であるかに関らず、任意のサービスまたはサービスのセットに対し任意のパブリックホストまたはパブリックホストのセットに対するアクセスを許可する任意のセキュリティポリシーを実施してもよい。
【０００７】
上述したように、プライベートＩＰアドレスは、パブリックネットワークを介して情報を経路指定するために使用可能ではない。
したがって、プライベートホストとパブリックホスト、すなわちパブリックネットワークに接続されパブリックＩＰアドレスによってパブリックネットワークに既知であるものとの間で通信を行うために、プライベートホストのプライベートＩＰアドレスを、通常はファイアウォールによりパブリックＩＰアドレスに変換する必要がある。
かかる変換は、ネットワークアドレス変換（Network Address Translation）またはＮＡＴとして知られている。
通常は、プライベートホストとパブリックホストとの間の通信が、適用可能な１つまたは複数のセキュリティポリシーによって許可される場合に、かかる通信を可能にするために必要なアドレス変換を実行するために、ＮＡＴデータを用いてファイアウォールを構成する。
【０００８】
従来技術では、ＮＡＴデータを管理者が手作業で構成する。
プライベートホストが最初にプライベートネットワークに接続され初期化された時に、そのプライベートホストに対してセキュリティポリシーを生成してもよく、あるいはそのプライベートホストが、既存の汎用セキュリティポリシーに従ってもよい。
プライベートホストが任意のパブリックホストと通信することが許可されると、管理者は、利用可能なパブリックＩＰアドレスのプールからパブリックＩＰアドレスを選択することにより、ＮＡＴデータを手作業で提供しなければならず、将来のＮＡＴが実行することができるように、そのパブリックＩＰアドレスを新たなプライベートホストのプライベートＩＰアドレスと手作業で関連付けなければならない。
【０００９】
外部通信の目的でのプライベートホストのプライベートＩＰアドレスとパブリックＩＰアドレスとの関連付けは、通常は、図１の管理者１２０が、図３のＮＡＴテーブル３０２等のＮＡＴテーブルにおける１つまたは複数のエントリを手作業で作成することにより達成する。
図３の例では、プライベートホスト１０２（プライベートＩＰアドレス１０．０．１．２）を変換されたパブリックＩＰアドレス２１０．０．０．１と関連付け、プライベートホスト１０４（プライベートＩＰアドレス１０．０．１．３）を変換されたパブリックＩＰアドレス２１０．０．０．２と関連付ける。
ファイアウォール１１０は、図２のアクセステーブル２０２と図３のＮＡＴテーブル３０２とを調べることにより、プライベートホストが所与のサービスに対して所与のパブリックホストにアクセスすることを許可されているか否かを確かめることができ、かかるアクセスが許可されている場合必要なＮＡＴ変換を実行することができる。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特にＮＡＴデータを提供することに関連して、ファイアウォール構成の従来技術による技法に関連する不都合がある。
たとえば、手作業の手法は間違いが起こりやすく、たとえば、人間のオペレータは、ＮＡＴテーブルのエントリを作成している間にＩＰアドレスをタイプミスする可能性があり、それによりセキュリティ違反がもたらされる。
さらに、ＮＡＴデータを手作業で提供するために人間の管理者を必要とすることは、必然的に、遅延を伴い、プライベートホストを動作状態にするために必要な時間が不都合なほどに長くなる。
【課題を解決するための手段】
【００１１】
本発明は、一実施形態において、プライベートＩＰアドレスを有するプライベートホストが第１のパブリックＩＰアドレスを有するパブリックホストと通信するのを可能にするように、ネットワークアドレス変換（ＮＡＴ）データを自動的に生成する方法に関する。
プライベートホストは、プライベートネットワークに接続されている。
パブリックホストは、パブリックネットワークに接続されている。
本方法は、自動ＮＡＴ提供ソフトウェアを提供することを含み、このソフトウェアは、プライベートホストとパブリックホストとのうちの一方によって開始されるメッセージに応じて、プライベートホストに関連するセキュリティポリシーを調べることにより、プライベートホストとパブリックホストとの間の通信が許可されているか否かを判断する。
本方法は、調べることにより、プライベートホストとパブリックホストとの間の通信が許可されていることが分かった場合、調べた後に人間のオペレータの介入なしにソフトウェアを使用して、データベースに、プライベートＩＰアドレスと第２のパブリックＩＰアドレスとの間のアドレス変換のための第２のパブリックＩＰアドレスを自動的に提供することを含む。
第２のパブリックＩＰアドレスは、プライベートホストとパブリックホストとの間のパブリックネットワークを介する通信を経路指定するためにソースＩＰアドレスと宛先ＩＰアドレスとのうちの一方として使用される。
【００１２】
別の実施形態では、本発明は、コンピュータ読取可能コードが埋め込まれたプログラム記憶媒体を備える製品に関する。
このコンピュータ読取可能コードは、プライベートＩＰアドレスを有するプライベートホストが第１のパブリックＩＰアドレスを有するパブリックホストと通信するのを可能とするように、ネットワークアドレス変換（ＮＡＴ）データを自動的に生成するように構成される。
プライベートホストは、プライベートネットワークに接続されている。
パブリックホストは、パブリックネットワークに接続されている。
自動化ＮＡＴ提供ソフトウェアを提供するコンピュータ読取可能コードが含まれる。
ソフトウェアは、プライベートホストとパブリックホストとのうちの一方によって開始されるメッセージに応じて、プライベートホストに関連するセキュリティポリシーを調べることにより、プライベートホストとパブリックホストとの間の通信が許可されているか否かを判断する。
さらに、調べた後に人間の介入なしにソフトウェアを使用して、データベースに、プライベートＩＰアドレスと第２のパブリックＩＰアドレスとの間のアドレス変換のための第２のパブリックＩＰアドレスを自動的に提供するコンピュータ読取可能コードが含まれる。
第２のパブリックＩＰアドレスは、プライベートホストとパブリックホストとの間のパブリックネットワークを介する通信を経路指定するために、ソースＩＰアドレスと宛先ＩＰアドレスとのうちの一方として使用される。
自動提供は、調べることによりプライベートホストとパブリックホストとの間の通信が許可されていることが分かった場合に実行される。
【００１３】
本発明のこれらおよび他の特徴は、本発明の詳細な説明においておよび以下の図面に関連して下により詳細に説明する。
【００１４】
本発明を、限定としてではなく例として、添付図面の同じ参照番号が同じ要素を指す図において例示する。
【発明を実施するための最良の形態】
【００１５】
ここで、本発明を、添付図面に示すようなそのいくつかの好ましい実施形態を参照して、詳細に説明する。
以下の説明では、本発明の完全な理解を提供するために、多数の特定の詳細を示す。
しかしながら、当業者には、本発明をこれらの特定の詳細のいくつかまたはすべてなしで実施することができる、ということが明らかとなろう。
一方、本発明を不必要に不明瞭にしないために、既知のプロセスステップおよび／または構成については詳細に説明していない。
【００１６】
一実施形態において、プライベートネットワークへのプライベートホストの追加、プライベートネットワークからのプライベートホストの削除および／またはプライベートホストを含む通信の開始等のイベントに応じてＮＡＴデータを自動的にかつ動的に構成するために、ソフトウェア（コードおよび／またはファームウェア）にファイアウォールを提供する。
一実施形態では、ソフトウェアドライバは、アクセスリストをチェックしてＩＰアドレス変換が必要とされる可能性のあるプライベートホストに関連するセキュリティポリシーを確認し、確認したセキュリティポリシーに基づいてＮＡＴテーブルを自動的に構成する。
複数のポリシーが問題のプライベートホストに適用される状況を処理し、通信がインバウンドであるかまたはアウトバウンドであるかにより専用のパブリックＩＰアドレスが必要であるか否かを確認し、ＮＡＴエントリを、そのＮＡＴエントリに関連するプライベートホストがプライベートネットワークから除去される場合に自動的に除去するように、ソフトウェアにインテリジェンスを構築する。
【００１７】
本発明の特徴および利点を、図面および以下の論考を参照してよりよく理解することができる。
図４は、本発明の一実施形態による、図１の例示的なネットワークであるが、ここでは、ファイアウォール４１０に自動ＮＡＴ提供ソフトウェアドライバ４０２が提供される、ネットワークを示す。
図１とは対照的に、プライベートホストとの間の通信を容易にするために使用されるファイアウォールへのＮＡＴデータの提供を、ここでは自動ＮＡＴ提供ソフトウェア４０２が自動的に実行する。
したがって、従来技術による手作業で提供する技法に関連する不都合が、有利に除去される。
【００１８】
図５は、本発明の一実施形態による、ソフトウェアドライバ４０２によって実施される方法を示す。
図５のステップを、通常は、実行時間中、アクセスリストへの変更がある場合、たとえば、プライベートホストの追加または削除がある場合、あるいはプライベートホストのうちの１つまたは複数に対し影響を与えるセキュリティポリシーに変更がある場合に、実行する。
一実施形態では、アクセスリストを、ファイアウォールにおいて、追加／削除されている装置の識別を含む、プライベートネットワークのトポロジおよび／またはプライベートネットワークに対する装置の追加／削除を自動的に検出する、自動発見ソフトウェアによって自動的に更新してもよい。
【００１９】
一実施形態では、パブリックＩＰアドレスの割付は、通信が開始した時（パブリックからプライベートへまたはプライベートからパブリックへのいずれか）にのみ発生する。
このように、プライベートネットワークに対して利用可能なパブリックＩＰアドレスのプールは、可能な限り解放されたままであり、パブリックＩＰアドレスは、実際の通信が発生しそうな時にのみ割り付けられる。
【００２０】
ステップ５０２において、アクセスリストを調べることにより、プライベートホストに対し、通信が許可されているか否かを確認する。
通信は、アウトバウンド（すなわち、プライベートホストにより、パブリックホストと通信するために開始された）であってもよく、インバウンド（すなわち、パブリックホストにより、プライベートホストと通信するために開始された）であってもよく、あるいはプライベート対プライベート（すなわち、１つのプライベートホストから別のプライベートホストへ）であってもよい。
【００２１】
通信がアウトバウンドでありアクセスリストにより許可されている場合、共有パブリックＩＰアドレスを割り付け（ステップ５０４）、ソフトウェアは、ＮＡＴテーブルを、プライベートホストとパブリックホストとの間の通信がパブリックネットワークを介して行われるのを可能にする目的で、ファイアウォールがプライベートホストのプライベートＩＰアドレスをパブリックアドレスに変換するのを許可するように、構成する（５０６）。
この場合、パブリックホストが、プライベートホストが開始した通信から、情報をプライベートホストに返信する際に使用するための共有パブリックＩＰアドレスを確認することができるため、共有パブリックＩＰアドレスを使用することが可能である。
【００２２】
通信がインバウンドでありアクセスリストに従って許可されている場合、専用パブリックＩＰアドレスを割り付け（ステップ５１４）、ソフトウェアはＮＡＴテーブルを、プライベートホストとパブリックホストとの間の通信がパブリックネットワークを介して行われるのを可能にする目的で、ファイアウォールがプライベートホストのプライベートＩＰアドレスをパブリックアドレスに変換することを許可するように、構成する（５１６）。
この場合、開始側であるパブリックホストは、プライベートホストを専用パブリックＩＰアドレスによってしか知らないため、専用パブリックＩＰアドレスを使用する。
【００２３】
一方、通信がプライベート対プライベートでありアクセスリストにより許可されている場合、変換は必要でなく、このため、ＮＡＴテーブルを提供することに関していかなる動作も行わない（ステップ５１８）。
【００２４】
図６は、本発明の一実施形態による、プライベートホストがプライベートネットワークから除去される場合にソフトウェアドライバ４０２が行うステップを示す。
上述したように、プライベートネットワークからのプライベートホストの除去を、たとえば自動発見メカニズムによりまたは他の何らかの通知メカニズムを介して、自動的に確認してもよい（６０２）。
ステップ６０４において、除去されたプライベートホストに関連するＮＡＴエントリを、ＮＡＴテーブルから除去する。
【００２５】
本発明は、特に、汎用セキュリティポリシーを処理するのに適している。
汎用セキュリティポリシーを、プライベートホストの特定の識別以外の要素に基づいてプライベートホストに適用されるセキュリティポリシーとして定義してもよい。
図２におけるアクセスリストエントリ番号３は、１つのかかる例であり、要素は、サービスのタイプ（この場合、ＦＴＰ）である。
このように、アクセスリストエントリ番号３により、その特定のプライベートＩＰアドレスとは無関係に、任意のプライベートホストが、任意のパブリックホストとのＦＰＴサービスを実行することができる。
【００２６】
汎用ポリシーの場合、ソフトウェアを、必要な場合に影響を受けるプライベートホストのみに対しＮＡＴテーブルを提供するように構成してもよい。
管理者が、汎用ポリシーが存在する場合はいつでも、影響を受けるプライベートホストの各々に対しＮＡＴエントリを手作業で構成しなければならない従来技術とは対照的に、本発明では、有利に、この労働集約的ステップがなくなる。
たとえば、図２のアクセスリストエントリ番号３の汎用ポリシーに関し、かかるポリシーの作成は、管理者が、従来技術において、プライベートネットワークに接続された各プライベートホストがパブリックホストとのＦＴＰサービスを使用するのを可能にするように、大量のＮＡＴエントリを手作業で作成する必要があったことを意味していた。
【００２７】
本発明により、割り付けられたパブリックＩＰアドレスの割付を、ＦＴＰサービスが要求した場合にのみ、プライベートホストまたはパブリックホストにより実行する。
割付が、人間の関与を必要とせず、したがって、人間が引き起こす誤りを受けることがないため、効率が向上する。
さらに、ソフトウェアが実施するＮＡＴ提供は、自動的に、かつ人間の管理者が手作業で実行することができる速度より実質的に高速であるコンピュータ速度で、行われる。
さらに、割付が、通信が開始しそうな時にのみ行われることが可能であるため、割り付けられたパブリックＩＰアドレスが無駄にならない。
【００２８】
図２におけるアクセスリストエントリ番号３のような汎用ポリシーの場合、プライベートサブネットにおいて汎用ポリシーが適用される装置のすべてに対して、ＮＡＴエントリが自動的に生成される。
ＮＡＴエントリを、好ましくは、通信が始まりそうになる前、すなわち、ファイアウォールにおけるアクセスリストが構成される前に、生成する。
【００２９】
割付ステップ５０４および５１４中に、ソフトウェアが、たとえば既存のＮＡＴテーブルを調べることによりプライベートホストに対しすでにパブリックＩＰアドレスが割り付けられているか否かを確認するために十分インテリジェントである、ということに留意すべきである。
たとえば、単一のプライベートホストに影響を与える２つのセキュリティポリシーがあってもよい。
その場合、割付は一度だけ行われ、すなわち、その場合ソフトウェアはプライベートホストに２つの異なるパブリックＩＰアドレスを割り付けない。
【００３０】
上述したことから理解することができるように、本発明では、有利に、従来技術による手作業のＮＡＴ提供技法に関連する潜在的に人間が引き起こす誤りがなくなる。
さらに、たとえばセキュリティポリシーの変更および／またはアクセスリストの変更および／または自動発見メカニズムからかまたはプライベートホスト追加／削除に関連する他の通知メカニズムからの通知に基づき、コンピュータ速度でＮＡＴデータを自動提供することにより、実質的に、正確な通信経路指定のためにＮＡＴデータを更新するために必要な時間が短縮される。
【００３１】
この発明を、いくつかの好ましい実施形態に関して説明したが、この発明の範囲内にある変更、置換および等価物がある。
本発明の方法および装置を実施する多くの代替的な方法がある、ということにも留意すべきである。
したがって、添付の特許請求項を、本発明の真の精神および範囲内にあるかかる変更、置換および等価物のすべてを含むものと解釈すべきである、ということが意図されている。
【図面の簡単な説明】
【００３２】
【図１】論考を容易にするために、プライベートネットワークにおいて相互接続された、たとえばコンピュータおよび／または他の装置を表す複数のプライベートホストを示す図である。
【図２】アクセスリストの例を示す図である。
【図３】ネットワークアドレス変換（ＮＡＴ）テーブルの例を示す図である。
【図４】本発明の一実施形態により、図１の例示的なネットワークであるが、ここではファイアウォールに自動ＮＡＴ提供ソフトウェアドライバが提供されるネットワークを示す図である。
【図５】本発明の一実施形態による、自動ＮＡＴ提供ソフトウェアドライバによって実施される方法を示す図である。
【図６】本発明の一実施形態による、プライベートネットワークからプライベートホストが除去された場合に自動ＮＡＴ提供ソフトウェアドライバによってとられるステップを示す図である。
【符号の説明】
【００３３】
１０２，１０４，１０６，１１４，１１６・・・ホスト、
１１０・・・ファイアウォール、
１１２・・・インターネット、
１２０・・・管理者、
４０２・・・ソフトウェア、
４１０・・・ファイアウォール、
【図１】
2005086807.tif 000003
【図２】
2005086807.tif 000004
【図３】
2005086807.tif 000005
【図４】
2005086807.tif 000006
【図５】
2005086807.tif 000007
【図６】
2005086807.tif 000008