説明

中継サーバ及び中継通信システム

【課題】ネットワーク機器の構成の変化等に柔軟に対応できるVPNを構築可能な中継サーバを提供する。
【解決手段】中継サーバは、主要な構成として、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、通信制御部と、を備える。VPNグループ情報記憶部は、VPNグループを構成するルーティング機器及びルーティングセッションに関する情報を記憶する。アドレスフィルタ情報記憶部は、アドレスフィルタ情報をルーティング機器の識別情報と対応付けて記憶する。通信制御部は、自身に対応付けられたアドレスフィルタ情報に示されたルーティング対象装置のゲートウェイテーブルを設定するために、他のルーティング機器から取得したアドレスフィルタ情報を、当該ルーティング対象装置へ送信する制御を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、主として、異なるLAN(Local Area Network)に接続されている端末間の通信を可能とする中継サーバに関する。
【背景技術】
【0002】
従来から、仮想プライベートネットワーク(Virtual Private Network,VPN)と呼ばれる通信技術が知られている(例えば、特許文献1を参照)。このVPNは、例えば、地域ごとに設けられた複数の支社(拠点)のLANに接続された端末同士でインターネットを介して通信する用途に用いられている。前記VPNを利用すれば、遠隔地にある他のLANを、あたかも直接接続されているネットワークであるかのように使用することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002−217938号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、この種のシステムは硬直的なものになり易く、拡張性、柔軟性のあるシステムを構築することは容易でない。例えば、上記特許文献1のような通信システムは、システムを構成する機器のうち選択された一部の機器だけで仮想ネットワークを構築することはできない。
【0005】
また、例えばネットワーク機器の構成の変化、設定の変更等が生じた場合、これらの変更をシステム又は他の機器に反映させるための設定を手動で行わなければならないことがあった。この場合、ユーザにとって手間が掛かるとともに、ネットワーク機器の構成等が頻繁に変化する状況に柔軟に対応することが困難であった。
【0006】
本発明は以上の事情に鑑みてされたものであり、その主要な目的は、ネットワーク機器の構成の変化等に柔軟に対応できるVPNを構築可能な中継サーバを提供することにある。
【課題を解決するための手段及び効果】
【0007】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【0008】
本発明の第1の観点によれば、以下の構成の中継サーバが提供される。即ち、この中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、通信制御部と、を備える。前記中継グループ情報記憶部は、自身(中継サーバ)との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに接続されるクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継グループの情報及び前記中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及び互いに接続される前記ルーティング機器を示すルーティングセッション情報を記憶する。前記アドレスフィルタ情報記憶部は、パケットの転送先として前記ルーティング機器が指定可能なルーティング対象装置のアドレスを示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。前記通信制御部は、自身(中継サーバ)に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置へ、他の前記ルーティング機器から取得した前記アドレスフィルタ情報を送信し、ルーティング対象装置がパケットを送信する際のゲートウェイを決定するために当該ルーティング対象装置が記憶するゲートウェイテーブルを設定させる制御を行う。
【0009】
これにより、中継サーバは、中継通信システムを構成する他の通信機器(他の中継サーバ及びクライアント端末)から選択されたルーティング機器とVPNを構築できるため、必要な通信機器との間でのみファイルの共有等を行うことができる。また、中継サーバは、パケットを届けるときに当該中継サーバを経由する必要がある送信先を、ルーティング対象装置に通知することができる。この中継サーバの通知内容を活用することにより、ルーティング対象装置のゲートウェイテーブルを自動的に設定することが可能になるため、ゲートウェイテーブルを設定する手間を省くことができる。
【0010】
前記の中継サーバにおいては、通信制御部は、仮想プライベートネットワークの開始時に、他の前記ルーティング機器から前記アドレスフィルタ情報を取得するとともに、当該アドレスフィルタ情報を、自身(中継サーバ)に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置に対して送信することが好ましい。
【0011】
これにより、中継サーバは、他のルーティング機器に対応付けられた最新のアドレスフィルタ情報を取得することができる。従って、ルーティング対象装置に設定されるゲートウェイテーブルをより的確なものにすることができる。
【0012】
前記の中継サーバにおいては、通信制御部は、VPNグループを構成する前記ルーティング機器に変更があったとき、又は前記ルーティング機器に対応付けられた前記アドレスフィルタ情報に変更があったときに、他の前記ルーティング機器から前記アドレスフィルタ情報を取得するとともに、当該アドレスフィルタ情報を、自身(中継サーバ)に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置に対して送信することが好ましい。
【0013】
これにより、VPNグループの変化等に応じてゲートウェイテーブルを自動的に更新させることが可能となるため、ネットワークの構成の変化等に柔軟に対応可能なVPNを構築することができる。
【0014】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、この中継サーバは、転送先ゲートウェイのアドレスを記憶する転送先ゲートウェイ記憶部を備える。自身と対応付けられた前記アドレスフィルタ情報にアドレスの範囲の形式で指定された記述が含まれているとき(包括的なアドレスが設定されているとき)は、前記通信制御部は、仮想プライベートネットワークが開始されている場合においては、当該包括的なアドレスに含まれるアドレスを有するルーティング対象装置から受信したパケットである振分け対象パケットの送信先が、前記ルーティング機器と対応付けられた前記アドレスフィルタ情報において指定されているときは、自身(中継サーバ)と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器に当該振分け対象パケットを転送する。前記通信制御部は、前記振分け対象パケットの送信先が、前記ルーティング機器と対応付けられた前記アドレスフィルタ情報において指定されていないときは、前記転送先ゲートウェイ記憶部に記憶された転送先ゲートウェイへ当該振分け対象パケットを転送する。
【0015】
即ち、自身と対応付けられたアドレスフィルタ情報に包括的なアドレスが設定されている場合は、他のルーティング機器から取得したアドレスフィルタ情報の送信相手であるルーティング対象装置が特定できないため、ルーティング対象装置側でゲートウェイテーブルを自動的に設定することができない。この点、上記の構成では、中継サーバにおいて転送先ゲートウェイのアドレスを適切に設定するとともに、それぞれのルーティング対象装置において当該中継サーバがデフォルトゲートウェイになるように設定することで、VPNを利用したパケットのやり取り及びVPNを利用しないパケットのやり取りの両方を適切に行うことができる。
【0016】
前記の中継サーバにおいては、前記通信制御部は、仮想プライベートネットワークが開始されていない場合においては、前記振分け対象パケットを、前記転送先ゲートウェイ記憶部に記憶された転送先ゲートウェイへ転送することが好ましい。
【0017】
これにより、VPNが開始されているときは、当該VPNを利用したパケットのやり取りを行うことができるとともに、VPNが開始されていない(停止された)ときは、特に手動で設定を行うことなく、LAN等を利用したパケットのやり取りを行うことができる。
【0018】
本発明の第2の観点によれば、以下の構成の中継通信システムが提供される。即ち、この中継通信システムは、複数の中継サーバと、クライアント端末と、を備える。前記クライアント端末は、前記中継サーバを介して互いに接続可能である。前記中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、通信制御部と、を備える。前記中継グループ情報記憶部は、当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継サーバ及び前記クライアント端末のうちルーティングポイントとして設定されたルーティング機器で構成され、当該ルーティング機器間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及び互いに接続される前記ルーティング機器を示すルーティングセッション情報を記憶する。前記アドレスフィルタ情報記憶部は、パケットの転送先として前記ルーティング機器が指定可能なルーティング対象装置のアドレスを示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。前記通信制御部は、前記ルーティング機器に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置へ、他の前記ルーティング機器から取得した前記アドレスフィルタ情報を送信し、ルーティング対象装置がパケットを送信する際のゲートウェイを決定するために当該ルーティング対象装置が記憶するゲートウェイテーブルを設定させる制御を行う。
【0019】
これにより、中継サーバ及びクライアント端末から選択されたルーティング機器を用いてVPNを構築できるため、必要な機器との間でのみファイルの共有等を行うことが可能となる。また、中継サーバは、パケットを届けるときに当該中継サーバを経由する必要がある送信先を、ルーティング対象装置に通知することができる。この中継サーバの通知内容を活用することにより、ルーティング対象装置のゲートウェイテーブルを自動的に設定することが可能になるため、ゲートウェイテーブルを設定する手間を省くことができる。
【図面の簡単な説明】
【0020】
【図1】本発明の一実施形態に係る中継通信システムの全体構成を示す説明図。
【図2】中継サーバの機能ブロック図。
【図3】中継グループ情報の内容を示す図。
【図4】中継サーバ情報の内容を示す図。
【図5】クライアント端末情報の内容を示す図。
【図6】VPNグループ情報の内容を示す図。
【図7】アドレスフィルタ情報記憶部の記憶内容の一例を示す図。
【図8】VPNグループを作成する処理を示すフローチャート。
【図9】VPNを開始する処理を示すフローチャート。
【図10】VPNを開始する処理を示すフローチャート。
【図11】VPNグループを作成する通信処理及びアドレスフィルタ情報を更新する通信処理を示すシーケンス図。
【図12】ルーティングセッションを確立する通信処理及びパケットの送信を行う通信処理を示すシーケンス図。
【図13】ルーティング対象装置に設定されるゲートウェイテーブルの一例を示す図。
【図14】ゲートウェイテーブルを作成及び更新させるための処理を示すフローチャート。
【図15】ゲートウェイテーブルを作成及び更新させるための処理を示すフローチャート。
【図16】アドレスフィルタ情報記憶部の記憶内容において、包括的なアドレスがアドレスフィルタ情報に設定されている例を示す図。
【図17】アドレスフィルタ情報において包括的なアドレスが設定されている場合において、ルーティング機器がパケットを受信したときに行う処理を示す図。
【図18】VPNグループを終了する通信処理を示すシーケンス図。
【図19】ルーティングを停止するときの処理を示すフローチャート。
【発明を実施するための形態】
【0021】
次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本発明の一実施形態に係る中継通信システム100の全体構成を示す説明図である。
【0022】
図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数のLAN10,20,30等で構成されている。それぞれのLAN10,20,30は、限定された場所で構築される比較的小規模なネットワークであり、それぞれが物理的に離れた場所に配置されている。なお、本実施形態ではWAN80としてインターネットが使用されている。
【0023】
以下、それぞれのLANを具体的に説明する。図1に示すように、LAN10には、中継サーバ1と、クライアント端末11と、通信装置12と、が接続されている。LAN20には、中継サーバ2と、クライアント端末21と、通信装置22と、通信装置23と、が接続されている。LAN30には、中継サーバ3と、クライアント端末31と、ファイルサーバ32と、が接続されている。また、LAN30には、ルータ35を介して別のLAN36が接続されている。このLAN36には、ファイルサーバ37が接続されている。
【0024】
それぞれの中継サーバ1,2,3は、LAN10,20,30だけでなくWAN80にも接続されているため、同一のLANに接続されたクライアント端末と通信可能であるだけでなく、他のLANに配置された中継サーバと通信可能となっている。そのため、中継サーバ1,2,3には、グローバルIPアドレスに加えてプライベートIPアドレスが付与されている。
【0025】
クライアント端末11,21,31は、例えばパーソナルコンピュータで構成されており、中継サーバ1,2,3等を介して相互に通信を行うことができる。通信装置12,22,23は、例えばパーソナルコンピュータで構成されており、自身が接続されるLAN等を介して、このLANに接続される端末にパケットを送信可能である。ファイルサーバ32,37は、例えばネットワーク接続ストレージで構成されており、自身が接続されるLAN等を介して、このLANに接続される端末にパケットを送信可能である。
【0026】
次に、中継サーバ1,2,3について説明する。なお、これらの3つの中継サーバは、一部の記憶内容を除いて略同一の構成であるため、代表して中継サーバ3について説明する。初めに、図2を参照して、中継サーバ3が備える構成について説明する。図2は、中継サーバ1,2,3の機能ブロック図である。
【0027】
図2に示すように、中継サーバ3は、記憶部50と、制御部60と、インタフェース部70と、を備えている。
【0028】
インタフェース部70は、プライベートIPアドレスを利用して、LAN30,36に接続される端末に対して通信を行うことができる。また、インタフェース部70は、グローバルIPアドレスを利用して、WAN80を経由した通信を行うことができる。
【0029】
制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信を制御することができる。図2に示すように、制御部60は、インタフェースドライバ61と、LAN側IPパケット処理部62と、通信制御部63と、WAN側IPパケット処理部64と、を備えている。
【0030】
インタフェースドライバ61は、インタフェース部70を制御するドライバソフトウェアである。LAN側IPパケット処理部62は、LAN30,36から受信したパケットに適宜の処理を行って通信制御部63に出力する。WAN側IPパケット処理部64は、WAN80から受信したパケットに適宜の処理を行って通信制御部63に出力する。
【0031】
通信制御部63は、受信したパケットについて、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて送信先を決定し、決定した送信先へ当該パケットを送信する。また、通信制御部63は、他の端末から受信した情報に基づいて、記憶部50の記憶内容を更新させることができる。
【0032】
記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種データを保存可能である。記憶部50は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、クライアント端末情報記憶部53と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、転送先ゲートウェイ記憶部56と、を備えている。以下、図3から図7までを参照して、記憶部50の記憶内容について説明する。図3は、中継グループ情報の内容を示す図である。図4は、中継サーバ情報の内容を示す図である。図5は、クライアント端末情報の内容を示す図である。図6は、VPNグループ情報の内容を示す図である。図7は、アドレスフィルタ情報の内容を示す図である。
【0033】
中継グループ情報記憶部51は、中継グループと、当該中継グループを構成する中継サーバと、を示した中継グループ情報を記憶している。
【0034】
図3に示すように、中継グループ情報においては、groupタグと、このgroupタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関するグループ情報511が記述されている。このグループ情報511としては、中継グループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、中継グループの名称(「name」)と、が記述されている。siteタグには、中継グループを構成する中継サーバに関するグループ構成情報512が記述されている。このグループ構成情報512には、当該中継サーバの識別情報(「id」)が記述されている。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、特定の中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
【0035】
なお、この中継グループ情報は、当該中継グループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいて中継グループを変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継グループ情報が更新される。このようにして、中継グループ情報が動的に共有される。
【0036】
中継サーバ情報記憶部52は、中継通信を行う中継サーバ及び当該中継サーバに所属するクライアント端末の概要を示す中継サーバ情報を記憶している。
【0037】
図4に示す中継サーバ情報においては、中継サーバごとに記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには、中継サーバに関するサーバ情報521が記述されている。このサーバ情報521としては、中継サーバの識別情報(「id」)と、中継サーバの名称(「name」)と、起動情報(「stat」)と、が記述されている。なお、statの内容が「active」の場合は中継サーバが中継通信システム100にログインしていることを示し、statが空欄であるときはログオフ中であることを示す。siteタグの子要素であるnodeタグには、中継サーバに所属するクライアント端末を示す所属情報522が記述されている。所属情報522としては、所属する中継グループの名称(「group」)と、クライアント端末の識別情報(「id」)と、クライアント端末の名称(「name」)と、ログイン先の中継サーバの識別情報(「site」)と、が記述されている。なお、クライアント端末が中継サーバ(中継通信システム100)にログインしていないときは、「site」は空欄となる。
【0038】
なお、中継グループによる通信は、上記の中継グループ情報及び中継サーバ情報に基づいて、以下のようにして行われる。例えばクライアント端末11からクライアント端末21にパケットを送信する場合、初めに、クライアント端末11は、自身が接続している中継サーバである中継サーバ1にパケットを送信する。なお、パケットのやり取りが可能な中継サーバは上記の中継グループ情報に基づいて把握することができ、中継サーバに所属しているクライアント端末の識別情報及び接続の可否は上記の中継サーバ情報に基づいて把握することができる。中継サーバ1は、これらの情報に基づいて、クライアント端末21が接続している中継サーバである中継サーバ2にパケットを送信する。そして、この中継サーバ2がクライアント端末21にパケットを送信する。このようにして、クライアント端末11,21同士で中継通信を行うことができる。
【0039】
この中継サーバ情報も中継グループ情報と同様に、当該中継グループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいて中継サーバ情報を変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継サーバ情報が更新される。このようにして、中継サーバ情報が動的に共有される。
【0040】
クライアント端末情報記憶部53は、クライアント端末に関する詳細な情報であるクライアント端末情報を記憶している。なお、中継サーバ1,2,3は、自身に所属するクライアント端末に関するクライアント端末情報のみを記憶している。例えば、中継サーバ1には、図1に示すようにクライアント端末11が所属しているため、中継サーバ1が備えるクライアント端末情報記憶部53には、クライアント端末11のクライアント端末情報のみが記憶されている。
【0041】
中継サーバ1のクライアント端末情報記憶部53が記憶するクライアント端末情報は、図5(a)に示されている。同様に、中継サーバ2が記憶するクライアント端末情報が図5(b)に、中継サーバ3が記憶するクライアント端末情報が図5(c)に、それぞれ示されている。
【0042】
図5に示すクライアント端末情報においては、nodeタグが記述されている。このnodeタグには、クライアント端末のプライベートIPアドレス(「addr」)と、所属する中継グループの名称(「group」)と、識別情報(「id」)と、名称(「name」)と、中継サーバにログインするためのパスワード(「pass」)と、ポート情報(「port」)と、が記述されている。
【0043】
VPNグループ情報記憶部54は、中継グループを構成する中継サーバ及びクライアント端末から選択された機器(以下、ルーティング機器と称する)で構成されたVPNグループに関する情報であるVPNグループ情報を記憶している。VPNグループは、中継グループ内で構成されるグループであり、ルーティング機器間にルーティングセッションを確立させることにより、仮想ネットワーク(VPN)を構築することができる。
【0044】
図6に示すVPNグループ情報においては、vnetタグが記述されている。このvnetタグには、VPNグループ基本情報541と、ルーティングポイント情報542と、ルーティングセッション情報543と、が記述されている。VPNグループ基本情報541には、VPNグループが所属する中継グループの名称(「group」)と、VPNグループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、VPNグループの名称(「name」)と、が記述されている。ルーティングポイント情報542には、VPNグループ間で通信を行うときにルーティングを行うルーティング機器の識別情報が記述されている。図6の例においては、ルーティング機器として、クライアント端末11と、クライアント端末21と、中継サーバ3と、が記述されている。ルーティングセッション情報543には、VPNグループにおいて互いに接続されるルーティング機器が記述されている。ルーティングセッション情報543において、ルーティング機器は、VPNグループでVPNを開始するためのルーティングセッション確立処理において、通信制御を最初に行う側(「sp(start point)」)と、その通信制御を受ける側「ep(end point)」と、に分けて定められている。なお、以下の説明では、ルーティングセッション確立のための通信制御を最初に行う側のルーティング機器を「始点」と、その通信制御を受ける側のルーティング機器を「終点」と、それぞれ称することがある。
【0045】
このVPNグループ情報も中継サーバ情報及び中継グループ情報と同様に、VPNグループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいてVPNグループ情報を変更する処理が行われた場合は、VPNグループを構成する他の中継サーバに対してその旨が送信されてVPNグループ情報が更新される。このようにして、VPNグループ情報が動的に共有される。なお、このVPNグループを作成する処理については後述する。
【0046】
アドレスフィルタ情報記憶部55は、中継サーバ3がルーティング機器(ルーティングポイント)として機能する場合に、どのような送信先を有するパケットであれば転送を行うのかを示すアドレスフィルタ情報を記憶している。
【0047】
図7(a)には、アドレスフィルタ情報記憶部55の記憶内容の概要が示されている。図7(a)において、右側の「ルーティング対象装置」の列は、転送が許可されるパケットの送信先を示している。従って、図7(a)の例でいうと、中継サーバ3がルーティング機器として機能する場合、当該中継サーバ3が受信したパケットの送信先が、通信装置12、通信装置22、通信装置23、あるいはファイルサーバ32であれば、中継サーバ3は当該パケットを他の機器へ転送する。この場合の転送先としては、パケットの送信先そのものである場合と、他のルーティング機器である場合と、の2通りが考えられる。一方で、パケットの送信先が上記の機器の何れでもない場合は、当該パケットを転送しない。
【0048】
従って、この「ルーティング対象装置」の列が、アドレスフィルタ情報に相当する。このアドレスフィルタ情報は、上記のとおり、パケットの転送の可否をその送信先に基づいて判断する(パケットをフィルタリングする)ために用いられる。
【0049】
図7(a)の左側の「ルーティング機器の名称」の列は、右側の列で示されるパケットの送信先に対して、パケットを直接的に送信可能なルーティング機器を示している。ここで、「直接的に送信可能」とは、ルーティング機器が、他のルーティング機器(ルーティングポイント)を経由させずに、その送信先にパケットを送信可能であることをいう。
【0050】
図7(a)の表に示すように、アドレスフィルタ情報記憶部55において、アドレスフィルタ情報は、当該アドレスフィルタ情報が示す送信先に対してパケットを直接的に送信可能なルーティング機器(自身を含む)に対応付けられた形で記憶される。従って、図7(a)の表は、転送を許可するパケットをフィルタリングする際に参照されるだけでなく、パケットの転送経路を決定する(パケットをルーティングする)目的でも用いられる。
【0051】
以下、中継サーバ3がルーティング機器として機能する場合の具体的な動作を詳細に説明する。
【0052】
即ち、図7(a)の例に照らせば、中継サーバ3が受信したパケットの送信先がファイルサーバ32である場合は、中継サーバ3は他のルーティング機器を介さず当該パケットをファイルサーバ32に送信することができる。従って、中継サーバ3は、受信したパケットをファイルサーバ32に転送する。
【0053】
一方で、中継サーバ3が受信したパケットの送信先が通信装置12である場合は、図7(a)を参照すると、当該パケットを通信装置12に届けるためには、他のルーティング機器であるクライアント端末11を経由させなければならないことが分かる。従って、中継サーバ3は先ずパケットをクライアント端末11に転送する。このパケットを受信したクライアント端末11は、ルーティング機器として機能し、当該パケットを更に通信装置12へ転送する。
【0054】
図7(b)にはアドレスフィルタ情報記憶部55の具体的な記憶内容が示されるが、この実質的な意味は図7(a)と同様である。この図7(b)に示すように、アドレスフィルタ情報記憶部55は、VPNで用いられるそれぞれのルーティング機器の識別情報と、当該ルーティング機器がパケットを直接的に送信可能なルーティング対象装置のIPアドレス及び名称と、を対応付けて記憶している。
【0055】
図7(b)の例では、中央の列の「ルーティング対象装置のIPアドレス」の内容は、何れの行においても、単一の機器(例えば、通信装置12)を特定できるように1つのIPアドレスが記述されている。一方で、詳細は後で図16を参照して説明するが、この部分には、いわゆるネットマスクを利用する等して、複数のIPアドレスをまとめて指定するような記述(例えばLAN全体を指すような記述)も可能になっている。このように、アドレスフィルタ情報としては、単一のアドレスを個別的に設定することも、複数のアドレスをまとめて包括的に設定することもできるようになっている。
【0056】
図7(b)の右側の列の「ルーティング対象装置の名称」としては、例えば、機器の種類(処理装置、通信装置、ファイルサーバ等)及び配置される場所等を考慮して、ユーザが任意の名称を設定することができる。これにより、パケット転送先のルーティング対象装置を分かり易く管理することができる。
【0057】
それぞれのルーティングポイントとしての中継サーバは、このアドレスフィルタ情報を外部の表示装置等に表示させることが可能となっている。また、このアドレスフィルタ情報は、後述の図11等に示すように、VPNを開始するときにルーティング機器同士で交換するように構成されている。
【0058】
転送先ゲートウェイ記憶部56は、当該中継サーバ3が接続されているLAN30に接続される機器であって、当該LAN30の他の機器に対してゲートウェイとして動作可能な機器のアドレスを記憶することができる。なお、以下の説明では、このような機器を「転送先ゲートウェイ」と称することがある。
【0059】
中継サーバ3が受信したパケットは、特定の場合に、転送先ゲートウェイ記憶部56に記憶された機器(転送先ゲートウェイ)に転送される。なお、図1で示すネットワークにおいては、中継サーバ3の転送先ゲートウェイ記憶部56に記憶させることが可能な転送先ゲートウェイとして、ルータ35を挙げることができる。
【0060】
中継サーバ1,2,3は、以上のように構成される。なお、クライアント端末11,21,31の構成については詳細な説明を省略するが、中継サーバ1,2,3と実質的に同様に構成された記憶部50及び制御部60を備えている。特に、クライアント端末11,21,31は、VPNグループ情報記憶部、アドレスフィルタ情報記憶部、及び転送先ゲートウェイ記憶部を備えており、上記の中継サーバの場合とほぼ同様の内容を記憶することができる。
【0061】
次に、VPNグループを構築して、構築したVPNグループでパケットのルーティングを行うときの処理について説明する。
【0062】
初めに、VPNグループを構築するときの流れについて図8及び図11を参照して説明する。図8は、VPNグループを作成する処理を示すフローチャートである。図11は、VPNグループを作成する通信処理及びアドレスフィルタ情報を更新する通信処理を示すシーケンス図である。
【0063】
中継通信システム100を利用するユーザは、クライアント端末11,21,31等を操作することによって、VPNグループの設定画面を表示させることができる。ここでは、クライアント端末11を用いて設定を行う場合について説明する。クライアント端末11に表示させた設定画面には、当該クライアント端末11が属する複数の中継グループが表示される。ユーザは、この複数の中継グループから、VPNグループを構築したい中継グループを選択する(S101)。
【0064】
中継グループが選択されると、クライアント端末11の画面には、選択した中継グループに属し、かつルーティングポイントとして機能可能な中継サーバ及びクライアント端末の識別情報の一覧が表示される(S102)。そして、ユーザは、構築するVPNグループにおいてルーティングポイントとして機能させる中継サーバ及びクライアント端末の識別情報を選択する(S103)。今回の説明では、クライアント端末11、クライアント端末21、及び中継サーバ3の識別情報がユーザに選択されたものとする。
【0065】
そして、この選択されたルーティングポイントに基づいて、ルーティングセッション情報が作成される(S104)。また、選択された中継サーバ等の識別情報に基づいて、ルーティングポイントの識別情報が作成される(S104)。これらの作成された情報にVPNグループの識別情報等を付加することにより、図6で示したVPNグループ情報が作成され、クライアント端末11が備えるVPNグループ情報記憶部は、このVPNグループ情報を記憶する(S105)。
【0066】
そして、クライアント端末11は、作成したVPNグループ情報を、他のルーティング機器(クライアント端末21及び中継サーバ3)に送信することにより(S106)、VPNグループが作成されたことを通知する。なお、クライアント端末21に対するVPNグループ情報の送信は、図11に示すように、中継サーバ1及び中継サーバ2を介して行われる(シーケンス番号1、createVpnGroup)。また、中継サーバ3に対するVPNグループ情報の送信は、中継サーバ1を介して行われる(シーケンス番号2、createVpnGroup)。
【0067】
これにより、VPNグループの構築処理が完了する。なお、以上で示したように、本実施形態において機器間の通信が中継サーバ1,2,3を経由して行われることがあるが、以下の説明では、中継サーバ1,2,3を経由する通信処理の具体的な説明を省略して「クライアント端末11がクライアント端末21にパケットを送信する。」等と記載することがある。
【0068】
次に、構築したVPNグループでVPNを開始するときの流れについて、図9から図12を参照して説明する。図9及び図10は、VPNを開始する処理を示すフローチャートである。図12は、ルーティングセッションを確立する通信処理及びパケットの送信を行う通信処理を示すシーケンス図である。
【0069】
ユーザは、クライアント端末11,21等を操作することによって、構築したVPNグループを画面に表示させることができる。そして、表示されたVPNグループから適当なVPNグループを選択することにより(S201)、VPNを開始するための処理を行わせることができる。今回の説明では、ユーザがクライアント端末11を操作して、上記で作成したVPNグループ(クライアント端末11、クライアント端末21、及び中継サーバ3をルーティング機器とするVPNグループ)を選択したものとする。
【0070】
クライアント端末11は、初めに、自身のアドレスフィルタ情報記憶部で記憶されているアドレスフィルタ情報から、自身に対応付けられたものを読み出す(S202)。なお、VPNを開始する前の段階において、クライアント端末11のアドレスフィルタ情報記憶部には、自身(即ち、クライアント端末11)の識別情報と対応付けた形で、通信装置12を指定するアドレスフィルタ情報が予め記憶されている。従って、クライアント端末11は、上記のアドレスフィルタ情報を読み出す。
【0071】
次に、クライアント端末11は、選択したVPNグループに属するルーティングポイントの読出しを行う(S203)。これにより、図6に示すVPNグループ情報の内容に基づいて、クライアント端末21及び中継サーバ3の識別情報が読み出される。
【0072】
クライアント端末11は、中継サーバ情報に基づいて、初めに、クライアント端末21がログイン中か否か(「site」に中継サーバの識別情報が記述されているか、それとも空欄か)を判断する(S204)。図4に示す中継サーバ情報によればクライアント端末21はログイン中であるため、クライアント端末11は、クライアント端末21に向けてVPNグループの開始コマンドを送信する(S205,図11のシーケンス番号3、startVpn)。このとき、選択されたVPNグループの識別情報(VpnGroupID)と、クライアント端末11の識別情報に対応付けられたアドレスフィルタ情報(S202で読み出されたアドレスフィルタ情報、addr01)も同時に送信される。
【0073】
これにより、クライアント端末21は、開始の処理を行うVPNグループを特定できるとともに、クライアント端末11の識別情報に対応付けられた最新のアドレスフィルタを取得することができる。
【0074】
ここで、VPNを開始する前の段階において、クライアント端末21のアドレスフィルタ情報記憶部には、自身(即ち、クライアント端末21)の識別情報と対応付けた形で、通信装置22を指定するアドレスフィルタ情報と、通信装置23を指定するアドレスフィルタ情報と、が予め記憶されている。クライアント端末21は、信号を受信した旨をクライアント端末11に通知するとともに、自身に対応付けられたアドレスフィルタ情報をアドレスフィルタ情報記憶部から読み出し、当該アドレスフィルタ情報(addr02)をクライアント端末11に送信する。
【0075】
クライアント端末11は、クライアント端末21からの応答を受けて(S206)、受信したアドレスフィルタ情報をアドレスフィルタ情報記憶部55に記憶する(S207)。また、クライアント端末11は、クライアント端末21を、VPNを開始する準備が完了したルーティングポイントとして登録する(S208)。
【0076】
次に、クライアント端末11は、他にルーティングポイントがあるか否かの判断を行う(S209)。クライアント端末21に対するVPNの開始処理を完了した時点では、中継サーバ3に対してVPNの開始処理を行っていないため、クライアント端末11は、今度は中継サーバ3を対象としてS204〜S208の処理を行う。
【0077】
具体的には、クライアント端末11は、中継サーバ3に対してVPNの開始コマンドを送信するとともに、自身に対応付けられたアドレスフィルタ情報を送信する(図11のシーケンス番号5、startVpn)。ここで、VPNを開始する前の段階において、中継サーバ3のアドレスフィルタ情報記憶部55には、自身(即ち、中継サーバ3)の識別情報と対応付けた形で、ファイルサーバ32を指定するアドレスフィルタ情報が予め記憶されている。そして、クライアント端末11は、中継サーバ3から、当該中継サーバ3に対応付けられたアドレスフィルタ情報(addr03)を受信して記憶する。
【0078】
なお、このVPNグループの開始コマンド及びアドレスフィルタ情報の送受信は、クライアント端末21と中継サーバ3との間でも行われる(シーケンス番号4、startVpn)。以上により、クライアント端末11、クライアント端末21、及び中継サーバ3のそれぞれは、他のルーティング機器のアドレスフィルタ情報を取得した上で自身のアドレスフィルタ情報と合成し、最終的には図7に示すような内容をアドレスフィルタ情報記憶部に記憶することができる。
【0079】
このように、VPNを開始する際に、それぞれのルーティング機器が他のルーティング機器とアドレスフィルタ情報を交換(取得)するため、最新のアドレスフィルタ情報を用いてVPNを構築することができる。従って、VPN開始前の段階で一部のルーティング機器においてアドレスフィルタ情報が変更された場合でも、その変更を全てのルーティング機器に反映させた状態でVPNを開始できるので、パケットのルーティングにおける矛盾の発生を防止でき、信頼性を向上させることができる。
【0080】
次に、クライアント端末11は、自身が備えるVPNグループ情報記憶部の記憶内容からルーティングセッション情報を抽出する(S210)。そして、自身が始点となるルーティングセッションが記述されているか否かを判断する(S211)。図6のルーティングセッション情報においては、クライアント端末11とクライアント端末21との間で確立されるべきルーティングセッション、及び、クライアント端末11と中継サーバ3との間で確立されるべきルーティングセッションにおいて、クライアント端末11が始点となることが記述されている。
【0081】
そこで、初めに、クライアント端末11はクライアント端末21を選択し、クライアント端末21が、VPNを開始する準備が完了したルーティングポイントであるか否かを判断する(S212)。上記のS208により、クライアント端末21については準備完了が登録されているため、クライアント端末11からクライアント端末21に対してルーティングセッションを確立するための通信制御が行われる(S213、シーケンス番号6、createVpnSsn)。
【0082】
次に、クライアント端末11は、自身が接続の始点となるルーティングセッションが他に記述されているか否かを判断する(S214)。クライアント端末21に対するルーティングセッション確立処理を完了した時点では、中継サーバ3との間でのルーティングセッション確立処理を行っていないため、クライアント端末11は、中継サーバ3に対してもクライアント端末21に行った通信制御と同様の通信制御を行う(シーケンス番号8、createVpnSsn)。これにより、クライアント端末11と中継サーバ3との間にルーティングセッションが確立される。
【0083】
また、図6に示すように、クライアント端末21が中継サーバ3との間のルーティングセッションにおいて始点となるべきことがルーティングセッション情報に記述されているため、ルーティングセッションを確立するための通信制御は、クライアント端末21から中継サーバ3に対しても行われる(シーケンス番号7、createVpnSsn)。以上により、クライアント端末11とクライアント端末21の間、クライアント端末11と中継サーバ3の間、及びクライアント端末21と中継サーバ3の間においてルーティングセッションをそれぞれ確立させることができる。なお、それぞれのルーティング機器は、自身が始点である旨がルーティングセッション情報に記述されていない限りはルーティングセッション確立のための最初の通信制御を行わないので、通信制御の衝突を防止し、機器間のルーティングセッションを簡素な制御で確立することができる。
【0084】
次に、個々のルーティング対象装置(ここでは、通信装置12,22,23及びファイルサーバ32)において記憶され、当該ルーティング対象装置がパケットを送信するときに参照されるゲートウェイテーブルについて説明する。このゲートウェイテーブルは、ルーティング対象装置自身がLAN内でパケットを送信する場合に、パケットの1次的な送信先(ゲートウェイ)を、当該パケットの最終的な送信先に対応付けた形のテーブルである。図13には、ファイルサーバ32に設定されるゲートウェイテーブルの例が示されている。このゲートウェイテーブルは、ルーティング機器(クライアント端末11等)の指示に基づき、当該ルーティング対象装置によって作成される。
【0085】
ルーティング機器は、自身に対応付けられたアドレスフィルタ情報が示すルーティング対象装置(自身がパケットを直接的に送信可能なルーティング対象装置)に対して必要な情報を送信した上で、ゲートウェイテーブルの作成を指示する。具体的には、クライアント端末11は通信装置12に対して、クライアント端末21は通信装置22及び通信装置23に対して、中継サーバ3はファイルサーバ32に対して、それぞれゲートウェイテーブルの作成を指示することになる。
【0086】
以下、図14及び図15を参照して、ルーティング対象装置にゲートウェイテーブルを作成させるためにルーティング機器側で行われる処理を説明する。なお、この処理はそれぞれのルーティング機器において略同一であるため、ここでは代表して、中継サーバ3がファイルサーバ32に対してゲートウェイテーブルの作成を指示する場合で説明する。この処理は、上記の図9及び図10に示す処理と並行して(又は図9及び図10に示す処理が終わった後に)行われる。
【0087】
初めに、中継サーバ3は、アドレスフィルタ情報記憶部55の記憶内容を参照し、自身に対応付けられたアドレスフィルタ情報が、単一の機器を特定できるような設定となっているか否かを判断する(S301)。
【0088】
図7(b)の例では、中継サーバ3に対応付けられたアドレスフィルタ情報としては、ファイルサーバ32のIPアドレス(192.168.33.132)が設定されている。即ち、単一の機器であるファイルサーバ32を特定できるように、個別的なアドレスフィルタ情報が設定されている。
【0089】
従って、中継サーバ3は、VPNの開始時に他のルーティング機器(クライアント端末11,21)から取得したアドレスフィルタ情報を、ファイルサーバ32へ送信する(S302)。このときファイルサーバ32へ送信されるアドレスフィルタ情報は、図11のシーケンス番号4.1及び5.1において取得した計3つのアドレスフィルタ情報であって、図7(b)の記憶内容のうち(192.168.11.112)、(192.168.22.122)、(192.168.22.123)の部分に相当する。なお、以下の説明では、VPNの開始時に送信されるこのアドレスフィルタ情報を特に「ルート情報」と呼ぶことがある。
【0090】
上記したS302の処理は、中継サーバ3のアドレスフィルタ情報記憶部55の記憶内容において、自身(アドレスフィルタ情報記憶部55)に対応付けられたアドレスフィルタ情報が、個別的なアドレスで設定されている場合にのみ行われる。図7(b)の例では、中継サーバ3に対応付けられたアドレスフィルタ情報は1つしかないが、仮に2つ以上あっても、それぞれのアドレスフィルタ情報が個別的なアドレスで設定されている限り、S302の処理は省略されない。一方で、例えばネットマスク等を用いるなどして、LAN30のネットワーク全体を包括的に示すようなアドレスフィルタ情報が設定されている場合は、ゲートウェイテーブルの作成指示の相手(前記ルート情報の送信相手)を特定できないので、S302の処理は行われない。
【0091】
ファイルサーバ32は、中継サーバ3からルート情報を受信した後に、当該ルート情報に基づいて以下のように処理を行い、図13に示すようなゲートウェイテーブルを作成する。図13(a)は具体的なゲートウェイテーブルを示す図であり、図13(b)は、ゲートウェイテーブルの内容を概念的に示す図である。
【0092】
即ち、中継サーバ3から上記のルート情報を受信すると、ファイルサーバ32は、当該ルート情報を構成する3つのアドレスフィルタ情報を、ゲートウェイテーブルの左側の列である「パケットの最終送信先アドレス」としてそのまま設定し、これに対応する右側の「ゲートウェイアドレス」として、何れも中継サーバ3のIPアドレス(192.168.33.100)を設定する。これにより、図13(a)のゲートウェイテーブルを構成する4つの行のうち、上側の3つの行が作成される。
【0093】
ゲートウェイテーブルの残りの行(図13(a)の最下行)の内容は、VPNを構成しない装置に関するものであり、予めファイルサーバ32に設定された内容に基づいて作成される。図13(a)の例では、ファイルサーバ37のIPアドレス(192.168.34.137)が「パケットの最終送信先アドレス」として設定され、これに対応する「ゲートウェイアドレス」としてルータ35のIPアドレス(192.168.33.135)が設定される。なお、図13(b)は、ゲートウェイテーブルの記憶内容を分かり易く概念的に説明したものであって、図13(a)で示す内容と対応させている。
【0094】
以上のようにゲートウェイテーブルが設定された後は、ファイルサーバ32は、当該ゲートウェイテーブルに基づいて適切なゲートウェイを選択し、当該ゲートウェイへパケットを送信する。具体的に説明すると、図13のゲートウェイテーブルの例では、ファイルサーバ32が通信装置12とやり取りしたい場合はパケットを中継サーバ3に送信すれば良く、ファイルサーバ32がファイルサーバ37とやり取りしたい場合はパケットをルータ35に送信すれば良いことが分かる。従って、ファイルサーバ32は、VPNを利用した通信であるかVPNを利用しない通信であるかに応じて、適切なゲートウェイにパケットを送信することができる。
【0095】
上記のようにしてルート情報をファイルサーバ32へ送信した後、中継サーバ3は、他のルーティング機器から取得したアドレスフィルタ情報に変更があるか否かを判断する(図14のS303)。なお、ルーティングポイントが追加又は削除された場合、それに連動して、当該ルーティングポイントに対応付けられたアドレスフィルタ情報も追加又は削除される。従って、S303の処理においては、単なるアドレスフィルタ情報のみの変更だけでなく、ルーティングポイントの変更も検出することができる。そして、中継サーバ3は、アドレスフィルタ情報に変更がある度に、S301及びS302の処理を行うように構成されている。この結果、ファイルサーバ32側としては、常に最新の状況が反映されたゲートウェイテーブルを作成した上で、適切なゲートウェイを選択してパケットを送信することができる。
【0096】
また、中継サーバ3は、自身に対応付けられたアドレスフィルタ情報に変更があるか否かについても判断している(S304)。そして、アドレスフィルタ情報に変更があった場合は、以下に示すように、当該変更に応じた処理を行う。
【0097】
即ち、中継サーバ3は、初めに、削除されたルーティング対象装置があるか否か(自身に対応付けられたアドレスフィルタ情報が削除されたか否か)を判断する(図15のS305)。そして、削除されたルーティング対象装置があった場合は、当該ルーティング機器に対して、ルーティングが停止された旨を通知する(S306)。この通知を受けたルーティング対象装置は、以後、ゲートウェイテーブルに基づいたパケットの送信を行わない。その後、中継サーバ3は、アドレスフィルタ情報の変更を検出する処理(S303及びS304)に戻る。
【0098】
また、中継サーバ3は、自身に対応付けられたアドレスフィルタ情報に変更があり、かつ、削除されたルーティング対象装置が無い場合(S305においてNoと判定された場合)、追加されたルーティング対象装置があるか否かを判断する(S307)。追加されたルーティング対象装置がある場合は、自身に対応付けられたアドレスフィルタ情報(即ち、追加されたアドレスフィルタ情報)が、個別的なアドレスで設定されているか否かを判断する(S308)。
【0099】
自身に対応付けられたアドレスフィルタ情報が個別的なアドレスで設定されている場合は、中継サーバ3は、当該アドレスフィルタ情報が示すルーティング対象装置に対して、他のルーティング機器に対応付けられたアドレスフィルタ情報を送信する(S309)。このアドレスフィルタ情報を受信したルーティング対象装置は、上記と同様に、ゲートウェイテーブルの作成を行う。そして、中継サーバ3は、アドレスフィルタ情報の変更を検出する処理(S303及びS304)に戻る。
【0100】
なお、追加されたルーティング対象装置が無い場合(S307においてNoと判定された場合)、及び、追加されたアドレスフィルタ情報において包括的なアドレスの設定がされている場合(S308においてNoと判定された場合)は、中継サーバ3は、アドレスフィルタ情報の変更を検出する処理(S303及びS304)に戻る。
【0101】
上記の処理を繰り返すことにより、VPNを構成する環境が変化しても、最新の状況をルーティング対象装置のゲートウェイテーブルに反映させることができる。従って、LANに接続される機器のネットワーク設定の手間を良好に軽減させることができるので、VPNの運用が容易になる。
【0102】
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について説明する。以下、第1パケット及び第2パケットの2種類のパケットにおけるルーティングについて説明する。
【0103】
初めに、ファイルサーバ32から、送信先アドレスとして(192.168.22.122)を指定した(送信先として通信装置22を指定した)第1パケットを送信するとき(図12のシーケンス番号9、packet01)について説明する。ファイルサーバ32は、第1パケットの送信先アドレスと、図13に示すゲートウェイテーブルの「パケットの最終送信先アドレス」と、を比較する。図13に示すように、第1パケットの(最終)送信先アドレスに対応するゲートウェイアドレスとして、中継サーバ3のIPアドレスが指定されている。従って、ファイルサーバ32は、第1パケットを中継サーバ3に送信する。
【0104】
中継サーバ3は、この第1パケットを受信すると、アドレスフィルタ情報記憶部55の記憶内容(図7)を第1パケットの送信先アドレスと比較する。そして、第1パケットに記された送信先に対してパケットを直接的に送信可能なルーティング機器を調べる。図7(b)に示すように、第1パケットの送信先アドレス(192.168.22.122)は、クライアント端末21に対応付けられたアドレスフィルタ情報によって指定されている。従って、中継サーバ3は第1パケットの転送を許可し、クライアント端末21との間に確立されたルーティングセッションを介して第1パケットを当該クライアント端末21に送信する。
【0105】
この第1パケットを受信したクライアント端末21も中継サーバ3と同様に、アドレスフィルタ情報記憶部の記憶内容(図7)を、第1パケットの送信先アドレスと比較する。この結果、クライアント端末21は、第1パケットに記された送信先(192.168.22.122)に対して、自身がパケットを直接的に送信可能なことを検出する。従って、クライアント端末21は第1パケットの転送を許可し、第1パケットを通信装置22に対して送信する。
【0106】
このように、本実施形態では、アプリケーション層のルーティングセッションで、ルーティング対象のデータを流すように構成されている。従って、以上で説明したルーティングは、通常のIPルーティングとは異なっている。
【0107】
アプリケーション層でルーティングを行うことにより、WANを意識することなく、遠隔地のLAN同士がプライベートIPアドレスを利用して相互に通信することができる。また、上述のように、ルーティング機器は、パケットの転送先として指定可能なルーティング対象装置の名称を表示可能となっている。そのため、ユーザは、VPNを用いてどの機器にパケットを送信可能であるかを容易に認識することができる。
【0108】
次に、ファイルサーバ32から、送信先アドレスとして(192.168.34.137)を指定した(送信先としてファイルサーバ37を指定した)第2パケットを送信するとき(図12のシーケンス番号10、packet02)について説明する。ファイルサーバ32は、第2パケットの送信先アドレスと、図13に示すゲートウェイテーブルの「パケットの最終送信先アドレス」と、を比較する。図13に示すように、第2パケットの(最終)送信先アドレスに対応するゲートウェイアドレスとして、ルータ35のIPアドレスが指定されている。従って、ファイルサーバ32は、第2パケットをルータ35に送信する。この第2パケットを受信したルータ35は、送信先アドレスに基づいて、第2パケットをファイルサーバ37に送信する。
【0109】
このように、本実施形態では、VPNを利用した通信及びVPNを利用しない通信の両方について、適切な相手にパケットの送信を行うことができる。
【0110】
次に、自身に対応付けられたアドレスフィルタ情報において包括的なアドレスが設定されている場合について、図16及び図17を参照して説明する。図16は、アドレスフィルタ情報記憶部の記憶内容において、包括的なアドレスがアドレスフィルタ情報に設定されている例を示す図である。図17は、アドレスフィルタ情報において包括的なアドレスが設定されている場合において、ルーティング機器がパケットを受信したときに行う処理を示す図である。
【0111】
図16の例では、中継サーバ3に対応付けたアドレスフィルタ情報として、LAN30全体(LAN30に接続される全ての機器)が包括的に設定されている。具体的には、図16(b)に示すように、中継サーバ3の識別情報に対応付けたアドレスフィルタ情報として、ネットマスクを用いた設定(192.168.33.0/24)がされている。ただし、例えば(192.168.33.0−192.168.33.255)というように、IPアドレスの範囲をそのまま表記することで包括的なアドレスを設定することもできる。
【0112】
このように、中継サーバ3がパケットを転送可能なルーティング対象としてLAN30全体が指定されている場合、中継サーバ3は、前記ルート情報の送信相手を特定することができない。従って、ルート情報の送信は行われないので、ルーティング対象装置側においてゲートウェイテーブルは作成されない。
【0113】
しかしながら、この場合でも、LAN30に接続される機器(例えばクライアント端末31及びファイルサーバ32)が送信するパケットを、最終送信先の機器まで適切に届ける必要がある。即ち、図1を参照して具体的に説明すると、LAN30に接続されるゲートウェイとしては、中継サーバ3以外にもルータ35が存在する。このネットワークにおいて、ファイルサーバ32が前述のVPNを利用して例えば通信装置22とやり取りしたい場合、パケットは中継サーバ3を通過する必要がある。一方で、クライアント端末31及びファイルサーバ32がファイルサーバ37とやり取りしたい場合、パケットはルータ35を通過する必要がある。
【0114】
このようなパケットの経路の振分けを実現するために、中継サーバ3は、LAN30に接続されるそれぞれの機器(例えばクライアント端末31及びファイルサーバ32)に対する1次的なゲートウェイとして動作できるように構成されている。即ち、ルータ35を通過すべきパケットが中継サーバ3に送信された場合でも、当該中継サーバ3からルータ35へ転送されることで、ルータ35経由の通信も問題なくできるようになっている。
【0115】
以下、詳細に説明する。上述のとおり、中継サーバ3は、転送先ゲートウェイ記憶部56を備えている。この転送先ゲートウェイ記憶部56には、VPNとは無関係のパケットについてゲートウェイとなるべき機器(ここでは、ルータ35)のIPアドレスを設定することができる。
【0116】
次に、図17を参照して、中継サーバ3の具体的な動作を説明する。中継サーバ3は、LAN側よりパケットを受信したとき(S401)は、当該パケットの送信元が、自身がパケットを直接的に送信可能なルーティング対象装置であるか否かを判断する(S402)。図16に示されるアドレスフィルタ情報記憶部55の記憶内容を参照すると、中継サーバ3がパケットを直接的に送信可能なルーティング対象装置は、LAN30全体であることが分かる。従って、S402では、パケットの送信元がLAN30に接続されている機器であるか否かが判断される。なお、以下の説明では、中継サーバ3が受信したパケットのうちS402の判断条件を満たすものを、特に「振分け対象パケット」と呼ぶことがある。
【0117】
パケットの送信元がルーティング対象装置でなかった場合(例えば、パケットの送信元がLAN36に属するファイルサーバ37である場合)は、中継サーバ3は単純に、受信したパケットについて必要な処理を行う(S403)。
【0118】
送信元がルーティング対象装置であった場合(例えば、パケットの送信元がファイルサーバ32である場合)、中継サーバ3は、受信したパケットが、VPNのためにルーティングすべきパケットであるか否かを判断する(S404)。
【0119】
このS404の判断は、上記と同様に、アドレスフィルタ情報記憶部55で記憶されるアドレスフィルタ情報(図7)に基づいて行われる。つまり、振分け対象パケットの送信先がアドレスフィルタ情報において指定されている場合(例えば、振分け対象パケットの送信先が通信装置22である場合)は、VPNのためにルーティングすべきパケットであるから、中継サーバ3は、他のルーティング機器(クライアント端末21)へ振分け対象パケットを転送する(S405)。
【0120】
一方、振分け対象パケットの送信先がアドレスフィルタ情報において指定されていない場合(例えば、振分け対象パケットの送信先がファイルサーバ37である場合)は、VPNには無関係のパケットであると判断できる。従って中継サーバ3は、当該振分け対象パケットを、前記転送先ゲートウェイ記憶部56に記憶されている転送先ゲートウェイ(ルータ35)に転送する(S406)。
【0121】
以上の制御により、中継サーバ3はパケットを適切に振り分けるようになるので、LAN30に接続されるそれぞれの機器(例えばクライアント端末31及びファイルサーバ32)においては、デフォルトゲートウェイとして中継サーバ3のIPアドレスを設定しておけば良い。この結果、VPNに関係するか否かにかかわらず、クライアント端末31及びファイルサーバ32は、LAN30以外の機器を送信先とするパケットを先ず中継サーバ3へ送信するようになる。このパケット(振分け対象パケット)を受信した中継サーバ3は、VPNに関係するパケットは他のルーティング機器へ、そうでないパケットはルータ35へ、それぞれ転送する。
【0122】
以上により、アドレスフィルタ情報に包括的なアドレス設定が行われた場合においても、VPNを利用した通信及びVPNを利用しない通信の両方について、適切にパケットの送信を行うことができる。
【0123】
なお、中継サーバ3は、VPNが開始されているか否かを検出することができ、VPNが開始されていない(停止された)ときは、ルーティング対象装置から受信したパケットを全て、転送先ゲートウェイ記憶部56に記憶された転送先ゲートウェイ(ルータ35)に送信するように制御を行っている。
【0124】
これにより、VPNが開始されていない(停止された)ときにおいて、特に手動で設定を行うことなく、LAN30,36を利用したパケットのやり取りを行うことができる。
【0125】
次に、VPNを終了する処理について図18及び図19を参照して説明する。図18は、VPNグループを終了する通信処理を示すシーケンス図である。図19は、ルーティングを停止するときの処理を示すフローチャートである。
【0126】
ユーザは、クライアント端末11,21等を操作することによって、VPNを終了する処理を開始することができる。今回の説明では、ユーザがクライアント端末11を操作してVPNを終了する処理を開始させたとする。
【0127】
クライアント端末11は、VPNを終了する指示を受け付けると、VPNグループの識別情報とともにその旨を、クライアント端末21及び中継サーバ3に対して送信する(シーケンス番号11,12、stopVpn)。なお、クライアント端末21及び中継サーバ3は、クライアント端末11から受信したVPNグループの識別情報によって、どのVPNグループを対象としたVPNが終了されるかを知ることができる。
【0128】
クライアント端末11は、VPNの終了を受け付けた旨の信号をクライアント端末21及び中継サーバ3から受信した後に、クライアント端末21に対してルーティングセッションの終了コマンドを送信する(シーケンス番号13、closeVpnSsn)。また、クライアント端末11は、中継サーバ3に対しても、ルーティングセッションの終了コマンドを送信する(シーケンス番号15、closeVpnSsn)。
【0129】
このルーティングセッションの終了コマンドの送信は、クライアント端末21から中継サーバ3に対しても行われる(シーケンス番号14、closeVpnSsn)。以上により、クライアント端末11とクライアント端末21の間、クライアント端末11と中継サーバ3の間、及びクライアント端末21と中継サーバ3の間に確立されていたルーティングセッションをそれぞれ終了させることができる。そしてVPNグループによるVPNが終了する。
【0130】
また、それぞれのルーティング機器は、VPNが終了した後に、自身に対応付けられたアドレスフィルタ情報に個別のアドレスの指定があるか否かを判断する(図19のS501)。そして、個別のアドレスの指定があると判断したときに、当該ルーティング対象装置に対して、ルーティングを停止する旨を通知する。この通知を受けたルーティング対象装置は、作成したゲートウェイテーブルを消去する。
【0131】
一方、自身に対応付けられたアドレスフィルタ情報に包括的なアドレス設定が行われている場合は、ルーティング対象装置側でゲートウェイテーブルが当初から作成されていないため、ルーティング機器は特に処理を行わない。
【0132】
以上に示したように、本実施形態の中継サーバ3は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、通信制御部63と、を備える。中継グループ情報記憶部51は、中継サーバ3との間で相互に接続可能な他の中継サーバ1,2を含む中継グループの情報を記憶する。中継サーバ情報記憶部52は、中継グループに属する中継サーバ1,2,3の起動情報と、中継グループに属する中継サーバ1,2,3に接続されるクライアント端末11,21,31の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。VPNグループ情報記憶部54は、中継グループの情報及び中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成するルーティング機器の識別情報及び互いに接続されるルーティング機器を示すルーティングセッション情報を記憶する。アドレスフィルタ情報記憶部55は、パケットの転送先としてルーティング機器が指定可能なルーティング対象装置のアドレスを示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。通信制御部63は、中継サーバ3に対応付けられたアドレスフィルタ情報に示されたファイルサーバ32へ、他のルーティング機器(中継サーバ1,2)から取得したアドレスフィルタ情報(ルート情報)を送信し、当該ファイルサーバ32が記憶するゲートウェイテーブルを設定させる制御を行う。
【0133】
これにより、中継サーバ3は、中継通信システムを構成する他の通信機器から選択されたルーティング機器とVPNを構築できるため、必要な通信機器との間でのみファイルの共有等を行うことができる。また、中継サーバ3は、パケットを届けるときに当該中継サーバ3を経由する必要がある送信先を、ファイルサーバ32に通知することができる。この中継サーバ3の通知内容を活用することにより、ファイルサーバ32のゲートウェイテーブルを自動的に設定することが可能になるため、ゲートウェイテーブルを設定する手間を省くことができる。
【0134】
また、本実施形態の中継サーバ3においては、VPNの開始時に、他のルーティング機器(中継サーバ1,2)からアドレスフィルタ情報を取得するとともに、当該アドレスフィルタ情報を、ファイルサーバ32に対して送信する。
【0135】
これにより、中継サーバ3は、他のルーティング機器(中継サーバ1,2)に対応付けられた最新のアドレスフィルタ情報を取得することができる。従って、ファイルサーバ32に設定されるゲートウェイテーブルをより的確なものにすることができる。
【0136】
また、本実施形態の中継サーバ3においては、VPNグループを構成するルーティング機器に変更があったとき、又はルーティング機器に対応付けられたアドレスフィルタ情報に変更があったときに、他のルーティング機器からアドレスフィルタ情報を取得するとともに、当該アドレスフィルタ情報を、ファイルサーバ32に対して送信する。
【0137】
これにより、VPNグループの変化等に応じてゲートウェイテーブルを自動的に更新させることが可能となるため、ネットワークの構成の変化等に柔軟に対応可能なVPNを構築することができる。
【0138】
また、本実施形態の中継サーバ3においては、転送先ゲートウェイ(ルータ35)のアドレスを記憶する転送先ゲートウェイ記憶部56を備える。中継サーバ3と対応付けられたアドレスフィルタ情報に包括的なアドレスが設定されているときは、通信制御部63は、仮想プライベートネットワークが開始されている場合においては、その包括的なアドレスに含まれるアドレスを有するルーティング対象装置(LAN側のルーティング対象装置)から受信したパケットである振分け対象パケットの送信先が、ルーティング機器と対応付けられたアドレスフィルタ情報において指定されているときは、中継サーバ3と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器に当該振分け対象パケットを転送する。通信制御部63は、前記振分け対象パケットの送信先が、ルーティング機器と対応付けられたアドレスフィルタ情報において指定されていないときは、転送先ゲートウェイ記憶部56の記憶内容が示す転送先ゲートウェイ(ルータ35)へ当該振分け対象パケットを転送する。
【0139】
これにより、中継サーバにおいて転送先ゲートウェイのアドレスを適切に設定するとともに、それぞれのルーティング対象装置において当該中継サーバがデフォルトゲートウェイになるように設定することで、VPNを利用したパケットのやり取り及びVPNを利用しないパケットのやり取りの両方を適切に行うことができる。
【0140】
また、本実施形態の中継サーバ3において、通信制御部63は、VPNが開始されていない場合においては、前記振分け対象パケットを、転送先ゲートウェイ記憶部56の記憶内容が示す転送先ゲートウェイ(ルータ35)へ転送する。
【0141】
これにより、VPNが開始されているときは、当該VPNを利用したパケットのやり取りを行うことができるとともに、VPNが開始されていない(停止された)ときは、特に手動で設定を行うことなく、LAN30,36を利用したパケットのやり取りを行うことができる。
【0142】
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
【0143】
上記の中継グループ情報、中継サーバ情報、クライアント端末情報、VPNグループ情報、アドレスフィルタ情報等を格納する形式はXML形式に限定されず、適宜の形式で各情報を格納することができる。
【0144】
上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。
【符号の説明】
【0145】
1,2,3 中継サーバ
11,21,31 クライアント端末
10,20,30,36 LAN
50 記憶部
60 制御部
63 通信制御部
100 中継通信システム

【特許請求の範囲】
【請求項1】
自身との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに接続されるクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
前記中継グループの情報及び前記中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及び互いに接続される前記ルーティング機器を示すルーティングセッション情報を記憶するVPNグループ情報記憶部と、
パケットの転送先として前記ルーティング機器が指定可能なルーティング対象装置のアドレスを示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
自身に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置へ、他の前記ルーティング機器から取得した前記アドレスフィルタ情報を送信し、ルーティング対象装置がパケットを送信する際のゲートウェイを決定するために当該ルーティング対象装置が記憶するゲートウェイテーブルを設定させる制御を行う通信制御部と、
を備えることを特徴とする中継サーバ。
【請求項2】
請求項1に記載の中継サーバであって、
前記通信制御部は、
仮想プライベートネットワークの開始時に、他の前記ルーティング機器から前記アドレスフィルタ情報を取得するとともに、当該アドレスフィルタ情報を、自身に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置に対して送信することを特徴とする中継サーバ。
【請求項3】
請求項1又は2に記載の中継サーバであって、
前記通信制御部は、
VPNグループを構成する前記ルーティング機器に変更があったとき、又は前記ルーティング機器に対応付けられた前記アドレスフィルタ情報に変更があったときに、他の前記ルーティング機器から前記アドレスフィルタ情報を取得するとともに、当該アドレスフィルタ情報を、自身に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置に対して送信することを特徴とする中継サーバ。
【請求項4】
請求項1から3までの何れか一項に記載の中継サーバであって、
転送先ゲートウェイのアドレスを記憶する転送先ゲートウェイ記憶部を備え、
自身と対応付けられた前記アドレスフィルタ情報に、アドレスの範囲の形式で指定された記述が含まれているときは、
前記通信制御部は、仮想プライベートネットワークが開始されている場合においては、
前記アドレスの範囲に含まれているアドレスを有するルーティング対象装置から受信したパケットである振分け対象パケットの送信先が、前記ルーティング機器と対応付けられた前記アドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器に当該振分け対象パケットを転送し、
前記振分け対象パケットの送信先が、前記ルーティング機器と対応付けられた前記アドレスフィルタ情報において指定されていないときは、前記転送先ゲートウェイ記憶部に記憶された転送先ゲートウェイへ当該振分け対象パケットを転送することを特徴とする中継サーバ。
【請求項5】
請求項4に記載の中継サーバであって、
前記通信制御部は、仮想プライベートネットワークが開始されていない場合においては、前記振分け対象パケットを、前記転送先ゲートウェイ記憶部に記憶された転送先ゲートウェイへ転送することを特徴とする中継サーバ。
【請求項6】
複数の中継サーバと、
前記中継サーバを介して互いに接続可能なクライアント端末と、
を備え、
前記中継サーバは、
当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
前記中継サーバ及び前記クライアント端末のうちルーティングポイントとして設定されたルーティング機器で構成され、当該ルーティング機器間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及び互いに接続される前記ルーティング機器を示すルーティングセッション情報を記憶するVPNグループ情報記憶部と、
パケットの転送先として前記ルーティング機器が指定可能なルーティング対象装置のアドレスを示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
前記ルーティング機器に対応付けられた前記アドレスフィルタ情報に示されたルーティング対象装置へ、他の前記ルーティング機器から取得した前記アドレスフィルタ情報を送信し、ルーティング対象装置がパケットを送信する際のゲートウェイを決定するために当該ルーティング対象装置が記憶するゲートウェイテーブルを設定させる制御を行う通信制御部と、
を備えることを特徴とする中継通信システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2012−170008(P2012−170008A)
【公開日】平成24年9月6日(2012.9.6)
【国際特許分類】
【出願番号】特願2011−31145(P2011−31145)
【出願日】平成23年2月16日(2011.2.16)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】