(57)【要約】【課題】複数の情報処理装置間を接続する仮想ネットワークを柔軟に形成できるようにする。【解決手段】ＶＰＮ形成指示受付部１０２は、ユーザからＶＰＮの形成指示を受け付けると、ＶＰＮに対して一意なグループＩＤを割り当てる。また、ユーザからそのＶＰＮへ登録するメンバの指定を受けると、接続キー発行部１１０が、そのメンバに対応するＶＰＮ接続キーを発行し、そのＶＰＮ接続キーを当該ＶＰＮのグループＩＤと対応づけて認証情報ＤＢ１１８に登録する。ＶＰＮ接続制御部１１２は、メンバからＶＰＮ接続キーを含んだＶＰＮ接続要求を受け取ると、そのメンバに対し、そのＶＰＮ接続キーに対応するＶＰＮの仮想ＩＰアドレスを付与することで、当該ＶＰＮにそのメンバを参加させる。【選択図】図２
2008301165.tif 000002
【特許請求の範囲】
【請求項１】
仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段と、
前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段と、
前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段と、
前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段と、
情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段と、
情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段と、
を備える仮想ネットワーク接続装置。
【請求項２】
前記仮想ネットワーク識別子に対応づけて１以上の承認者アドレスを記憶する第２の記憶手段、を更に備え、
前記対応づけ処理手段は、情報処理装置から前記接続許可情報を伴う前記接続要求を受け取った場合に、前記接続許可情報に対応する仮想ネットワーク識別子に対応する承認者アドレスを前記第２の記憶手段に基づき判定し、判定した承認者アドレスに対して当該情報処理装置からの接続を承認するか否かについての問合せを行い、この問合せに対する回答に応じて当該情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定する、
ことを特徴とする請求項１記載の仮想ネットワーク接続装置。
【請求項３】
仮想ネットワーク識別子ごとに、当該仮想ネットワーク識別子と対応づけられた各承認者アドレスからの回答から当該情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定するための承認規則を記憶する第３の記憶手段を備え、
前記対応づけ処理手段は、前記接続要求に伴った接続許可情報に対応する仮想ネットワーク識別子に対応する各承認者アドレスからの回答と、当該仮想ネットワーク識別子に対応する承認規則とに基づき、前記情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定する、
ことを特徴とする請求項３記載の仮想ネットワーク接続装置。
【請求項４】
前記第１の登録手段が前記情報処理装置に対し発行した接続許可情報に対応づけられた通知情報を前記情報処理装置に対して送信する通知送信手段、
を更に備えることを特徴とする請求項１記載の仮想ネットワーク接続装置。
【請求項５】
コンピュータを、
仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段、
前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段、
前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段、
前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段、
情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段、
情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段、
として機能させるためのプログラム。
【請求項６】
仮想ネットワーク接続装置と１以上の情報処理装置とを備え、
前記仮想ネットワーク接続装置は、
仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段と、
前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段と、
前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段と、
前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段と、
情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段と、
情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段と、
を備え、
前記情報処理装置は、
前記接続許可情報を伴う接続要求を前記仮想ネットワーク接続装置に送信する手段と、
送信元アドレスと宛先アドレスとを含んだ伝送情報を送信する手段と、
を備える、
ことを特徴とする仮想ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想ネットワーク接続装置及びプログラムに関する。
【背景技術】
【０００２】
近年、ＶＰＮ(Virtual Private Network：仮想私設ネットワーク)サービスが普及している。ＶＰＮサービスは、ホスト又は拠点と他のホスト又は拠点とがインターネット等の公衆ネットワークを介して専用線のように排他的に通信できるようにするサービスである。一般的なＶＰＮでは、ＶＰＮ上のパケットをカプセル化して実際のＩＰネットワークをトンネルさせる。
【０００３】
特許文献１に示されるシステムは、論理ネットワークを抽象化する仮想ネットワークインターフェースを提供し、物理ネットワークインターフェースと仮想ネットワークインターフェースと論理ネットワークとの対応を決定し、物理ネットワークインターフェースと仮想ネットワークインターフェースとに対応付けられたパケットのみを送受信し、仮想ネットワークインターフェースと物理ネットワークインターフェースとの間でやり取りされるパケットを制御する。
【０００４】
【特許文献１】特開２００１−３１３６６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、仮想ネットワークとは言っても、カプセル化されたパケットを実ネットワーク経由で送信するので、仮想ネットワークのメンバとなる情報処理装置の実ネットワーク上でのアドレスを仮想ネットワーク接続装置に設定する必要がある。ところが、ある仮想ネットワークを形成するメンバである情報処理装置が移動し、事前に登録されたネットワーク環境と異なるところからこの仮想ネットワークヘ接続する場合や、仮想ネットワークを形成するメンバでなかった情報処理装置がこの仮想ネットワークのメンバとして一時的に参加する場合などのように、メンバのアドレスが事前に分からない場合がある。このような場合、管理者がそのメンバのアドレスを調べて仮想ネットワーク接続装置に設定するのは、不可能ではないにしても、非常に手間がかかる。
【０００６】
本発明は、アドレスが事前に分からない情報処理装置を仮想ネットワークに参加させる場合の管理者の負担を軽減できる仮想ネットワーク接続装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１に係る発明は、仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段と、前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段と、前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段と、前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段と、情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段と、情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段と、を備える仮想ネットワーク接続装置である。
【０００８】
請求項２に係る発明は、前記仮想ネットワーク識別子に対応づけて１以上の承認者アドレスを記憶する第２の記憶手段、を更に備え、前記対応づけ処理手段は、情報処理装置から前記接続許可情報を伴う前記接続要求を受け取った場合に、前記接続許可情報に対応する仮想ネットワーク識別子に対応する承認者アドレスを前記第２の記憶手段に基づき判定し、判定した承認者アドレスに対して当該情報処理装置からの接続を承認するか否かについての問合せを行い、この問合せに対する回答に応じて当該情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定する、ことを特徴とする。
【０００９】
請求項３に係る発明は、仮想ネットワーク識別子ごとに、当該仮想ネットワーク識別子と対応づけられた各承認者アドレスからの回答から当該情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定するための承認規則を記憶する第３の記憶手段を備え、前記対応づけ処理手段は、前記接続要求に伴った接続許可情報に対応する仮想ネットワーク識別子に対応する各承認者アドレスからの回答と、当該仮想ネットワーク識別子に対応する承認規則とに基づき、前記情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定することを特徴とする。
【００１０】
請求項４に係る発明は、前記第１の登録手段が前記情報処理装置に対し発行した接続許可情報に対応づけられた通知情報を前記情報処理装置に対して送信する通知送信手段、を更に備える。
【００１１】
請求項５に係る発明は、コンピュータを、仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段、前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段、前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段、前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段、情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段、情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段、として機能させるためのプログラムである。
【００１２】
請求項５に係る発明は、仮想ネットワーク接続装置と１以上の情報処理装置とを備え、前記仮想ネットワーク接続装置は、仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段と、前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段と、前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段と、前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段と、情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段と、情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段と、を備え、前記情報処理装置は、前記接続許可情報を伴う接続要求を前記仮想ネットワーク接続装置に送信する手段と、送信元アドレスと宛先アドレスとを含んだ伝送情報を送信する手段と、を備える、ことを特徴とする仮想ネットワークシステム、を提供する。
【発明の効果】
【００１３】
請求項１に係る発明によれば、アドレスが事前に分からない情報処理装置を仮想ネットワークに参加させる場合の管理者の負担を、本構成を有していない場合に比較して軽減できる。
【００１４】
請求項２に係る発明によれば、仮想ネットワークに接続するのに接続許可情報だけでなく承認者からの承認を求めるので、仮想ネットワークの安全性が本構成を有していない場合に比較して向上する。
【００１５】
請求項３に係る発明によれば、情報処理装置を仮想ネットワークに接続するか否かを、仮想ネットワークごとに個別の承認規則に基づき判定することができる。
【００１６】
請求項４に係る発明によれば、仮想ネットワークを構成する情報処理装置として指定された装置が、その接続許可情報を取得できるようにすることができる。
【００１７】
請求項５に係る発明によれば、アドレスが事前に分からない情報処理装置を仮想ネットワークに参加させる場合の管理者の負担を、本構成を有していない場合に比較して軽減できる。
【００１８】
請求項６に係る発明によれば、アドレスが事前に分からない情報処理装置を仮想ネットワークに参加させる場合の管理者の負担を、本構成を有していない場合に比較して軽減できる。
【発明を実施するための最良の形態】
【００１９】
以下では、図１に例示するネットワーク構成を例にとって説明する。図１に例示するネットワーク構成では、ＬＡＮ(Local Area Network)２００と、リモートホストＲ１及びＲ２が、インターネット３００に接続されている。リモートホストＲ１及びＲ２は、それぞれ、パーソナルコンピュータ等のコンピュータ（情報処理装置）であり、ＩＳＰ(Internet Service Provider)を介してインターネット３００に接続されている。また、ＬＡＮ２００とインターネット３００との境界にはＶＰＮ(Virtual Private Network)サーバ１００が設置されている。ＶＰＮサーバ１００は、ＩＰ(Internet Protocol)ルーティングのためのルータ機能とＶＰＮ接続制御機能とを備える。図示例のＬＡＮ２００には、ネットワークアドレス10.0.1.0/24のネットワークと、ネットワークアドレス10.0.2.0/24のネットワークとが含まれる。前者にはパーソナルコンピュータＬ１とサーバＬ２とが接続され、後者にはパーソナルコンピュータＬ３〜Ｌ４とサーバＬ６とが接続されている。
【００２０】
次に、図２を参照して、ＶＰＮサーバ１００の内部構成の一例を説明する。ＶＰＮサーバ１００は、ＶＰＮ形成指示受付部１０２、メンバ登録指示受付部１０４、ＶＰＮ設定部１０６、メンバ登録通知部１０８、接続キー発行部１１０、ＶＰＮ接続制御部１１２、経路制御部１１４を備える。これら各機能モジュールは、ＶＰＮルーティング規則１１６、認証情報ＤＢ（データベース）１１８及びＶＰＮ・グループＩＤ対応情報ＤＢ１２０という情報を用いて各種の処理を実行する。
【００２１】
ＶＰＮ形成指示受付部１０２は、ユーザが操作するコンピュータから、ＶＰＮ形成指示を受け付ける。ここで、ＶＰＮ形成指示部１０２は、ＶＰＮ形成指示を受け付けるためのユーザインタフェース画面情報を提供してもよい。このユーザインタフェース画面情報は、例えばＷｅｂページである。すなわち、この例では、ユーザはコンピュータ（Ｗｅｂブラウザ）を操作して、ＶＰＮ形成指示用のＷｅｂページのＵＲＬ(Uniform Resource Locator)にアクセスし、ＶＰＮサーバ１００からそのＷｅｂページを取得する。そのＷｅｂページには、例えばＶＰＮ形成を指示するためのボタンが設けられており、そのボタンをマウスのクリック操作等により押下すると、そのコンピュータはＶＰＮ形成指示をＶＰＮサーバ１００へ送信する。
【００２２】
なお、ＶＰＮ形成指示用のＷｅｂページをＶＰＮサーバ１００からユーザのコンピュータに提供するのは、あくまで一例に過ぎない。この代わりに、例えばユーザのコンピュータに、ＶＰＮ形成指示などといった各種の操作のためのユーザインタフェースを有するＶＰＮクライアントアプリケーションをインストールしてもよい。
【００２３】
ＶＰＮ形成指示受付部１０２が、ＶＰＮサーバ１００が属するＬＡＮ２００の外部からのＶＰＮ形成指示は受け付けないようにしてもよい。これには、例えば、ＬＡＮ２００内のＩＰアドレスからのＶＰＮ形成指示しか受け付けないようにＶＰＮサーバ１００を設定しておけばよい。また、ＶＰＮ形成指示用のＷｅｂページへのアクセスを、ＬＡＮ２００外のアドレスからは許可しないように設定してもよい。
【００２４】
メンバ登録指示受付部１０４は、ＶＰＮ形成指示受付部１０２が受け付けた指示に応じて形成したＶＰＮに対し、そのＶＰＮを構成するメンバとなるコンピュータを登録するための指示を受け付ける。この場合、メンバ登録指示受付部１０４は、例えば、メンバの候補であるコンピュータのリストをユーザのコンピュータに提供し、ユーザはそのリストの中からメンバを選択する。このリストには、候補のコンピュータごとに、例えば、そのコンピュータを識別するための識別情報（ノードＩＤと呼ぶ）と、そのコンピュータに対して通知を送るために用いる通知先アドレス（例えば電子メールアドレス又はＩＰアドレス）が含まれる。ノードＩＤは、コンピュータを識別できるものであればどのようなものを用いてもよい。例えば、当該コンピュータが備えるＮＩＣ（ネットワークインタフェースカード）のＭＡＣ(Media Access Control)アドレスをノードＩＤとして用いてもよい。また、当該コンピュータを制御するオペレーティングシステムの製品識別番号をノードＩＤとして用いてもよい。また、当該コンピュータが持つＣＰＵ、ハードディスク等のハードウエア要素の製品識別番号、ＮＩＣのＭＡＣアドレス、及びオペレーティングシステムの製品識別番号からなる１群の識別番号群のうち、所定の１以上の識別番号の組合せから所定データ長の値（例えばそれら識別番号を並べたデータ列のハッシュ値など）を求め、その値をノードＩＤとしてもよい。
【００２５】
また、別の例では、候補のリストとして、ユーザの電子メールアドレスのリストを用いてもよい。この場合、候補となるコンピュータを、ユーザの電子メールアドレスで指定することとなる。
【００２６】
このようなメンバの候補のリストは、例えば、システム管理者があらかじめＶＰＮサーバ１００に登録しておけばよい。また、別の例として、コンピュータ上でＶＰＮクライアントアプリケーションを起動した場合に、そのアプリケーションが当該コンピュータのノードＩＤとアドレス（例えばメールアドレス又はＩＰアドレス）をＶＰＮサーバ１００に通知し、ＶＰＮサーバ１００がそれをリストに登録してもよい。この場合、メールアドレスはあらかじめユーザ等がそのアプリケーションに設定しておけばよく、ＩＰアドレスはオペレーティングシステムから取得すればよい。
【００２７】
候補のリストからメンバを選択するためのユーザインタフェース画面は、例えばＷｅｂページとしてＶＰＮサーバ１００からユーザのコンピュータに提供すればよい。また、別の例として、メンバ選択のためのユーザインタフェース画面を提供するＶＰＮクライアントアプリケーションをコンピュータにインストールしてもよい。
【００２８】
なお、メンバを電子メールアドレスで指定する方式を用いる場合は、メンバの電子メールアドレスを文字列として入力するユーザインタフェース画面を用いればよい。
【００２９】
ＶＰＮ設定部１０６は、ＶＰＮ形成指示受付部１０２が受け付けた形成指示に応じて、１つのＶＰＮ（仮想ネットワーク）を形成するための設定を行う。この設定処理では、例えば、形成指示に応じて形成するＶＰＮを一意に識別するための識別子（グループＩＤと呼ぶ）と、そのＶＰＮを表す仮想ネットワークアドレスとを割り当て、これらの情報をＶＰＮサーバ１００内に設定情報として登録する。一例では、割り当てたグループＩＤと仮想ネットワークアドレスのペアを、ＶＰＮ・グループＩＤ対応情報ＤＢ１２０に登録する。
【００３０】
図３にＶＰＮ・グループＩＤ対応情報ＤＢ１２０が持つデータ内容の一例を示す。この例は、図１に例示した２つの仮想ネットワークＮ１及びＮ２に対応するものである。仮想ネットワークＮ１に割り当てられたグループＩＤが「１」であり、仮想ネットワークＮ２に割り当てられたグループＩＤが「２」である。この例では、仮想ネットワークアドレスは、ネットワークアドレスとネットマスクの組で表されている。
【００３１】
メンバ登録通知部１０８は、メンバ登録指示受付部１０４が受け付けた指示により選択されたメンバの通知先アドレスに対し、登録通知情報を送信する。登録通知情報には、例えば、ＶＰＮ接続キーを取得するためのＷｅｂページのＵＲＬが含まれる。
【００３２】
ここで、ＶＰＮ接続キーは、ＶＰＮのメンバであることをＶＰＮサーバ１００に対して証明する一種の認証情報である。ＶＰＮ接続キーは、ＶＰＮのすべてのメンバで共通の値でもよいが、メンバごとに異なる値としてもよい。例えば、グループＩＤとノードＩＤとの組合せを所定の関数（例えばハッシュ関数）に入力して得られる値をＶＰＮ接続キーとすれば、ＶＰＮ接続キーはメンバごとに異なる値となる。
【００３３】
登録通知情報には、この他に、ＶＰＮに招待されたことを知らせる文章が含まれていてもよい。また、登録通知情報を受け取ったユーザがどのようなＶＰＮに招待されたのかを理解するために、登録通知情報にはそのＶＰＮの形成指示を行ったユーザの名前が含まれていてもよい。また、登録通知情報には、ＶＰＮを構成する他のメンバの名前（ユーザ名又はホスト名）が含まれていてもよい。
【００３４】
接続キー発行部１１０は、メンバ登録指示受付部１０４に対して指定されたメンバに対してＶＰＮ接続キーを発行する。接続キー発行部１１０は、例えば、登録通知情報を受け取ったユーザのコンピュータから接続キー取得要求を受け取ると、その要求に対応したＶＰＮ接続キーを返す。接続キー発行部１１０は、メンバに対してＶＰＮ接続キーを発行した場合、そのＶＰＮ接続キーを、仮想ネットワークのグループＩＤと対応づけて認証情報ＤＢ１１８に登録する。メンバごとに異なるＶＰＮ接続キーを発行する場合には、そのＶＰＮ接続キーに対応づけて、そのメンバの識別情報であるノードＩＤも更に認識情報ＤＢ１１８に登録する。
【００３５】
図４に、認証情報ＤＢ１１８のデータ内容の一例を示す。この例は、図１に例示した仮想ネットワークＮ１及びＮ２に対応するものである。すなわち、図１の例では、仮想ネットワークＮ１（グループＩＤ＝１）にはＬＡＮ２００内のコンピュータＬ１、サーバＬ２、及びコンピュータＬ３と、ＬＡＮ２００外のリモートホストＲ１とが参加しており、仮想ネットワークＮ２（グループＩＤ＝２）にはＬＡＮ２００内のコンピュータＬ３及びＬ４とＬＡＮ２００外のリモートホストＲ２とが参加している。この例では、ノードＩＤとグループＩＤとの組合せごとに、それぞれ異なるＶＰＮ接続キーが割り当てられている。
【００３６】
ここで、仮想ネットワークへの参加の認証のために、ＶＰＮ接続キーの他に、パスワード等の認証情報を設定できるようにしてもよい。認証情報は、仮想ネットワークごとに定めてもよいし、同じ仮想ネットワークにおいてもメンバごとに異なる値としてもよい。後者の場合、設定された認証情報は、ノードＩＤとグループＩＤとの組合せに対応づけて例えば認証情報ＤＢ１１８に登録される。例えばメンバがＶＰＮ接続キーを用いて仮想ネットワークへの接続要求を発した場合に、ＶＰＮサーバ１００がその認証情報の入力画面を提供すればよい。そして、メンバ画素の入力画面に正しい認証情報を入力しないと、仮想ネットワークへの参加を認めないようにすればよい。
【００３７】
なお、図３及び図４に例示したＶＰＮ・グループＩＤ対応情報ＤＢ１２０と認証情報ＤＢ１１８のデータ構造はあくまで一例に過ぎない。これら各ＤＢの情報は様々な表現形式で表現可能であり、同様の内容を表現可能であればどのような表現形式を用いてもよい。また、ＤＢ１１８とＤＢ１２０という２つのＤＢからなる構成も、説明の便宜のためのものにすぎない。
【００３８】
ＶＰＮ接続制御部１１２は、ユーザのコンピュータからＶＰＮ接続キーを伴う接続要求を受け取った場合に、そのＶＰＮ接続キーに対応づけて認証情報ＤＢ１１８に登録されているグループＩＤが示すＶＰＮに対し、そのコンピュータを参加させる。この例では、そのコンピュータに対して、当該ＶＰＮの仮想ネットワークアドレスに属するホストアドレス（仮想ＩＰアドレス）を割り当てることで、そのコンピュータをそのＶＰＮに参加させる。また、ＶＰＮ接続制御部１１２は、接続要求を受け取った際にコンピュータの実ＩＰアドレスを取得しておき、これと割り当てた仮想ＩＰアドレスにより、同じＶＰＮに参加しているコンピュータ同士の間でのルーティング（経路制御）のための規則を、ＶＰＮルーティング規則１１６として生成し、ＶＰＮサーバ１００内の記憶装置に記憶させる。図１に示した仮想ネットワークＮ１及びＮ２が存在する場合を例に取れば、ＶＰＮルーティング規則１１６には、例えば以下のような規則が含まれる。規則（１）〜（４）は仮想ネットワークＮ１内でのパケット転送に関し、規則（５）〜（７）は仮想ネットワークＮ２内でのパケット転送に関し、規則（８）は仮想ＩＰアドレスでのルーティング全体に関する。また、規則（９）〜（１２）は実ＩＰアドレスでのルーティングに関する規則である。この例は、ＶＰＮサーバ１００が管理する仮想ネットワークがＮ１及びＮ２のみである場合のものである。
【００３９】
（１）パケットの送信元アドレスが172.16.1.2〜172.16.1.4（ＬＡＮ内の仮想ＩＰアドレス）で、且つ宛先アドレスが172.16.1.5（ＬＡＮ外のリモートホストＲ１の仮想ＩＰアドレス）ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが11.11.11.11で宛先アドレスが22.22.22.22であるＩＰヘッダを付加してインターネット３００側のルータ（図示省略）へと送信する。ここで、11.11.11.11は、ＶＰＮサーバ１００のインターネット側のＮＩＣのグローバルＩＰアドレスであり、22.22.22.22は、リモートホストＲ１のＮＩＣのグローバルＩＰアドレスである。なお、カプセル化には、例えば、ＩＰｓｅｃプロトコルを用いればよい。
【００４０】
（２）パケットの送信元アドレスが172.16.1.3〜172.16.1.4又は172.16.1.5で、且つ宛先アドレスが172.16.1.2ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが10.0.1.1で宛先アドレスが10.0.1.2であるＩＰヘッダを付加し、ネットワーク10.0.1.0/24に転送する。ここで、10.0.1.1はＶＰＮサーバ１００の備えるＮＩＣのうち、ネットワーク10.0.1.0/24に接続されたＮＩＣの実ＩＰアドレスである。また、10.0.1.2はＬＡＮ２００内のコンピュータＬ１のＮＩＣの実ＩＰアドレスである。
【００４１】
（３）パケットの送信元アドレスが172.16.1.2又は172.16.1.4又は172.16.1.5で、且つ宛先アドレスが172.16.1.3ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが10.0.1.1で宛先アドレスが10.0.1.3（サーバＬ２の実ＩＰアドレス）であるＩＰヘッダを付加し、ネットワーク10.0.1.0/24に転送する。
【００４２】
（４）パケットの送信元アドレスが172.16.1.2〜172.16.1.3又は172.16.1.5で、且つ宛先アドレスが172.16.1.4ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが10.0.2.1で宛先アドレスが10.0.2.2であるＩＰヘッダを付加し、ネットワーク10.0.2.0/24に転送する。ここで、10.0.2.1はＶＰＮサーバ１００の備えるＮＩＣのうち、ネットワーク10.0.2.0/24に接続されたＮＩＣの実ＩＰアドレスである。また、10.0.2.2はＬＡＮ２００内のコンピュータＬ３のＮＩＣの実ＩＰアドレスである。
【００４３】
（５）パケットの送信元アドレスが172.16.2.2〜172.16.2.3（ＬＡＮ内のホストの仮想ＩＰアドレス）で、且つ宛先アドレスが172.16.2.4（ＬＡＮ外のリモートホストＲ２の仮想ＩＰアドレス）ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが11.11.11.11で宛先アドレスが33.33.33.33であるＩＰヘッダを付加してインターネット３００側のルータ（図示省略）へと送信する。ここで、33.33.33.33は、リモートホストＲ２のＮＩＣのグローバルＩＰアドレスである。
【００４４】
（６）パケットの送信元アドレスが172.16.2.3又は172.16.2.4で、且つ宛先アドレスが172.16.2.2ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが10.0.2.1で宛先アドレスが10.0.2.2であるＩＰヘッダを付加し、ネットワーク10.0.2.0/24に転送する。
【００４５】
（７）パケットの送信元アドレスが172.16.2.2又は172.16.2.4で、且つ宛先アドレスが172.16.2.3ならば、そのパケットをカプセル化し、その結果得られるカプセルに対して送信元アドレスが10.0.2.1で宛先アドレスが10.0.2.2であるＩＰヘッダを付加し、ネットワーク10.0.2.0/24に転送する。
【００４６】
（８）パケットの送信元又は宛先のいずれか一方が仮想ＩＰアドレスであり、且つそれら送信元と宛先のペアが規則（１）〜（７）のいずれにも合致しない場合、そのパケットは廃棄（ドロップ）する。なお、ＶＰＮサーバ１００は、自分が割り当てた仮想ＩＰアドレスの情報を持っているので、送信元又は宛先のＩＰアドレスが仮想ＩＰアドレスであるか否かをその情報に基づき判定すればよい。
【００４７】
（９）パケットの送信元アドレスが22.22.22.22で宛先アドレスが11.11.11.11ならば、そのパケットのカプセル化を解除し、その結果得られる元のパケット（ＶＰＮパケット）のＩＰヘッダの送信元及び宛先アドレスに対して規則（１）〜（８）を適用する。
【００４８】
（１０）パケットの送信元アドレスが10.0.1.2又は10.0.1.3で宛先アドレスが10.0.1.1ならば、そのパケットのカプセル化を解除し、その結果得られる元のパケットのＩＰヘッダの送信元及び宛先アドレスに対して規則（１）〜（８）を適用する。
【００４９】
（１１）パケットの送信元アドレスが10.0.2.2又は10.0.2.3で宛先アドレスが10.0.2.1ならば、そのパケットのカプセル化を解除し、その結果得られる元のパケットのＩＰヘッダの送信元及び宛先アドレスに対して規則（１）〜（８）を適用する。
【００５０】
（１２）パケットの送信元及び宛先が共に実ＩＰアドレスであり、且つそれら送信元と宛先のペアが規則（１）〜（７）のいずれにも合致しない場合、そのパケットをその送信先へとルーティングする。
【００５１】
経路制御部１１４は、このようなＶＰＮルーティング規則１１６を参照して、仮想ネットワーク上のパケットルーティングを行う。
【００５２】
以上に例示した規則（１）〜（１２）は、各ホストＬ１〜Ｌ６、Ｒ１又はＲ２が備えるＶＰＮクライアントアプリケーションが、当該ホスト内で生成されたＶＰＮパケット（この例では、仮想ＩＰアドレス宛のパケット）をカプセル化してインターネット３００又はＬＡＮ２００を通過させ、ＶＰＮサーバ１００へと送信する（即ちＶＰＮトンネリング）場合の例である。
【００５３】
以上に例示した規則（１）〜（８）は、ＶＰＮパケットについてのものであり、当該ＶＰＮパケットの送信元及び宛先が同一の仮想ネットワークに属する場合にはそのパケットを転送（フォワード）し、そうでない場合はそのパケットを廃棄するという考え方に基づく。すなわち、それら規則は、この考え方を、各ホストに割り当てた仮想ＩＰアドレスを用いて個別的、具体的な規則として表現したものである。これらの規則では、パケットの送信元と宛先の仮想ＩＰアドレスのネットワークアドレス部分が同じであればそのパケットを転送する。しかし、当業者なら理解できるように、規則（１）〜（８）のように具体的に送信元及び宛先の仮想ＩＰアドレスを明示した規則でなくても、「パケットの送信元及び宛先の仮想ＩＰアドレスのネットワークアドレス部分が同じであればそのパケットを転送し、そうでなければそのパケットを廃棄する」という包括的な規則を用いてももちろんよい。なお、この包括的な規則も、同一の仮想ネットワークに属するホストには、その仮想ネットワークに割り当てた仮想ネットワークアドレスに属する仮想ＩＰアドレスを付与するという枠組みの下での例に過ぎない。原理的には、送信元と宛先とが同一の仮想ネットワークに属するか否かが判定できれば、どのような規則又は方式を用いてもよい。例えば、仮想ネットワークのグループＩＤに対してその仮想ネットワークに属する各ホストの仮想ＩＰアドレスを対応づけてＶＰＮサーバ１００に記憶しておいてもよい。この場合、ＶＰＮパケットの送信元及び宛先の仮想ＩＰアドレスが同じグループＩＤに対応するか否かをその記憶情報に基づき判定することで、送信元と宛先とが同一仮想ネットワークに属するかが判定される。また、仮想ネットワークに対して割り当てた仮想ネットワークアドレスを、当該仮想ネットワークを識別するグループＩＤとして用いてもよい。
【００５４】
また、以上ではＬＡＮ２００内のホストＬ１〜Ｌ６がＶＰＮトンネリング機能を備えている例を説明したが。これは必須のことではない。ＬＡＮ２００内のホストＬ１〜Ｌ６がＶＰＮトンネリングの機能を持っていなくても、例えばＩＰエイリアスなどの手法を用いてそれら各ホストＬ１〜Ｌ６のＮＩＣに仮想ＩＰアドレスを追加すれば、ＬＡＮ２００内ではＶＰＮパケットがカプセル化されずにそのままルーティングされる。
【００５５】
なお、以上に例示したＶＰＮルーティング規則及びルーティング処理はあくまで一例に過ぎない。仮想ネットワークに参加する各ホストに対して仮想ＩＰアドレスを割り当て、仮想ＩＰアドレスを用いてルーティングを行う方式には従来この他にも存在している。そのような他の方式を利用してももちろんよい。
【００５６】
次に、図５を参照して、仮想ネットワーク（ＶＰＮ）が形成されるまでの処理手順の具体例を説明する。この例では、図１に示すネットワーク構成例において仮想ネットワークＮ１が存在しない状態で、ＬＡＮ２００内のホストＬ１のＶＰＮクライアントアプリケーション（以下、説明の簡略化のため、紛れのない場合には単にホストＬ１と呼ぶ）からの指示により仮想ネットワークＮ１が形成されるまでの流れを概略的に示す。
【００５７】
まず、ホストＬ１が、ユーザの指示に応じてＶＰＮ形成指示を生成し、ＶＰＮサーバ１００に送る（Ｓ１）。このＶＰＮ形成指示には、ホストＬ１のノードＩＤが含まれる。ここで、ホストＬ１のノードＩＤは、ホストＬ１のＶＰＮクライアントアプリケーションが、例えばホストＬ１のハードウエア要素の情報に基づき生成し、設定情報として記憶していればよい。ノードＩＤとしてユーザの電子メールアドレスを用いる場合は、ＶＰＮクライアントアプリケーションは、ユーザにノードＩＤとする電子メールアドレスを設定させ、その値を設定情報として記憶していればよい。
【００５８】
このＶＰＮ形成指示を受け取ったＶＰＮサーバ１００は、ＶＰＮ設定部１０６により、その指示に応じた仮想ネットワーク（ＶＰＮ）Ｎ１の設定を行う（Ｓ２）。すなわち、その仮想ネットワークに対してグループＩＤ（図１及び図４の例では「１」）及び仮想ネットワークアドレス（図１の例では172.16.1.0/24）を割り当て、それらグループＩＤ及び仮想ネットワークアドレスのペアをＶＰＮ・グループＩＤ対応情報ＤＢ１２０に登録する。また、ＶＰＮサーバ１００は、ホストＬ１に対し、当該仮想ネットワークにおける仮想ＩＰアドレス（図１の例では172.16.1.2）を割り当て、ＶＰＮ接続キーを生成する。そして、それら仮想ＩＰアドレス及びＶＰＮ接続キーを、当該仮想ネットワークのグループＩＤと共にホストＬ１に送信する（Ｓ３）。ホストＬ１は、受け取った仮想ＩＰアドレス、ＶＰＮ接続キー及びグループＩＤを記憶し、以降の処理に用いる。なお、ＶＰＮサーバ１００は、このＶＰＮ接続キーを、ホストＬ１のノードＩＤと、その仮想ネットワークＮ１に対して割り当てたグループＩＤとの組に対応づけて、認証情報ＤＢ１１８に登録する。
【００５９】
また、ＶＰＮ形成指示を行ったユーザは、ホストＬ１を操作して、その仮想ネットワークＮ１に対するメンバの登録要求を行う（Ｓ４）。メンバの指定は、前述のように、例えばリストからの選択で行えばよい。このときホストＬ１からＶＰＮサーバ１００に送られる登録要求には、例えば、ホストＬ１を表すノードＩＤと、仮想ネットワークＮ１を表すグループＩＤと、選択されたメンバを特定する情報（即ちそのメンバのノードＩＤ、又はそのノードＩＤに対応づけられた情報）とが含まれる。図示例は、リモートホストＲ１がメンバとして選択された場合の例である。この登録要求には、ノードＩＤとグループＩＤのペアの代わりに、ステップＳ３で受け取ったＶＰＮ接続キーを組み込んでもよい。また、ノードＩＤ及びグループＩＤに加えてＶＰＮ接続キーを登録要求に組み込んでおき、それらノードＩＤ、グループＩＤ及びＶＰＮ接続キーの組が認証情報ＤＢ１１８に登録された正しい組合せであるかをＶＰＮサーバ１００が確認し、正しい組合せであると確認された場合にＶＰＮサーバ１００がその登録要求を受け付けるようにしてもよい。
【００６０】
メンバ登録要求を受け取ったＶＰＮサーバ１００は、その要求にて指定されたメンバに対して仮想ネットワークＮ１内の仮想ＩＰアドレスを割り当て、そのメンバに対応するＶＰＮ接続キーを生成する。これら仮想ＩＰアドレス及びＶＰＮ接続キーは、そのメンバのノードＩＤと仮想ネットワークＮ１のグループＩＤとの組に対応づけて、認証情報ＤＢ１１８に記憶される。そして、ＶＰＮサーバ１００は、そのノードＩＤとグループＩＤとの組に対応づけられた登録通知情報を生成してそのメンバ（この例ではリモートホストＲ１）に送信する（Ｓ５）。この登録通知情報には、例えば、そのＶＰＮ接続キーを取得するためのＷｅｂページ（このページはＶＰＮサーバ１００が生成する）のＵＲＬが含まれる。登録通知情報は、例えば、電子メールとして、ホストＲ１を有するユーザに送信される。また、ホストＲ１が備えるＶＰＮクライアントアプリケーションに対応する固有のプロトコルで、登録通知情報をホストＲ１に送信してもよい。
【００６１】
登録通知情報を受け取ったホストＲ１のユーザがその登録通知情報を用いてＶＰＮ接続キーの取得要求を行うと（Ｓ６）、ＶＰＮサーバ１００がＶＰＮ接続キーを返す（Ｓ７）。例えば、ユーザが登録通知情報の電子メールに表示されたＵＲＬをクリックすると、ホストＲ１がそのＵＲＬに対応するＷｅｂページを要求するＨＴＴＰ(Hypertext Transfer Protocol)要求をＶＰＮサーバ１００に送り、そのＷｅｂページを取得する。そのＷｅｂページには、例えば、ＶＰＮ接続キーの取得指示のためのボタンが含まれている。そのボタンには、当該メンバに対し発行されたＶＰＮ接続キーを識別する識別情報が含まれている。そのＷｅｂページを取得したユーザは、コンピュータ画面に表示されたそのボタンをクリック操作などで押下することにより、コンピュータはＶＰＮサーバ１００に対してその識別情報を含んだ接続キー取得要求を送信し、ＶＰＮ接続キーを得る。また、登録通知情報に示されたＵＲＬに対応したＷｅｂページの中に、ＶＰＮ接続キーの情報が含まれていてもよい。
【００６２】
また、ＶＰＮクライアントアプリケーションに対応する固有のプロトコルで登録通知情報がホストＲ１に提供される場合は、そのアプリケーションがＶＰＮ接続キーの取得指示のためのユーザインタフェース画面を提供する。ユーザがその画面を用いて取得指示を行うと、そのアプリケーションが登録通知情報に含まれる識別情報を含んだ取得要求をＶＰＮサーバ１００に発する。ＶＰＮサーバ１００は、その要求に対してＶＰＮ接続キーを返す。なお、ステップＳ５でホストＲ１に送信する登録通知情報の中に、ＶＰＮ接続キーを含めておいてもよい。
【００６３】
図５にはホストＲ１にＶＰＮ接続キーを配布する場合を代表して示したが、ホストＬ２，Ｌ３にも同様にしてＶＰＮ接続キーを配布される。このようにして、仮想ネットワークＮ１に対応するＶＰＮ接続キーが各メンバに行き渡る。各メンバは、そのＶＰＮ接続キーをＶＰＮサーバ１００に提示して接続要求を行うことで、仮想ネットワークＮ１に参加する。
【００６４】
図５の例では、まずホストＬ１がＶＰＮサーバ１００に対してＶＰＮ接続要求を発する（Ｓ８）。このＶＰＮ接続要求には、ホストＬ１がステップＳ３で取得したＶＰＮ接続キーが含まれる。なお、ＶＰＮ接続要求に、ホストＬ１のノードＩＤ及び仮想ネットワークＮ１のグループＩＤを組み込んでもよい。
【００６５】
ホストＬ１からＶＰＮ接続要求を受け取ったＶＰＮサーバ１００は、ホストＬ１を認証する（Ｓ９）。この認証では、そのＶＰＮ接続要求に含まれるＶＰＮ接続キーが、ＶＰＮサーバ１００が過去に発行した正当なキーであるか否かを判定する。また、例えば、ＶＰＮサーバ１００に各ホスト（又はそのユーザ）の認証情報をＶＰＮ接続キー（又はノードＩＤとグループＩＤの組）に対応づけてあらかじめ登録しておき、ＶＰＮ接続要求を発行したホストに対し、その認証情報の提示をホストＬ１に求めてもよい。この場合、そのホストから、そのＶＰＮ接続キーに対応する正しい認証情報が提示された場合には、正しいホストからの要求であると判定すればよい。このような認証の代わりに、或いはこのような認証に加え、ＶＰＮ接続要求にＶＰＮ接続要求に加えノードＩＤ及びグループＩＤが含まれる場合には、それら３つの値の組が認証情報ＤＢ１１８に登録されている組合せに合致するか否かを判定してもよい。合致した場合に、正当なホストＬ１からの要求と判定すればよい。
【００６６】
ＶＰＮサーバ１００は、ステップＳ８のＶＰＮ接続要求が正当なホストＬ１からのものであると判定すると、ホストＬ１に仮想ネットワークＮ１のネットワークアドレスに属する仮想ＩＰアドレスを提供する（Ｓ１０）。また、ＶＰＮサーバ１００は、ホストＬ１に提供した仮想ＩＰアドレスに応じて、その仮想ＩＰアドレスを送信元又は宛先として含むパケットが正しくルーティングされるよう、ＶＰＮルーティング規則１１６を設定する。なお、ホストＬ１からＶＰＮ接続要求にはホストＬ１の実ＩＰアドレスの情報が含まれるので、提供した仮想ＩＰアドレスとその実ＩＰアドレスの情報に基づき、その仮想ＩＰアドレス宛のパケットがホストＬ１に到達するようなルーティング規則を設定すればよい。仮想ＩＰアドレスを受け取ったホストＬ１は、その仮想ＩＰアドレス宛のパケットを受信するように、各種の設定を行う。これにより、ホストＬ１は、仮想ネットワークＮ１に参加したことになる。
【００６７】
また、同様に、ホストＲ１がＶＰＮ接続キー等を含んだＶＰＮ接続要求をＶＰＮサーバ１００に発すると（Ｓ１１）、ＶＰＮサーバ１００はホストＲ１の認証を行う（Ｓ１２）。その認証が成功すると、ＶＰＮサーバ１００は、ホストＲ１に対し仮想ネットワークＮ１内の一意な仮想ＩＰアドレスを提供する（Ｓ１３）。また、その仮想ＩＰアドレスに応じてＶＰＮルーティング規則１１６を設定する。その仮想ＩＰアドレスを受け取ったホストＲ１は、その仮想ＩＰアドレス宛のパケットを受信するように、各種の設定を行う。これにより、ホストＲ１は、仮想ネットワークＮ１に参加したことになる。
【００６８】
図５の例では、ホストＬ１及びＲ１が仮想ネットワークＮ１に参加する手順を代表として示したが、ホストＬ２，Ｌ３にも同様にして仮想ネットワークＮ１に参加すればよい。仮想ネットワークＮ１に参加した各メンバは、その仮想ネットワークＮ１内の仮想ＩＰアドレスを用いて通信する。なお、ＶＰＮサーバ１００は、ホストのホスト名又はノードＩＤからそのホストの仮想ＩＰアドレスを求めるための対応表を作成し、この対応表に基づきネームサーバ機能を各ホストに提供してもよい。
【００６９】
次に、上記実施形態の変形例を、図６〜図９を参照して説明する。上記実施形態ではホストからＶＰＮ接続要求（Ｓ８又はＳ１１）を受けたＶＰＮサーバ１００は、その要求に含まれるＶＰＮ接続キーが正当なものであれば、そのホストに対し、仮想ネットワークへの参加を許可した。これに対し、以下に示す変形例では、仮想ネットワークへの参加を認めるのに、更に仮想ネットワークの管理者に承認を求めるようにする。この変形例では、仮想ネットワークの形成指示（Ｓ１）を行ったユーザを、当該仮想ネットワークの管理者とする。ここで、仮想ネットワークの管理者が、当該仮想ネットワークに招待したメンバに対し、当該仮想ネットワークの管理者の権限を付与できるようにしてもよい。この場合、１つの仮想ネットワークに複数の管理者が存在する場合も生じる。このように追加した管理者に、仮想ネットワークに対してメンバを登録（Ｓ５）する権限を与えてもよい。
【００７０】
この変形例におけるＶＰＮサーバ１００は、図２に示した上記実施形態のＶＰＮサーバ１００に承認ポリシーＤＢ１２２を追加したものである（図６参照）。承認ポリシーＤＢ１２２は、図７に示すように、各仮想ネットワークのグループＩＤに対応づけて承認ポリシー情報を記憶している。
【００７１】
仮想ネットワークの承認ポリシー情報は、あるメンバから仮想ネットワークへの参加の承認を要求された場合に、その要求に対する当該仮想ネットワークの管理者からの回答がどのような値である場合にその参加を承認するかを規定する情報である。例えば、１つの仮想ネットワークに対して複数の管理者が存在する場合に、それらすべての管理者からの承認が得られた場合に参加を認めるというポリシーが考えられる。また、１つの仮想ネットワークに対応する複数の管理者のうちの所定人数（例えば１人）以上の承認が得られたら参加を認めるというポリシーも考えられる。このような承認ポリシーは、仮想ネットワークごとに定めることができる。ＶＰＮサーバ１００は、仮想ネットワークの管理者に対し、承認ポリシーの選択肢を示すユーザインタフェース画面を提供し、管理者から当該仮想ネットワークに適用する承認ポリシーの選択を受け付け、選択されたポリシーを当該仮想ネットワークのグループＩＤと対応づけて承認ポリシーＤＢ１２２に登録すればよい。
【００７２】
この変形例では、認証情報ＤＢ１１８に対し、図８に示すように、各メンバのノードＩＤ及びグループＩＤの組合せに対応づけて、そのメンバの権限が登録されている。この例では、権限には「管理者」と「ゲスト」の２種類が存在する。「管理者」は、当該グループＩＤに対応する仮想ネットワークの管理者であり、「ゲスト」権限のメンバからの参加要求に対する承認権限を持つ。「ゲスト」は、いわゆる一般ユーザであり、仮想ネットワークに参加するには「管理者」からの承認が必要である。
【００７３】
この変形例における仮想ネットワーク形成の手順を、図９を参照して説明する。この手順は、図５に示した上記実施形態の手順に対し、ステップＳ１４〜Ｓ１５を追加したものであり、ステップＳ１〜Ｓ１０までは上記実施形態と同様の処理でよい。
【００７４】
この変形例では、ＶＰＮ接続制御部１１２は、メンバからＶＰＮ接続キーを含んだＶＰＮ接続要求を受け取った場合、そのＶＰＮ接続キーに対応づけて認証情報ＤＢ１１８に登録されているそのメンバの権限を認証情報ＤＢ１１８から求める。そして、求めた権限が「管理者」であり、そのメンバの認証が成功すれば、そのメンバに対して仮想ＩＰアドレスを発行して仮想ネットワークへの参加を認める。ステップＳ８〜Ｓ１０に示したホストＬ１からの接続要求の場合がその一例である。これに対し、ＶＰＮ接続要求を発したメンバの権限が「ゲスト」である場合、ＶＰＮ接続制御部１１２は、そのメンバを認証すると共に（Ｓ１２）、その認証が成功した場合、当該仮想ネットワークの各管理者に対し、そのメンバの参加を承認するか否かを問い合せるための承認要求を送る（Ｓ１４）。図９の例では、「ゲスト」権限のホストＲ１からの仮想ネットワークＮ１への接続要求（Ｓ１１）に対し、ＶＰＮサーバ１００は、Ｎ１の管理者であるホストＬ１に対して承認要求（Ｓ１４）を送っている。承認要求は、どのメンバがどの仮想ネットワークに対する参加を求めているのかを示す情報が含まれる。ＶＰＮ接続制御部１１２が管理者に送る承認要求は、例えば、承認するか否かを入力するための入力ボタンを表示したＷｅｂページのＵＲＬを含むものでよい。管理者は、その承認要求に対して、承認するか否かの回答を入力する。すると管理者のコンピュータからＶＰＮ接続制御部１１２にその回答が送信される（Ｓ１５）。仮想ネットワークに対応する管理者群からの回答が、当該仮想ネットワークに対応する承認ポリシーを満たす場合、ＶＰＮ接続制御部１１２は、ＶＰＮ接続要求を発したメンバに対して仮想ＩＰアドレスを提供し、当該仮想ネットワークへの参加を認める（Ｓ１３）。例えば、当該仮想ネットワークの承認ポリシーが、すべての管理者から承認が得られた場合にのみ参加を認めるというものである場合、ＶＰＮ接続制御部１１２は、当該仮想ネットワークのすべての管理者から承認が得られた場合に、当該メンバの参加を認める。
【００７５】
なお、仮想ネットワークの形成指示を発したユーザを当該仮想ネットワークの唯一の管理者とする構成では、承認ポリシーは必要なく、メンバの参加を認めるか否かはその管理者の回答に基づき判定すればよい。
【００７６】
以上に説明した実施形態及び変形例では、登録された各メンバに対してＶＰＮサーバ１００が個別に登録通知情報を送信し、それらメンバがその登録通知情報を用いてＶＰＮ接続キーを取得した。しかしこのような手順は一例に過ぎない。この代わりに、メンバ登録要求（Ｓ４）により登録された各メンバに対応するＶＰＮ接続キーを、ＶＰＮサーバ１００からその登録要求を行ったホストに対して提供し、そのホストから各メンバに対してＶＰＮ接続キーを（例えば電子メールなどで）配布してもよい。
【００７７】
また、以上では、リモートホストＲ１とＬＡＮ２００との間で仮想ネットワークを形成する場合を例にとって説明したが、それぞれがＶＰＮサーバ１００により管理される２以上のＬＡＮ内のホスト間でも、同様にして仮想ネットワークが形成できる。
【００７８】
また以上の例では、ルータ機能とＶＰＮ接続制御機能とを兼ね備えた１台のＶＰＮサーバ１００を用いたが、ＶＰＮサーバ１００を、上記実施形態のＶＰＮルーティングを行うＶＰＮ接続制御装置と、通常のＩＰルーティングを行うルータとの組合せに置き換えて、同様の制御を行うようにしてもよい。
【００７９】
また、以上の例では、仮想ネットワークのメンバに対して、当該仮想ネットワーク上の仮想ＩＰアドレスを付与したが、これは必ずしも必須のことではない。仮想ネットワークのメンバである各ホストの実ＩＰアドレスに重複がない場合は、ＶＰＮサーバ１００は、それら各メンバの実ＩＰアドレスを当該仮想ネットワークのグループＩＤに対応づけて記憶していればよい。そして、ＶＰＮサーバ１００は、ＶＰＮパケットを受け取った場合、送信元及び宛先のＩＰアドレスが同じグループＩＤに対応づけられていれば、送信元と宛先が同じ仮想ネットワークに属すると判定すればよい。
【００８０】
また既に形成されている仮想ネットワークに対してメンバを追加する場合、上記のシステムでは、例えば仮想ネットワークの形成を指示した人又はその人が任命した管理者が、ＶＰＮサーバ１００に対し、追加するメンバの登録指示を行えばよい。ＶＰＮサーバ１００はその指示に応じてその追加メンバに対して登録通知情報を送り、追加メンバはその登録通知情報を用いてＶＰＮ接続キーを取得し、そのキーを用いてその仮想ネットワークに参加する。
【００８１】
また、あるＬＡＮから仮想ネットワークに参加していたモバイル端末が、移動して、別のＬＡＮから再び同じ仮想ネットワークに参加しようとする場合も考えられる。このような場合、上述のシステムでは、モバイル端末は、その仮想ネットワークのＶＰＮ接続キーを移動前に既に持っているので、移動後にそのキーをＶＰＮサーバ１００に提示すればよい。
【００８２】
また既に形成されている仮想ネットワークのメンバを削除する場合、上述のシステムでは、仮想ネットワークの構成を示す認証情報ＤＢ１１８（図４又は図８参照）から、そのメンバのノードＩＤとその仮想ネットワークのグループＩＤの組合せに対応するエントリ（特にＶＰＮ接続キー）を削除（又は無効化）すればよい。削除されたメンバが、仮に昔のＶＰＮ接続キーをＶＰＮサーバ１００に提示してその仮想ネットワークへの参加を要求したとしても、そのＶＰＮ接続キーは既に無効化されているので、その要求は認められない。
【００８３】
以上に例示したサーバＡ１００及びサーバＢ２００は、典型的には汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、図１０に示すように、ＣＰＵ４００等のマイクロプロセッサ、ランダムアクセスメモリ（ＲＡＭ）４０２およびリードオンリメモリ（ＲＯＭ）４０４等のメモリ（一次記憶）、ＨＤＤ（ハードディスクドライブ）４０６を制御するＨＤＤコントローラ４０８、各種Ｉ／Ｏ（入出力）インタフェース４１０、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース４１２等が、たとえばバス４１４を介して接続された回路構成を有する。また、そのバス４１４に対し、例えばＩ／Ｏインタフェース４１０経由で、ＣＤやＤＶＤなどの可搬型ディスク記録媒体に対する読み取り及び／又は書き込みのためのディスクドライブ４１６、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び／又は書き込みのためのメモリリーダライタ４１８、などが接続されてもよい。実施形態又は変形例の処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、画像形成装置にインストールされる。固定記憶装置に記憶されたプログラムがＲＡＭ４０２に読み出されＣＰＵ４００等のマイクロプロセッサにより実行されることにより、実施形態又は変形例の処理が実現される。
【図面の簡単な説明】
【００８４】
【図１】ネットワーク構成の一例を示す図である。
【図２】ＶＰＮサーバの構成の一例を示す図である。
【図３】ＶＰＮ・グループＩＤ対応情報ＤＢのデータ内容の一例を示す図である。
【図４】認証情報ＤＢのデータ内容の一例を示す図である。
【図５】仮想ネットワークの形成の手順の一例を示す図である。
【図６】変形例におけるＶＰＮサーバの内部構成の一例を示す。
【図７】変形例における承認ポリシーＤＢのデータ内容の一例を示す図である。
【図８】変形例における認証情報ＤＢのデータ内容の一例を示す図である。
【図９】変形例における仮想ネットワークの形成の手順の一例を示す図である。
【図１０】コンピュータのハードウエア構成の一例を示す図である。
【符号の説明】
【００８５】
１００  ＶＰＮサーバ、１０２  ＶＰＮ形成指示受付部、１０４  メンバ登録指示受付部、１０６  ＶＰＮ設定部、１０８  メンバ登録通知部、１１０  接続キー発行部、１１２  ＶＰＮ接続制御部、１１４  経路制御部、１１６  ＶＰＮルーティング規則、１１８  認証情報ＤＢ、１２０  ＶＰＮ・グループＩＤ対応情報ＤＢ。
【図１】
2008301165.tif 000003
【図２】
2008301165.tif 000004
【図３】
2008301165.tif 000005
【図４】
2008301165.tif 000006
【図５】
2008301165.tif 000007
【図６】
2008301165.tif 000008
【図７】
2008301165.tif 000009
【図８】
2008301165.tif 000010
【図９】
2008301165.tif 000011
【図１０】
2008301165.tif 000012
【手続補正書】
【提出日】平成19年10月11日(2007.10.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段と、
前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段と、
前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段と、
前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段と、
情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段と、
情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段と、
を備える仮想ネットワーク接続装置。
【請求項２】
前記仮想ネットワーク識別子に対応づけて１以上の承認者アドレスを記憶する第２の記憶手段、を更に備え、
前記対応づけ処理手段は、情報処理装置から前記接続許可情報を伴う前記接続要求を受け取った場合に、前記接続許可情報に対応する仮想ネットワーク識別子に対応する承認者アドレスを前記第２の記憶手段に基づき判定し、判定した承認者アドレスに対して当該情報処理装置からの接続を承認するか否かについての問合せを行い、この問合せに対する回答に応じて当該情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定する、
ことを特徴とする請求項１記載の仮想ネットワーク接続装置。
【請求項３】
仮想ネットワーク識別子ごとに、当該仮想ネットワーク識別子と対応づけられた各承認者アドレスからの回答から当該情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定するための承認規則を記憶する第３の記憶手段を備え、
前記対応づけ処理手段は、前記接続要求に伴った接続許可情報に対応する仮想ネットワーク識別子に対応する各承認者アドレスからの回答と、当該仮想ネットワーク識別子に対応する承認規則とに基づき、前記情報処理装置のアドレスを前記仮想ネットワーク識別子に対応づけるか否かを判定する、
ことを特徴とする請求項２記載の仮想ネットワーク接続装置。
【請求項４】
前記第１の登録手段が前記情報処理装置に対し発行した接続許可情報に対応づけられた通知情報を前記情報処理装置に対して送信する通知送信手段、
を更に備えることを特徴とする請求項１記載の仮想ネットワーク接続装置。
【請求項５】
コンピュータを、
仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段、
前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段、
前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段、
前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段、
情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段、
情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段、
として機能させるためのプログラム。
【請求項６】
仮想ネットワーク接続装置と１以上の情報処理装置とを備え、
前記仮想ネットワーク接続装置は、
仮想ネットワークを形成する形成指示を受け付ける形成指示受付手段と、
前記形成指示受付手段が受け付けた前記形成指示に応じて一意な仮想ネットワーク識別子を割り当てる識別子割当手段と、
前記仮想ネットワークを構成する情報処理装置の指定を受け付ける指定受付手段と、
前記指定受付手段に対し指定された情報処理装置に対して接続許可情報を発行し、発行した接続許可情報を、前記識別子割当手段が割り当てた前記仮想ネットワーク識別子に対応づけて第１の記憶手段に登録する第１の登録手段と、
情報処理装置から前記接続許可情報を伴う接続要求を受け取った場合に、前記接続許可情報に対応した仮想ネットワーク識別子を前記第１の記憶手段に基づき判定し、判定した仮想ネットワーク識別子に当該情報処理装置のアドレスを対応づけるための処理を行う対応づけ処理手段と、
情報処理装置から送信元アドレスと宛先アドレスとを含んだ伝送情報を受け取った場合に、前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とを判定し、判定した前記送信元アドレスに対応する仮想ネットワーク識別子と前記宛先アドレスに対応する仮想ネットワーク識別子とに基づいて、前記伝送情報を前記宛先アドレスに向けて送信する制御を行う送信制御手段と、
を備え、
前記情報処理装置は、
前記接続許可情報を伴う接続要求を前記仮想ネットワーク接続装置に送信する手段と、
送信元アドレスと宛先アドレスとを含んだ伝送情報を送信する手段と、
を備える、
ことを特徴とする仮想ネットワークシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
（１２）パケットの送信元及び宛先が共に実ＩＰアドレスであり、且つそれら送信元と宛先のペアが規則（９）〜（１１）のいずれにも合致しない場合、そのパケットをその送信先へとルーティングする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００６５
【補正方法】変更
【補正の内容】
【００６５】
ホストＬ１からＶＰＮ接続要求を受け取ったＶＰＮサーバ１００は、ホストＬ１を認証する（Ｓ９）。この認証では、そのＶＰＮ接続要求に含まれるＶＰＮ接続キーが、ＶＰＮサーバ１００が過去に発行した正当なキーであるか否かを判定する。また、例えば、ＶＰＮサーバ１００に各ホスト（又はそのユーザ）の認証情報をＶＰＮ接続キー（又はノードＩＤとグループＩＤの組）に対応づけてあらかじめ登録しておき、ＶＰＮ接続要求を発行したホストに対し、その認証情報の提示をホストＬ１に求めてもよい。この場合、そのホストから、そのＶＰＮ接続キーに対応する正しい認証情報が提示された場合には、正しいホストからの要求であると判定すればよい。このような認証の代わりに、或いはこのような認証に加え、ＶＰＮ接続要求にＶＰＮ接続キーに加えノードＩＤ及びグループＩＤが含まれる場合には、それら３つの値の組が認証情報ＤＢ１１８に登録されている組合せに合致するか否かを判定してもよい。合致した場合に、正当なホストＬ１からの要求と判定すればよい。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００８３
【補正方法】変更
【補正の内容】
【００８３】
以上に例示したサーバ１００は、典型的には汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、図１０に示すように、ＣＰＵ４００等のマイクロプロセッサ、ランダムアクセスメモリ（ＲＡＭ）４０２およびリードオンリメモリ（ＲＯＭ）４０４等のメモリ（一次記憶）、ＨＤＤ（ハードディスクドライブ）４０６を制御するＨＤＤコントローラ４０８、各種Ｉ／Ｏ（入出力）インタフェース４１０、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース４１２等が、たとえばバス４１４を介して接続された回路構成を有する。また、そのバス４１４に対し、例えばＩ／Ｏインタフェース４１０経由で、ＣＤやＤＶＤなどの可搬型ディスク記録媒体に対する読み取り及び／又は書き込みのためのディスクドライブ４１６、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び／又は書き込みのためのメモリリーダライタ４１８、などが接続されてもよい。実施形態又は変形例の処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがＲＡＭ４０２に読み出されＣＰＵ４００等のマイクロプロセッサにより実行されることにより、実施形態又は変形例の処理が実現される。