次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本発明の一実施形態に係る中継通信システム100の全体構成を示す説明図である。
図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数の中継サーバ1,2,3,4と、中継サーバ1,2,3,4とLAN10,20,30,40,45,48を介して接続されるクライアント端末11,21,42,47,・・・と、で構成されている。LAN10,20,30,48は、それぞれ物理的に離れた場所に配置されている。また、本実施形態ではWAN80としてインターネットが使用されている。
次に、それぞれのLANを説明する。図1に示すように、LAN10には、中継サーバ1と、クライアント端末11と、が接続されている。LAN20には、中継サーバ2と、クライアント端末21と、通信装置22,23と、が接続されている。LAN30には、中継サーバ3と、ファイルサーバ31と、が接続されている。LAN48には、中継サーバ4が接続されている。
LAN30には、ルータ32を介して別のLAN40が接続されるとともに、ルータ33を介して更に別のLAN45が接続されている。LAN40には、ファイルサーバ41と、クライアント端末42と、が接続されている。LAN45には、ファイルサーバ46と、クライアント端末47と、が接続されている。
なお、図1には一部だけが図示されているが、LAN20,30には多数のクライアント端末等が配置されているものとする。また、中継サーバ4に接続されるLAN48においても、図示しない多数のクライアント端末等が配置されている。
この中継通信システム100を運用するにあたっては、LAN20が設置されている場所にオペレータを待機させている。LAN30,40,45には、当該オペレータがメンテナンス等を行う対象であるファイルサーバ31,41,46が配置されている。また、LAN48にも、図示しないメンテナンス対象機器が配置されている。
また、LAN10が設置されている場所はオペレータによるメンテナンス業務を管理する拠点となっており、中継サーバ1には、中継サーバ単位でのオペレータのアクセス権限を定める情報が(後述のグループ接続制御情報として)予め設定されている。オペレータは、通信装置22,23等を用いて、オペレータ自身が有するアクセス権限の範囲内でファイルサーバ31,41,46等にアクセスし、リモートメンテナンスを行う。
このように、本実施形態の中継通信システム100は、LAN20側からLAN30,40,45,48側へ接続して各種の作業を行うためのものであって、逆方向の接続は想定されていない。このことから、以下の説明では、LAN20を「接続側」と、LAN30,40,45,48を「接続対象側」と、それぞれ称することがある。また、中継通信システム100の各種管理作業はLAN10に接続される機器で行われることから、以下の説明では、このLAN10を「管理側」と称することがある。
また、接続側のLAN20に接続された中継サーバ(中継サーバ2)を接続側の中継サーバと称し、接続対象側のLAN30,48に接続された中継サーバ(中継サーバ3,4)を接続対象側の中継サーバと称することがある。更に、接続側の中継サーバと、当該中継サーバに所属するクライアント端末と、をまとめて、接続側の機器と称することがある。また、接続対象側の中継サーバと、当該中継サーバに所属するクライアント端末と、をまとめて、接続対象側の機器と称することがある。
次に、図2から図11までを参照して、中継サーバ1〜4について説明する。図2は、管理側の中継サーバ1の機能ブロック図である。図5は、接続側の中継サーバ2の機能ブロック図である。図9は、接続対象側の中継サーバ3,4の機能ブロック図である。また、図4、図6から図8まで、図10、図11には、それぞれの中継サーバが記憶する情報の例が示されている。
図1に示すように、それぞれの中継サーバ1〜4はLAN10,20,30,48だけでなくWAN80にも接続されている。また、各中継サーバ1〜4にはプライベートIPアドレスに加えてグローバルIPアドレスが付与されている。従って、各中継サーバ1〜4は、自身と同一のLANに接続されたクライアント端末と通信可能であるだけでなく、他のLANに配置された中継サーバと通信可能となっている。
また、本実施形態の中継通信システム100において、当該システムに含まれる中継サーバのうち1つの中継サーバが管理側の中継サーバとして動作し、その他の中継サーバが接続側と接続対象側とに分かれて動作するように構成されている。具体的には、本実施形態では、中継サーバ1が管理側の中継サーバとして、中継サーバ2が接続側の中継サーバとして、中継サーバ3,4が接続対象側の中継サーバとして、それぞれ動作するように予め設定されている。以下では、管理側の中継サーバ1、接続側の中継サーバ2、接続対象側の中継サーバ3,4の順で説明する。
管理側の中継サーバ1は、図2に示すように、記憶部50と、制御部60と、インタフェース部70と、を備えている。
インタフェース部70は、プライベートIPアドレスを利用して、LAN10内の端末に対して通信を行うことができる。また、インタフェース部70は、グローバルIPアドレスを利用して、WAN80を経由した通信を行うことができる。
制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信を制御することができる。図2に示すように、制御部60は、インタフェースドライバ61と、LAN側IPパケット処理部62と、通信制御部63と、WAN側IPパケット処理部64と、を備えている。
インタフェースドライバ61は、インタフェース部70を制御するドライバソフトウェアである。LAN側IPパケット処理部62は、LAN10から受信したパケットに適宜の処理を行って通信制御部63に出力する。WAN側IPパケット処理部64は、WAN80から受信したパケットに適宜の処理を行って通信制御部63に出力する。
通信制御部63は、受信したパケットについて、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて送信先を決定し、決定した送信先へ当該パケットを送信する(パケット転送制御)。また、通信制御部63は、他の機器から受信した情報に基づいて、記憶部50の記憶内容を更新することができる。
記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種の情報を保存可能である。記憶部50は、オペレータ情報記憶部52と、グループ接続制御情報記憶部53と、を備えている。以下、図3及び図4を参照して、記憶部50の記憶内容について説明する。図3は、オペレータ情報の内容を示す図である。図4は、グループ接続制御情報の内容を示す図である。
オペレータ情報記憶部52は、中継通信システム100にログイン可能なオペレータの識別情報と、オペレータの現在の利用状況等を示す情報と、を含むオペレータ情報を記憶している。
図3に示すように、オペレータ情報においては、「オペレータID」の列において、中継通信システム100にログイン可能なオペレータIDが記述されている。このオペレータIDは、オペレータ毎に設定される固有の文字列で構成されている。また、「パスワード」の列では、同じ行に記述されたオペレータIDを使用して中継通信システム100にログインするために必要なパスワードが記述されている。各オペレータは、自身に設定されたオペレータID及びパスワードを用いて、中継通信システム100にログインすることができる。
「使用機器情報」の列では、同じ行に記述されたオペレータIDを使用してオペレータが中継通信システム100にログイン済みである場合に、当該オペレータが中継通信システム100へのログインに使用している中継通信システム100側の機器(具体的には、通信装置22,23ではなく、中継サーバ2又はクライアント端末21を示す。以下、使用機器と称する)に関する情報である使用機器情報が記述されている。なお、オペレータがログインしていない場合は、「使用機器情報」は空欄となる。従って、図3の例からは、オペレータIDがOp1,Op2であるオペレータは中継通信システム100にログインしており、オペレータIDがOp3,Op4であるオペレータは中継通信システム100にログインしていないことが分かる。
以下、オペレータが中継通信システム100にログインするときの流れを簡単に説明する。例えば、接続側にいるオペレータ2が中継通信システム100へのログインを希望する場合、当該オペレータ2は適当な通信装置(例えば、通信装置22)を操作して中継サーバ2にアクセスし、所定のログイン画面においてオペレータID(Op2)とパスワードを入力することで、中継通信システム100へのログイン要求を行うことができる。このログイン要求を受け付けた接続側の中継サーバ2は、この入力内容を管理側の中継サーバ1に送信する。入力内容を受信した管理側の中継サーバ1は、オペレータが入力したオペレータID及びパスワードについて、オペレータ情報記憶部52が記憶するオペレータ情報(図3)と照合することで認証を行い、ログインの可否を決定する。ログインの可否は、オペレータが操作する通信装置22に表示される。
ログインが許可された場合、管理側の中継サーバ1において、オペレータ情報記憶部52が記憶するオペレータ情報(図3)のうち「使用機器情報」の欄が更新される。今回の例では、オペレータ2が通信装置22を操作することにより中継サーバ2を使用してログインしたので、当該中継サーバ2の識別情報が、当該オペレータ2のオペレータID(Op2)に対応する使用機器情報に記述される。
なお、上記ではオペレータが中継サーバ2を使用してログインする例を示したが、オペレータはクライアント端末を使用してログインすることもできる。この場合、上記の使用機器情報は、当該クライアント端末の識別情報と、当該クライアント端末の所属先である中継サーバの識別情報と、の両方となる。例えば、オペレータ1が通信装置23を操作してクライアント端末21にアクセスし、上記と同様にオペレータID及びパスワードを入力することでも、中継通信システム100にログインすることができる。ログインに成功した場合は、図3に示すように、オペレータ情報においてオペレータIDがOp1である行の使用機器情報には、オペレータ1がログインに使用した当該クライアント端末21の識別情報及び中継サーバ2の識別情報が記述される。
オペレータ情報記憶部52が記憶するオペレータ情報(図3)のうち、ログイン可能なオペレータIDの一覧と、当該オペレータID毎に設定されるパスワードと、は各オペレータ及び管理者等によって予め設定されている。一方、使用機器情報は、オペレータがログイン又はログアウトする度に最新の情報に更新される。
グループ接続制御情報記憶部53は、中継通信システム100を利用可能な1又は複数のオペレータから構成されるオペレータグループを定義するとともに、オペレータにより接続可能な接続対象側の中継サーバを前記オペレータグループ毎に定めるグループ接続制御情報を記憶している。
図4に示すグループ接続制御情報においては、「オペレータグループID」の列において、予め登録されたオペレータグループの識別情報が記述されている。「オペレータID」の列には、当該オペレータグループを構成するオペレータを示すオペレータIDの一覧が記述されている。更に、「指定中継サーバID」の列には、そのオペレータグループに所属するオペレータにより接続可能な接続対象側の中継サーバの識別情報が記述されている。なお、以下の説明では、前記グループ接続制御情報において、オペレータによる接続が可能な中継サーバとして指定された中継サーバを、「指定中継サーバ」と呼ぶことがある。
ここで、オペレータ2(オペレータIDがOp2であるオペレータ)が通信装置22を操作して中継サーバ2にアクセスし、当該中継サーバ2を使用して中継通信システム100にログインした場合を考える。図4のグループ接続制御情報を参照すると、オペレータIDがOp2であるオペレータは、オペレータグループIDがWorkGroup1であるオペレータグループに所属するとともに、オペレータグループIDがWorkGroup2であるオペレータグループにも所属している。
また、図4のグループ接続制御情報から、オペレータグループIDがWorkGroup1であるオペレータグループに所属するオペレータは、接続対象側の中継サーバ3に接続することができ、オペレータグループIDがWorkGroup2であるオペレータグループに所属するオペレータは、接続対象側の中継サーバ4に接続できることが分かる。従って、管理側の中継サーバ1は、オペレータ2が接続可能な中継サーバの識別情報(中継サーバ3及び中継サーバ4の識別情報)を、中継サーバ2に送信する。中継サーバ2は、受信した中継サーバの識別情報に基づき、オペレータ2が接続可能な中継サーバのリストを作成して、通信装置22のディスプレイに表示させる。
オペレータは通信装置22を操作して、上記の中継サーバのリストから、接続を希望する中継サーバを選択する。ここでは、ユーザが中継サーバ3を選択したとする。なお、以下の説明では、上記のように、図4のグループ接続制御情報において、中継通信システム100にログインしたオペレータが属するオペレータグループに対応する前記指定中継サーバのうち、当該オペレータが選択した中継サーバを、「選択中継サーバ」と呼ぶことがある。
以上の操作により、オペレータ2は、この中継サーバ2(前記使用機器)と、指定中継サーバのうち当該オペレータ2が選択した中継サーバ3(選択中継サーバ)と、の接続を利用することができる。言い換えれば、オペレータ2は、中継サーバ2(使用機器)と中継サーバ3(選択中継サーバ)との間で、パケットの転送のためのセッションであるルーティングセッションを形成させるとともに、このルーティングセッションを利用して仮想プライベートネットワーク(VPN)を構築することができる。このVPNでは、中継サーバ2から送信されるパケットは、中継サーバ3を経由して、目的の機器(例えば、ファイルサーバ31)に到達することになる。
また、詳細は後述するが、選択中継サーバ(例えば、中継サーバ3)の設定内容によっては、オペレータ2は更に、この中継サーバ3と、当該中継サーバ3に所属する所定のクライアント端末(例えば、クライアント端末47)と、の接続を利用することもできるようになっている。この場合、オペレータ2は、中継サーバ2(使用機器)と中継サーバ3(選択中継サーバ)の間、及び、中継サーバ3(選択中継サーバ)とクライアント端末47(選択中継サーバに所属するクライアント端末)の間にそれぞれルーティングセッションを形成させるとともに、この2つのルーティングセッションを利用してVPNを構築することができる。このVPNでは、中継サーバ2から送信されるパケットは、中継サーバ3及びクライアント端末47を経由して、目的の機器(例えば、ファイルサーバ46)に到達することになる。
次に、接続側の中継サーバ2について図5を参照して説明する。この接続側の中継サーバ2は、記憶部50と、制御部60と、インタフェース部70と、を備える。制御部60及びインタフェース部70の構成は、管理側の中継サーバ1の構成と同様である。一方、接続側の中継サーバ2における記憶部50の記憶内容は、管理側の中継サーバ1の場合と一部異なっている。
以下、具体的に説明する。接続側の中継サーバ2の記憶部50は、管理先情報記憶部54と、ルーティングセッション情報記憶部55と、パケット転送制御情報記憶部56と、を備えている。
管理先情報記憶部54は、自身(中継サーバ2)を管理対象とする中継サーバの識別情報を管理先情報として記憶している。本実施形態では図6に示すように、中継サーバ1の識別情報が管理先情報として記述されている。これは、接続側の中継サーバ2が管理側の中継サーバ1によって管理されることを意味する。
中継サーバ2は、この管理先情報記憶部54の記憶内容を参照することにより、例えばオペレータのログインの可否を問い合わせたり、オペレータに対応する指定中継サーバの識別情報を取得したりするために、管理側の中継サーバ1にアクセスすることができる。なお、メンテナンス等の理由で管理側の中継サーバが変更された場合は、その旨が管理対象の機器(中継サーバ及びクライアント端末)に通知され、管理先情報記憶部54の記憶内容が更新されることになる。
ルーティングセッション情報記憶部55は、中継サーバ2が自身と他の機器との間でパケットの転送のための前記ルーティングセッションを形成する場合に、自身の識別情報と、当該ルーティングセッションの相手となる機器の識別情報と、を対応付けたルーティングセッション情報を記憶している。なお、以下の説明では、他の機器とルーティングセッションを形成してパケットの転送を行う機器をルーティング機器と称することがある。
図7には、中継サーバ2と中継サーバ3とでルーティングセッションを形成する場合のルーティングセッション情報記憶部55の記憶内容が示されている。このルーティングセッション情報において、自身、及びルーティングセッションの相手の機器は、ルーティングセッション確立処理において通信制御を最初に行う側(始点)と、その通信制御を受ける側(終点)と、に分けて記述されている。
ここで、接続側の機器と接続対象側の機器とでルーティングセッションを確立する場合、必ず接続側の機器が通信制御を最初に行うようになっている。一方、接続対象側の中継サーバとそれに所属するクライアント端末とでルーティングセッションを確立する場合、必ず中継サーバが通信制御を最初に行うようになっている。このように通信制御の始点となるべき機器が統一的なルールによって定められているので、通信制御の衝突を防止することができる。
パケット転送制御情報記憶部56は、オペレータが中継サーバ2にログインした結果として当該中継サーバ2が他の機器との間でルーティングセッションを形成し(即ち、中継サーバ2が前記ルーティング機器として機能し)、このルーティングセッションを利用したVPNが構築された場合に、どのような送信先を有するパケットであれば中継サーバ2が当該パケットの転送を行うのかを示すパケット転送制御情報を記憶している。
なお、本実施形態では、中継サーバがルーティング機器として機能することも、クライアント端末がルーティング機器として機能することもできるようになっているが、中継サーバ2のパケット転送制御情報記憶部56は、当該中継サーバ2がルーティング機器として機能する場合に使用されるものである。
図8には、パケット転送制御情報記憶部56の記憶内容の概要が例示されている。図8において、右側の「アドレスフィルタ情報」の列は、転送が許可されるパケットの送信先を示している。パケット転送制御情報は、図8に示すように、複数のアドレスフィルタ情報を組み合わせて構成される。
本実施形態では、アドレスフィルタ情報は、機器(パケットのルーティング対象)のアドレスを示すアドレスフィルタと、それに付与された名称と、を対応付けた情報となっている。図8の例では、アドレスフィルタは1つの機器を示すように記述されているが、例えばネットマスクを用いる等して、ネットワーク全体を示すようなアドレスフィルタとすることもできる。アドレスフィルタに対応付ける名称としては、アドレスが示す機器(あるいはネットワーク)の名称、あるいは当該機器を利用しているオペレータの名称等、分かり易い適宜の名称を付与することができる。
図8の例に照らして説明すると、中継サーバ2がルーティング機器として機能する場合、当該中継サーバ2が受信したパケットの送信先が、ファイルサーバ31又はオペレータ2(厳密にいえば、オペレータ2が操作する通信装置22)であれば、中継サーバ2は当該パケットを他の機器へ転送する。この場合の転送先としては、ルーティングセッションを形成した相手である他のルーティング機器である場合と、パケットの送信先そのものである場合と、の2通りが考えられる。一方で、パケットの送信先が上記の機器の何れでもない場合は、当該パケットを転送しない。
このように、前記パケット転送制御情報、及びそれを構成するアドレスフィルタ情報は、パケットの転送の可否をその送信先に基づいて判断する(パケットをフィルタリングする)ために用いられる。
図8の左側の「ルーティング機器ID」の列は、右側の列で示されるパケットの送信先(アドレスフィルタ情報)に対して、パケットを直接的に送信可能なルーティング機器を示している。ここで、「直接的に送信可能」とは、ルーティング機器が、他のルーティング機器を経由させずに、その送信先にパケットを送信可能であることをいう。
図8の表に示すように、パケット転送制御情報記憶部56において、アドレスフィルタ情報は、当該アドレスフィルタ情報が示す送信先に対してパケットを直接的に送信可能なルーティング機器(自身を含む)に対応付けられた形で記憶される。従って、図8のパケット転送制御情報は、転送を許可するパケットをフィルタリングする際に参照されるだけでなく、パケットの転送経路を決定する(パケットをルーティングする)目的でも用いられる。
即ち、図8の例に照らせば、中継サーバ2が受信したパケットの送信先が、オペレータ2が使用している通信装置22である場合は、中継サーバ2は他のルーティング機器を介さず当該パケットを通信装置22に送信することができる。従って、中継サーバ2は、受信したパケットを通信装置22に転送する。
一方で、中継サーバ2が受信したパケットの送信先がファイルサーバ31である場合は、図8によると、当該パケットをファイルサーバ31に届けるためには、他のルーティング機器である中継サーバ3を経由させなければならないことが分かる。従って、中継サーバ2は先ずパケットを中継サーバ3に転送する。このパケットを受信した中継サーバ3は、ルーティング機器として機能し、当該パケットを更にファイルサーバ31へ転送する。
次に、接続対象側の中継サーバ3,4について図9を参照して説明する。なお、中継サーバ3,4の構成は互いに同一であるため、以下では代表して中継サーバ3について説明する。
この中継サーバ3は、記憶部50と、制御部60と、インタフェース部70と、を備える。制御部60及びインタフェース部70の構成は、接続側の中継サーバ2の構成と同様である。一方、接続対象側の中継サーバ3における記憶部50の記憶内容は、接続側の中継サーバ2の場合と一部異なっている。
以下、具体的に説明する。接続側の中継サーバ3の記憶部50は、ルーティングセッション情報記憶部55と、パケット転送制御情報記憶部56と、アドレスフィルタ情報記憶部57と、オペレータ接続制御情報記憶部58と、を備えている。
ルーティングセッション情報記憶部55、及びパケット転送制御情報記憶部56は、接続側の中継サーバ2の構成と同様であるので、説明を省略する。
アドレスフィルタ情報記憶部57は、自身が前記ルーティング機器として機能する場合に、自身がパケットを直接的に送信可能な機器を示すアドレスフィルタ情報を記憶する。
図10には、中継サーバ3のアドレスフィルタ情報記憶部57が記憶するアドレスフィルタ情報の例が示されている。この例では、中継サーバ3がパケットを直接的に送信可能な機器がファイルサーバ31であることが記述されている。前述のとおり、アドレスフィルタ情報は、機器のアドレスを示すアドレスフィルタと、このアドレスフィルタに対応する名称と、を含んでいる。
中継サーバ3のアドレスフィルタ情報記憶部57が記憶するアドレスフィルタ情報は、当該中継サーバ3が、接続側のルーティング機器(中継サーバ2又はクライアント端末21)とルーティングセッションを形成するときに、その接続側(相手側)のルーティング機器に送信される。送信されたアドレスフィルタ情報は、接続側のルーティング機器が上述のパケット転送制御情報を作成するのに用いられる。
このアドレスフィルタ情報記憶部57の記憶内容(アドレスフィルタ情報)は、中継サーバ3に対して適宜の操作を行うことで、事前に設定しておくことができる。即ち、中継サーバ3と同一のLAN30に接続されている機器を選択した上で、そのアドレス及び適当な名称をアドレスフィルタ情報としてアドレスフィルタ情報記憶部57に設定しておくことで、当該機器は、接続側の機器からのリモートメンテナンスを受けることができるようになる。
オペレータ接続制御情報記憶部58は、管理側の中継サーバ1のグループ接続制御情報記憶部53が記憶するグループ接続制御情報(図2及び図4を参照)において、あるオペレータグループに対応する指定中継サーバが自身となっている場合に、そのオペレータグループに所属するオペレータが接続可能な接続対象側の機器をオペレータ毎に指定するオペレータ接続制御情報を記憶している。
図11に示すオペレータ接続制御情報においては、「オペレータID」の列において、オペレータの識別情報が記述されている。更に、「指定機器ID」の列には、そのオペレータにより接続可能な接続対象側の機器の識別情報が記述されている。
以下の説明では、このようにオペレータが接続可能な機器として指定された接続対象側の機器を、指定機器と称することがある。この指定機器は、接続対象側の中継サーバである場合と、その中継サーバに所属するクライアント端末である場合と、の2通りが考えられる。
図11では、中継サーバ3のオペレータ接続制御情報記憶部58が記憶するオペレータ接続制御情報の例が示されている。この例で、「オペレータID」の列には、オペレータの識別情報としてOp1,Op2,Op3が記述されている。これらのオペレータは、図4のグループ接続制御情報において中継サーバ3を指定するオペレータグループ(オペレータグループIDがWorkGroup1であるオペレータグループ)に所属している。
なお、オペレータグループIDがWorkGroup2であるオペレータグループにおいては、グループ接続制御情報において中継サーバ3ではなく中継サーバ4が指定されている(図4を参照)。従って、オペレータグループIDがWorkGroup2であるオペレータグループに所属するオペレータ(例えば、オペレータIDがOp4であるオペレータ)は、中継サーバ3のオペレータ接続制御情報記憶部58においては記憶されず、中継サーバ4が備えるオペレータ接続制御情報記憶部58に記憶されることになる。このように、各中継サーバ3,4のオペレータ接続制御情報記憶部58は、自身が指定中継サーバとなっているオペレータグループに所属しているオペレータのみに関するオペレータ接続制御情報を記憶する。従って、オペレータ接続制御情報を、中継サーバ3,4で内容を分担する形で独立的に記憶することができるので、各中継サーバ3,4における記憶内容の肥大化を防止することができるとともに、記憶内容の同期制御も省略することができる。
「指定機器ID」の列には、それぞれのオペレータの識別情報に対応して、指定機器の識別情報が指定されている。図11の例によれば、オペレータIDがOp1であるオペレータは中継サーバ3を利用でき、オペレータIDがOp2であるオペレータはクライアント端末47を利用でき、オペレータIDがOp3であるオペレータは中継サーバ3とクライアント端末42を利用することができる。
このグループ接続制御情報において、オペレータに対応付けられた指定機器が中継サーバ3以外の機器(例えばクライアント端末47)である場合は、当該オペレータは、中継サーバ3と当該指定機器との間に形成されたルーティングセッションを利用することができる。
ここで、前述の例と同じく、オペレータ2(オペレータIDがOp2であるオペレータ)が通信装置22を操作して中継サーバ2にアクセスし、当該中継サーバ2を使用して中継通信システム100にログインした場合を考える。管理側の中継サーバ1のグループ接続制御情報記憶部53が記憶するグループ接続制御情報(図4)を参照すると、オペレータIDがOp2であるオペレータが所属するオペレータグループに対しては、中継サーバ3が指定されている(中継サーバ3が指定中継サーバになっている)。従って、オペレータ2は、中継サーバ2と中継サーバ3との間に形成されたルーティングセッションを利用することができる。
また、指定中継サーバである中継サーバ3のオペレータ接続制御情報記憶部58が記憶するオペレータ接続制御情報(図11)を参照すると、オペレータIDがOp2であるオペレータは、クライアント端末47に接続することができる。従って、オペレータ2は、中継サーバ3とクライアント端末47との間に形成されたルーティングセッションを利用することができる。
結果として、オペレータ2は、中継サーバ2とクライアント端末47の間を2つのルーティングセッションによって接続し、これらのルーティングセッションを利用してVPNを構築することができる。
このように、本実施形態の中継通信システム100では、管理側の中継サーバ1が記憶するグループ接続制御情報と、指定中継サーバである接続対象側の中継サーバ3が記憶するオペレータ接続制御情報と、を組み合わせて、それぞれのオペレータが接続対象側の機器のうちどれをルーティング機器としてVPNを構築できるかを定めている。
ここで、管理側の中継サーバ1が記憶するグループ接続制御情報記憶部53においては、接続が許可される中継サーバ(指定中継サーバ)が、(接続側の中継サーバやクライアント端末の識別情報ではなく)オペレータグループIDと対応付けられている。また、指定中継サーバである接続対象側の中継サーバ3が記憶するオペレータ接続制御情報記憶部58においては、接続が許可される機器(指定機器)が、(接続側の中継サーバやクライアント端末の識別情報ではなく)オペレータIDと対応付けられている。
このため、オペレータ2がログイン時に使用した機器が異なる場合においても、接続可能な機器は上記と同じである。例えば、仮にオペレータ2が通信装置23を操作してクライアント端末21にアクセスし、当該クライアント端末21を使用して中継通信システム100にログインしたときは、当該オペレータ2は、このクライアント端末21と中継サーバ3との間に形成されたルーティングセッションと、中継サーバ3とクライアント端末47との間に形成されたルーティングセッションと、を利用してVPNを構築することができる。
次に、クライアント端末21,42,47について、図12及び図13を参照して説明する。図12は、接続側のクライアント端末21の機能ブロック図である。図13は、接続対象側のクライアント端末42,47の機能ブロック図である。
図12及び図13に示すように、クライアント端末21,42,47は、記憶部50と、制御部60と、インタフェース部70と、を備えている。制御部60及びインタフェース部70は中継サーバ1〜4とほぼ同様に構成されているが、クライアント端末21,42,47はWAN80に接続されないため、中継サーバ1〜4に備えられていたWAN側IPパケット処理部64がクライアント端末21,42,47では省略されている。
クライアント端末21,42,47のうち、LAN20に接続されるクライアント端末(接続側のクライアント端末)21においては、記憶部50は、図12に示すように、所属中継サーバ情報記憶部59と、ルーティングセッション情報記憶部55と、パケット転送制御情報記憶部56と、を備えている。
一方、LAN40又はLAN45に接続されるクライアント端末(接続対象側のクライアント端末)42,47においては、記憶部50は、図13に示すように、所属中継サーバ情報記憶部59と、ルーティングセッション情報記憶部55と、パケット転送制御情報記憶部56と、アドレスフィルタ情報記憶部57と、を備えている。
所属中継サーバ情報記憶部59は、自機が所属する中継サーバの識別情報を記憶する。従って、例えばクライアント端末21においては中継サーバ2の識別情報が、クライアント端末42,47においては中継サーバ3の識別情報が、所属中継サーバ情報記憶部59に記憶されることになる。
また、ルーティングセッション情報記憶部55、パケット転送制御情報記憶部56、及びアドレスフィルタ情報記憶部57は、中継サーバ1〜4の部分で説明した構成と同様であるので、説明を省略する。
次に、それぞれのルーティング機器(中継サーバ及びクライアント端末)において、図8に示すような前記パケット転送制御情報を作成する処理について説明する。
パケット転送制御情報は、上述のとおり、VPNの実現のためにルーティング機器が行うパケット転送制御のルールを定めるものである。一方、本実施形態の中継通信システム100では、構成機器が互いに異なるVPNを複数構築することができる。このような中継通信システム100を実現するために、中継サーバ及びクライアント端末が備えるパケット転送制御情報記憶部56は、パケット転送制御情報をVPN毎に記憶できるようになっている。即ち、新しいVPNが構築される毎に、新しいパケット転送制御情報が作成されて、これがルーティング機器のパケット転送制御情報記憶部56に記憶されることになる。
VPNのための1又は複数の前記ルーティングセッションは、オペレータが中継通信システム100へのログインに使用した使用機器と、そのオペレータに対応する指定機器と、の間を繋ぐように形成される。即ち、VPNを作成するにあたっては、ルーティング機器として機能する前記使用機器及び指定機器のそれぞれにおいて、図8に示すようなパケット転送制御情報を作成してパケット転送制御情報記憶部56に記憶することになる。
このため、VPNの構築時には、ルーティング機器として機能することになった中継サーバ又はクライアント端末は、自身に対応付けられたアドレスフィルタ情報を相手側のルーティング機器に送信できるようになっている。このアドレスフィルタ情報の交換により、それぞれのルーティング機器は、自身に対応付けられたアドレスフィルタ情報と他のルーティング機器に対応付けられたアドレスフィルタ情報を合成して、図8に示すようなパケット転送制御情報を作成し、自身が備えるパケット転送制御情報記憶部56に記憶する。
このとき、自身に対応付けられたアドレスフィルタ情報としては、自身(ルーティング機器)が使用機器であるか指定機器であるか(言い換えれば、接続側か接続対象側か)に応じて、異なるものが採用される。即ち、接続対象側に配置され、ルーティング機器として機能する可能性がある中継サーバ3及びクライアント端末42,47は、図9及び図13に示すアドレスフィルタ情報記憶部57に、自身がパケットを直接的に送信可能な装置を示すように予め設定されたアドレスフィルタ情報(以下、事前設定アドレスフィルタ情報と呼ぶことがある)を記憶している。例えば、中継サーバ3が備えるアドレスフィルタ情報記憶部57は、図10に示す事前設定アドレスフィルタ情報を記憶している。そして、中継サーバ3又はクライアント端末42,47は、自身が指定機器(ルーティング機器)として機能する場合、VPNの構築時に、前記事前設定アドレスフィルタ情報を、自身に対応付けられたアドレスフィルタ情報とする。
一方、接続側に配置される中継サーバ2及びクライアント端末21は、図5及び図12に示すように、前記事前設定アドレスフィルタ情報を記憶するアドレスフィルタ情報記憶部を備えていない。この理由は、接続対象側ではメンテナンスを受ける可能性がある機器は殆ど変化しないのに対し、接続側でオペレータがメンテナンス作業のために操作する通信装置は状況に応じて頻繁に変化するので、そのアドレスを事前に設定するのは現実的でないからである。
従って、接続側の中継サーバ2又はクライアント端末21は、オペレータがログインのために操作した通信装置がVPNによる通信を行うことができるように、自身に対応するアドレスフィルタ情報をその場で作成するようになっている。即ち、接続側の中継サーバ2又はクライアント端末21をオペレータがログインに使用した結果、ルーティング機器として機能することになった場合、中継サーバ2又はクライアント端末21は、VPNの構築時に、自身へのログインのためにオペレータによって直接操作された機器のアドレスを示すように、自身に対応付けられたアドレスフィルタ情報を作成する。なお、このとき作成されるアドレスフィルタ情報において、当該アドレスフィルタにはオペレータの名前が付与される。これにより、接続先を分かり易く管理することができる。
次に、オペレータが中継通信システム100にログインしてVPNを構築するときの具体的な流れを説明する。最初に、オペレータ1が中継サーバ2を使用してシステムにログインする例を、図14及び図15を参照して説明する。図14は、オペレータ1がログインしてVPNを開始する場合を示すネットワーク図である。図15は、オペレータ1がログインしてVPNを開始する場合の処理を示すシーケンス図である。
図14に示すように、接続側のLAN20において、オペレータ1が通信装置22に適宜の操作を行って中継サーバ2にアクセスし、当該中継サーバ2を使用機器としたログイン要求を行った場合を考える。このログイン要求では、オペレータIDとパスワードの入力が求められる。そして、オペレータ1が、自身に対応するオペレータID(Op1)及びパスワード(abc)を入力して、入力内容を確定させることにより、接続側の中継サーバ2はログイン要求を受け付ける(図15のシーケンス番号1)。そして、中継サーバ2は、入力されたオペレータID、パスワード、及び使用機器情報(具体的には、中継サーバ2の識別情報)とともに、ログイン要求を管理側の中継サーバ1に対して送信する(シーケンス番号2)。
このログイン要求等を受信した管理側の中継サーバ1は、オペレータ情報記憶部52が記憶するオペレータ情報(図3)に基づいて、オペレータIDとパスワードの認証を行う(シーケンス番号3)。また、中継サーバ1は、同一のオペレータIDでの多重ログインを防止するために、入力されたオペレータIDを使用したログインが他に行われているか否かを判定する(シーケンス番号4)。そして、オペレータの認証に成功し、かつ多重ログインが行われていない場合、管理側の中継サーバ1はログインを許可し、オペレータ情報記憶部52のオペレータ情報(図3)を更新する(シーケンス番号5)。つまり、オペレータ情報記憶部52に、オペレータ1の識別情報(Op1)と対応する使用機器情報として中継サーバ2の識別情報を記憶させる。
そして、管理側の中継サーバ1は、グループ接続制御情報記憶部53が記憶するグループ接続制御情報を参照し、ログインを許可したオペレータ1による接続が可能な中継サーバのリストを読み出す(シーケンス番号6)。今回の例では、図4に示すグループ接続制御情報において、オペレータ1が所属するオペレータグループには、中継サーバ3が対応付けられている。従って、管理側の中継サーバ1は、指定中継サーバである中継サーバ3の識別情報を、ログインを許可する旨とともに、中継サーバ2に対して送信する(シーケンス番号7)。
中継サーバ2は、この通知を受けて、中継サーバ1から受信した指定中継サーバの一覧(即ち、中継サーバ3だけからなるリスト)を作成し、ログインが許可された旨とともに、通信装置22に表示させる(シーケンス番号8)。オペレータは、この指定中継サーバの一覧から、接続を希望する中継サーバを選択するように求められる。この例では選択できる中継サーバは1つしかないので、オペレータ1は通信装置22を操作し、接続したい中継サーバとして中継サーバ3を選択する。中継サーバ2は、オペレータ1による中継サーバ3の選択を受け付けると(シーケンス番号9)、オペレータ1がログイン要求時に直接操作した通信装置22を、自身に対応するアドレスフィルタ情報とする(シーケンス番号10)。
図16には、シーケンス番号10で作成されたアドレスフィルタ情報が示されている。このアドレスフィルタ情報には、通信装置22のアドレスを示すアドレスフィルタが記述されるとともに、それに対応する名称としてオペレータ1の名称が記述されている。次に、中継サーバ2は、選択された中継サーバ3(選択中継サーバ)に対して、オペレータ1のオペレータIDと、自身に対応するアドレスフィルタ情報(図16の情報)と、を送るとともに、VPNの開始コマンドを送信する(シーケンス番号11)。
この開始コマンドを受信した中継サーバ3は、オペレータ接続制御情報記憶部58が記憶するオペレータ接続制御情報を参照し、受信したオペレータ1のオペレータIDに対応する指定機器を読み出す(シーケンス番号12)。図11のオペレータ接続制御情報によれば、オペレータ1に対応する指定機器は中継サーバ3自身である。従って、中継サーバ3は、自身のアドレスフィルタ情報記憶部57が記憶するアドレスフィルタ情報(図10)を読み出して、これを自身に対応するアドレスフィルタ情報とする(シーケンス番号13)。そして、中継サーバ3は、自身のアドレスフィルタ情報(図10)と、シーケンス番号11で受信した中継サーバ2のアドレスフィルタ情報(図16)と、を合成して、パケット転送制御情報を作成し、パケット転送制御情報記憶部56に記憶する(シーケンス番号14)。
この結果、中継サーバ3のパケット転送制御情報記憶部56には、図17に示すように、2つのアドレスフィルタ情報からなるパケット転送制御情報が記憶されることになる。中継サーバ3は、VPNの開始コマンドを受け付けた旨とともに、自身に対応付けられたアドレスフィルタ情報(図10)を中継サーバ2に対して送信する(シーケンス番号15)。
中継サーバ2は、中継サーバ3からの応答を受けると、シーケンス番号10で作成した自身に対応するアドレスフィルタ情報(図16)と、中継サーバ3から受信したアドレスフィルタ情報(図10)と、を合成して、パケット転送制御情報を作成し、パケット転送制御情報記憶部56に記憶する(シーケンス番号16)。これにより、中継サーバ2のパケット転送制御情報記憶部56にも、図17に示すように、2つのアドレスフィルタ情報からなるパケット転送制御情報が記憶されることになる。
以上のようにして、中継サーバ2と中継サーバ3との間で、アドレスフィルタ情報の交換が完了する。アドレスフィルタ情報の交換後においては、中継サーバ2のパケット転送制御情報記憶部56及び中継サーバ3のパケット転送制御情報記憶部56は、ともに図17に示す内容を記憶している。
次に、中継サーバ2は、中継サーバ3に対して、ルーティングセッションを確立するための通信制御を行う(シーケンス番号17)。これにより、中継サーバ2と中継サーバ3との間にルーティングセッションが確立され、オペレータ1が操作する通信装置22と、ファイルサーバ31と、の間でVPNによる通信を行うことができる。
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について説明する。図18は、通信装置22がファイルサーバ31にパケットを送信するときの経路を説明する図である。図19は、ファイルサーバ31が通信装置22にパケットを送信するときの経路を説明する図である。
初めに、図18に示す第1パケット(packet01)を中継サーバ2が受信した場合の処理について説明する。この第1パケットは通信装置22が送信したものであり、送信先アドレスとしてファイルサーバ31のIPアドレス(192.168.30.10)が指定されている。
中継サーバ2は、この第1パケットを受信すると、パケット転送制御情報記憶部56に記憶するパケット転送制御情報(図17)を第1パケットの送信先アドレスと比較する。そして、第1パケットに記された送信先に対してパケットを直接的に送信可能なルーティング機器を調べる。図17に示すように、第1パケットの送信先アドレス(192.168.30.10)は、中継サーバ3に対応付けられたアドレスフィルタ情報によって指定されている。従って、中継サーバ2は第1パケットの転送を許可し、中継サーバ2と中継サーバ3との間に確立されたルーティングセッションを介して第1パケットを当該中継サーバ3に送信する。
この第1パケットを受信した中継サーバ3も中継サーバ2と同様に、パケット転送制御情報記憶部56に記憶するパケット転送制御情報(図17)を、第1パケットの送信先アドレスと比較する。この結果、中継サーバ3は、第1パケットに記された送信先(192.168.30.10)に対して、自身がパケットを直接的に送信可能なことを検出する。従って、中継サーバ3は第1パケットの転送を許可し、当該第1パケットをファイルサーバ31に対して送信する。
次に、図19に示す第2パケット(packet02)を中継サーバ3が受信した場合の処理について説明する。この第2パケットはファイルサーバ31が送信したものであり、送信先アドレスとして通信装置22のIPアドレス(200.1.20.100)が指定されている。
中継サーバ3は、この第2パケットを受信した後に、上記と同様に処理を行い、第2パケットの送信先アドレス(200.1.20.100)が、中継サーバ2に対応付けられたアドレスフィルタ情報によって指定されていることを検出する。従って、中継サーバ3は第2パケットの転送を許可し、中継サーバ3と中継サーバ2との間に確立されたルーティングセッションを介して第2パケットを当該中継サーバ2に送信する。
この第2パケットを受信した中継サーバ2も、上記と同様に処理を行い、第2パケットの送信先アドレス(200.1.20.100)が、自身(中継サーバ2)に対応付けられたアドレスフィルタ情報によって指定されていることを検出する。従って、中継サーバ2は第2パケットの転送を許可し、当該第2パケットを通信装置22に対して送信する。
このように、本実施形態では、アプリケーション層のルーティングセッションで、ルーティング対象のデータを流すように構成されている。従って、以上で説明したルーティングは、通常のIPルーティングとは異なっている。このようにアプリケーション層でルーティングを行うことにより、WANを意識することなく、遠隔地のLAN同士がプライベートIPアドレスを利用して相互に通信することができる。
次に、オペレータ2が中継サーバ2を使用してシステムにログインする例を、図20から図22までを参照して説明する。図20は、オペレータ2がログインしてVPNを開始する場合を示すネットワーク図である。図21及び図22は、オペレータ2がログインしてVPNを開始する場合の処理を示すシーケンス図である。
図20に示すように、接続側のLAN20において、オペレータ2が通信装置22に適宜の操作を行って中継サーバ2にアクセスし、当該中継サーバ2を使用機器としたログイン要求を行った場合を考える。接続側の中継サーバ2はログイン要求を受け付け(図21のシーケンス番号21)、ログイン要求を管理側の中継サーバ1に対して送信する(シーケンス番号22)。管理側の中継サーバ1は、オペレータを認証し、多重ログインをチェックした後、ログインを許可すべき場合はオペレータ情報を更新する(シーケンス番号23〜25)。
そして、管理側の中継サーバ1は、グループ接続制御情報記憶部53が記憶するグループ接続制御情報を参照し、ログインを許可したオペレータ2による接続が可能な中継サーバの識別番号を読み出す(シーケンス番号26)。図4に示すグループ接続制御情報において、オペレータ2は2つのオペレータグループに所属しており、一方のオペレータグループには中継サーバ3が、他方のオペレータグループには中継サーバ4が、それぞれ対応付けられている。従って、管理側の中継サーバ1は、指定中継サーバである中継サーバ3及び中継サーバ4の識別情報を、ログインを許可する旨とともに、中継サーバ2に対して送信する(シーケンス番号27)。
中継サーバ2は、この通知を受けて、中継サーバ1から受信した指定中継サーバの一覧(即ち、中継サーバ3及び中継サーバ4からなるリスト)を作成し、ログインが許可された旨とともに、通信装置22に表示させる(シーケンス番号28)。これに対して、オペレータ2は通信装置22を操作し、上記のリストから、接続したい中継サーバとして中継サーバ3を選択したとする。中継サーバ2は、オペレータ2による中継サーバ3の選択を受け付けると(シーケンス番号29)、オペレータ2がログイン要求時に直接操作した通信装置22を、自身に対応するアドレスフィルタ情報とする(シーケンス番号30)。
図23には、シーケンス番号30で作成されたアドレスフィルタ情報が示されている。このアドレスフィルタ情報には、通信装置22のアドレスを示すアドレスフィルタが記述されるとともに、それに対応する名称としてオペレータ2の名称が記述されている。次に、中継サーバ2は、選択された中継サーバ3(選択中継サーバ)に対して、オペレータ2のオペレータIDと、自身に対応するアドレスフィルタ情報(図23)と、を送るとともに、VPNの開始コマンドを送信する(シーケンス番号31)。
この開始コマンドを受信した中継サーバ3は、オペレータ接続制御情報記憶部58が記憶するオペレータ接続制御情報を参照し、受信したオペレータ2のオペレータIDに対応する指定機器を読み出す(シーケンス番号32)。図11のオペレータ接続制御情報によれば、オペレータ2に対応する指定機器はクライアント端末47である。
従って、中継サーバ3は、シーケンス番号31で受信した中継サーバ2のアドレスフィルタ情報(図23)を、パケット転送制御情報記憶部56に記憶する(シーケンス番号33)。その上で、中継サーバ3は、指定機器であるクライアント端末47に、中継サーバ2から受信したアドレスフィルタ情報(図23)を送信するとともに、VPNの開始コマンドを送信する(図22のシーケンス番号34)。
この開始コマンドを受信したクライアント端末47は、自身のアドレスフィルタ情報記憶部57が記憶するアドレスフィルタ情報を読み出して、これを自身に対応するアドレスフィルタ情報とする(シーケンス番号35)。なお、クライアント端末47のアドレスフィルタ情報記憶部57が記憶するアドレスフィルタ情報(事前設定アドレスフィルタ情報)は図24に示されており、ここでは、ファイルサーバ46を示すアドレスフィルタが記述されている。そして、クライアント端末47は、自身のアドレスフィルタ情報(図24)と、シーケンス番号34で受信した中継サーバ2のアドレスフィルタ情報(図23)と、を合成して、パケット転送制御情報を作成し、パケット転送制御情報記憶部56に記憶する(シーケンス番号36)。
この結果、クライアント端末47のパケット転送制御情報記憶部56には、図25に示すように、2つのアドレスフィルタ情報からなるパケット転送制御情報が記憶されることになる。その後、クライアント端末47は、VPNの開始コマンドを受け付けた旨とともに、自身に対応付けられたアドレスフィルタ情報(図24)を中継サーバ3に対して送信する(シーケンス番号37)。
中継サーバ3は、クライアント端末47からの応答を受けると、当該クライアント端末47のアドレスフィルタ情報(図24)を、パケット転送制御情報記憶部56に記憶する(シーケンス番号38)。なお、この処理とシーケンス番号33の処理の結果、中継サーバ3のパケット転送制御情報記憶部56にも、クライアント端末47のパケット転送制御情報記憶部56と同一の内容(図25に示す内容)が記憶されることになる。その後、中継サーバ3は、VPNの開始コマンドを受け付けた旨とともに、クライアント端末47から受信したアドレスフィルタ情報(図24)を中継サーバ2に転送する(シーケンス番号39)。
中継サーバ2は、中継サーバ3からの応答を受けると、シーケンス番号30で作成した自身に対応するアドレスフィルタ情報(図23)と、シーケンス番号39で受信したクライアント端末47のアドレスフィルタ情報(図24)と、を合成して、パケット転送制御情報を作成し、パケット転送制御情報記憶部56に記憶する(シーケンス番号40)。これにより、中継サーバ2のパケット転送制御情報記憶部56にも、クライアント端末47のパケット転送制御情報記憶部56と同一の内容(図25に示す内容)が記憶されることになる。
以上のようにして、中継サーバ3を媒介しつつ、中継サーバ2とクライアント端末47との間でアドレスフィルタ情報の交換が完了する。アドレスフィルタ情報の交換後においては、中継サーバ2、中継サーバ3、及びクライアント端末47のパケット転送制御情報記憶部56は、何れも図25に示す内容を記憶している。
次に、中継サーバ2は、中継サーバ3に対して、ルーティングセッションを確立するための通信制御を行う(シーケンス番号41)。更に、中継サーバ3は、クライアント端末47に対して、ルーティングセッションを確立するための通信制御を行う(シーケンス番号42)。これにより、中継サーバ2と中継サーバ3との間、及び中継サーバ3とクライアント端末47の間に、それぞれルーティングセッションが確立され、オペレータ2が操作する通信装置22と、ファイルサーバ46と、の間でVPNによる通信を行うことができる。
なお、図22に示すシーケンス番号34の処理で中継サーバ3がクライアント端末47にVPN開始コマンドを送信したにもかかわらず、例えば通信障害等の理由で、クライアント端末47からの応答が返ってこない場合も考えられる。この場合、中継サーバ3は、エラーを中継サーバ2に通知し、中継サーバ2は、接続に失敗した旨を、オペレータ2が操作する通信装置22に表示させるようになっている。これにより、オペレータ2はVPNを開始できない異常を適切に把握することができる。
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について説明する。図26は、通信装置22がファイルサーバ46にパケットを送信するときの経路を説明する図である。図27は、ファイルサーバ46が通信装置22にパケットを送信するときの経路を説明する図である。
初めに、図26に示す第3パケット(packet03)を中継サーバ2が受信した場合の処理について説明する。この第3パケットは通信装置22が送信したものであり、送信先アドレスとしてファイルサーバ46のIPアドレス(192.168.45.100)が指定されている。
中継サーバ2は、この第3パケットを受信すると、パケット転送制御情報記憶部56に記憶するパケット転送制御情報(図25)を第3パケットの送信先アドレスと比較する。そして、第3パケットに記された送信先に対してパケットを直接的に送信可能なルーティング機器を調べる。図25に示すように、第3パケットの送信先アドレス(192.168.45.100)は、クライアント端末47に対応付けられたアドレスフィルタ情報によって指定されている。従って、中継サーバ2は第3パケットの転送を許可する。中継サーバ2とクライアント端末47とを直接接続するルーティングセッションは存在しないが、クライアント端末47が中継サーバ3に所属していることは中継サーバ2側で把握できるので、中継サーバ2は、中継サーバ2と中継サーバ3との間に確立されたルーティングセッションを介して第3パケットを当該中継サーバ3に送信する。
この第3パケットを受信した中継サーバ3も中継サーバ2と同様に、パケット転送制御情報記憶部56に記憶するパケット転送制御情報(図25)を、第3パケットの送信先アドレスと比較する。この結果、中継サーバ3は、第3パケットに記された送信先(192.168.45.100)に対して、クライアント端末47がパケットを直接的に送信可能なことを検出する。従って、中継サーバ3は第3パケットの転送を許可し、中継サーバ3とクライアント端末47との間に確立されたルーティングセッションを介して第3パケットを当該クライアント端末47に送信する。
この第3パケットを受信したクライアント端末47も中継サーバ3と同様に、パケット転送制御情報記憶部56に記憶するパケット転送制御情報(図25)を、第3パケットの送信先アドレスと比較する。この結果、クライアント端末47は、第3パケットに記された送信先(192.168.45.100)に対して、自身がパケットを直接的に送信可能なことを検出する。従って、クライアント端末47は第3パケットの転送を許可し、第3パケットをファイルサーバ46に送信する。
次に、図27に示す第4パケット(packet04)をクライアント端末47が受信した場合の処理について説明する。この第4パケットはファイルサーバ46が送信したものであり、送信先アドレスとして通信装置22のIPアドレス(200.1.20.100)が指定されている。
クライアント端末47は、この第4パケットを受信すると、上記と同様に処理を行い、第4パケットの送信先アドレス(200.1.20.100)が、中継サーバ2に対応付けられたアドレスフィルタ情報によって指定されていることを検出する。従って、クライアント端末47は第4パケットの転送を許可する。クライアント端末47と中継サーバ2とを直接接続するルーティングセッションは存在しないので、クライアント端末47は、自身と、自身が所属している中継サーバ3と、の間で確立されたルーティングセッションを介して、第4パケットを中継サーバ3に送信する。
中継サーバ3は、この第4パケットを受信した後に、上記と同様に処理を行い、第4パケットの送信先アドレス(200.1.20.100)が、中継サーバ2に対応付けられたアドレスフィルタ情報によって指定されていることを検出する。従って、中継サーバ3は第4パケットの転送を許可し、中継サーバ3と中継サーバ2との間に確立されたルーティングセッションを介して第4パケットを当該中継サーバ2に送信する。
この第4パケットを受信した中継サーバ2も、上記と同様に処理を行い、第4パケットの送信先アドレス(200.1.20.100)が、自身(中継サーバ2)に対応付けられたアドレスフィルタ情報によって指定されていることを検出する。従って、中継サーバ2は第4パケットの転送を許可し、当該第4パケットを通信装置22に対して送信する。
なお、図14及び図20では、オペレータ1,2が中継サーバ2を使用してログインする場合で説明したが、オペレータ1,2は、中継サーバ2の代わりにクライアント端末21を使用してログインしても良い。この場合は、図15、図21、図22のシーケンス図で中継サーバ2が行う処理を、クライアント端末21が代わって行うことになる。この結果、オペレータ1がクライアント端末21を使用してログインする場合、図18の例に照らしていえば、クライアント端末21が送信するパケットは、中継サーバ2、及び中継サーバ3を経由して、ファイルサーバ31に到達する。また、オペレータ2がクライアント端末21を使用してログインする場合、図27の例に照らしていえば、クライアント端末21が送信するパケットは、中継サーバ2、中継サーバ3、及びクライアント端末47を経由して、ファイルサーバ46に到達する。
また、オペレータがクライアント端末21を使用してログインする場合、当該オペレータの認証に関しては以下のような処理が行われる。即ち、クライアント端末21はオペレータのログイン要求を受け付けると、当該ログイン要求を、自身が所属している中継サーバ2に送信する。ここで、クライアント端末21が所属している中継サーバは、当該クライアント端末21が備える所属中継サーバ情報記憶部59の記憶内容から取得することができる。そして、中継サーバ2は、自身を管理する中継サーバ1(管理先情報記憶部54に識別情報が記憶されている中継サーバ1)に対してログイン要求を転送し、中継サーバ1において前記と同様にオペレータID及びパスワードの認証が行われる。
以上に説明したように、本実施形態の中継サーバ2(図5)は、自身がパケットを転送可能なアドレスである第1アドレスフィルタ情報と、他の接続対象機器である中継サーバ3又はクライアント端末47がパケットを転送可能なアドレスである第2アドレスフィルタ情報と、を記憶する手段(パケット転送制御情報記憶部56)を備える。また、中継サーバ2は、LAN20で接続された通信装置22を介してログイン操作するオペレータの識別情報(例えばOp1)を受け付ける手段と、ログインを受け付けたオペレータの識別情報に基づいて、当該オペレータが所属するオペレータグループ(IDがWorkGroup1であるオペレータグループ)が接続可能な中継サーバのリスト(中継サーバ3だけのリスト)を取得する手段と、取得した他の中継サーバのリストの中からオペレータによる中継サーバの選択(中継サーバ3の選択)を受け付ける手段と、オペレータにより選択された中継サーバ3とルーティングセッションを確立する手段と、を備える。中継サーバ2は、オペレータがログイン操作した通信装置22のアドレスを第1アドレスフィルタ情報として記憶し、前記第1アドレスフィルタ情報を中継サーバ3へ送信する。また、中継サーバ2は、オペレータによって選択された中継サーバ3から前記第2アドレスフィルタ情報を受信して記憶する。中継サーバ2は、ルーティングセッションから受信したパケットの送信先アドレスが前記第1アドレスフィルタ情報に含まれている場合には、送信先へパケットを送信する。中継サーバ2は、通信装置から受信したパケットの送信先アドレスが前記第2アドレスフィルタ情報に含まれている場合には、前記ルーティングセッションへパケットを送信する。
これにより、オペレータは、中継サーバ2と、当該オペレータに選択された中継サーバ3と、の間に確立されたルーティングセッションを利用して、他の機器(例えば、ファイルサーバ31)との間で通信を行うことができる。また、上記の構成では、ルーティングセッションの相手としてオペレータが選択可能な中継サーバ3は、当該オペレータが所属するオペレータグループ毎に設定されるとともに、選択可能な中継サーバの中からオペレータによって実際に選択された選択中継サーバ3において、当該オペレータが接続可能な機器が指定される。そのため、オペレータがログインに用いる通信装置22が変更されても、ログインを行うオペレータが同一であれば、以前と同一の機器と通信を行うことができる。また、オペレータグループレベルでのアクセス制御の設定を中継サーバ2自身で行い、それぞれのオペレータレベルでのアクセス制御の設定を選択中継サーバ3で行うことで、複雑なアクセス制御を合理的かつ容易に実現することができる。
また、本実施形態の中継サーバ2は、パケット転送制御情報記憶部56と、制御部60と、を備える。パケット転送制御情報記憶部56は、自身がパケットを転送可能な機器のアドレスを定めるアドレスフィルタ情報を自身の識別情報と対応付けるとともに、自身と接続可能な接続対象側の中継サーバ及び当該接続対象側の中継サーバに所属するクライアント端末である接続対象側の機器がパケットを転送可能な機器のアドレスを定めるアドレスフィルタ情報を当該接続対象側の機器の識別情報と対応付けたパケット転送制御情報(図25)を記憶可能である。中継サーバ2の制御部60は、管理側の中継サーバ1が記憶する情報であって、中継通信システム100にログイン可能なオペレータを含むオペレータグループの情報と、当該オペレータグループに所属するオペレータによる接続が可能な中継サーバとして指定された指定中継サーバと、を対応付けた情報であるグループ接続制御情報(図4)に基づき、ログイン要求を行ったオペレータ2(ログイン要求オペレータ)による接続が可能な前記指定中継サーバ(中継サーバ3)を取得する。中継サーバ2の制御部60は、取得した前記指定中継サーバのうちオペレータ2により選択された中継サーバ3(選択中継サーバ)と、自身である中継サーバ2と、の間でルーティングセッションを確立する(シーケンス番号41)。中継サーバ2の制御部60は、中継サーバ3が記憶する情報であって、前記オペレータグループに所属するオペレータの識別情報と、当該中継サーバ3に所属するクライアント端末のうち当該オペレータによる接続が可能な機器として指定された指定機器の識別情報と、を対応付けたオペレータ接続制御情報(図11)に基づき、当該中継サーバ3と、クライアント端末47と、の間でルーティングセッションを確立させる(シーケンス番号42)。中継サーバ2の制御部60は、オペレータ2がログイン要求を行うために操作した通信装置22のアドレスを、自身の識別情報と対応付けたアドレスフィルタ情報としてパケット転送制御情報記憶部56に記憶するとともに、当該アドレスフィルタ情報を前記指定機器へ送信する(図21のシーケンス番号30,31,40)。中継サーバ2の制御部60は、中継サーバ2と、クライアント端末47と、の間を接続するように構成された1又は複数のルーティングセッションを利用したVPNを開始する。中継サーバ2の制御部60は、受信したパケットの送信先が、中継サーバ2の識別情報と対応付けられたアドレスフィルタ情報において指定されているときは、当該送信先にパケットを送信し(図27)、受信したパケットの送信先がクライアント端末47の識別情報と対応付けられたアドレスフィルタ情報において指定されているときは、中継サーバ2とクライアント端末47との間を接続するように構成された1又は複数のルーティングセッションを介して当該クライアント端末47にパケットを送信する(図26)。
これにより、構築したVPNを利用して、オペレータ2がログイン要求を行うために操作した通信装置22と、クライアント端末47がパケットを転送可能なファイルサーバ46と、の間で通信を行うことができる。また、グループ接続制御情報及びオペレータ接続制御情報では、接続が可能な指定中継サーバ又は指定機器が、オペレータグループ又はオペレータに対応付けられている。また、接続側の中継サーバ2においては、自身に対応付けられたアドレスフィルタ情報を、オペレータが中継通信システム100にログインするにあたって操作した通信装置のアドレスを用いてその場で作成し、これがパケットの転送のために用いられる。そのため、例えばオペレータ2は、通信装置22を操作して中継サーバ2にログインする場合は、中継サーバ2、中継サーバ3及びクライアント端末47をルーティング機器とし、当該通信装置22とファイルサーバ46との間でVPNを構築することができる。そして、ログアウトしたオペレータ2が、今度は通信装置23を操作して中継サーバ2にログインする場合は、中継サーバ2、中継サーバ3及びクライアント端末47をルーティング機器とし、通信装置23とファイルサーバ46との間でVPNを構築することができる。このように、オペレータがログインのために操作する機器が変更されても、ログインを行うオペレータが同一であれば、以前と同一の相手を含むようなVPNを容易に構築して利用することができる。更に、本実施形態では、中継サーバレベル(LANレベル)でのアクセス制御はオペレータグループを単位として行う一方、機器レベルでのアクセス制御は、接続対象側の中継サーバ3,4(指定中継サーバ)がそれぞれ記憶するオペレータ接続制御情報に基づき、個別のオペレータを単位として行うようになっている。従って、オペレータのアクセス制御について、管理の容易さ(設定事項の整理のし易さ)とキメ細かいアクセス制御を両立させることができる。更に、中継サーバ3,4のオペレータ接続制御情報記憶部58においては、自身が指定中継サーバになっているオペレータグループに所属するオペレータ(のみ)について、指定機器を記憶する。このように、機器レベルでの細かいアクセス制御を定めるオペレータ接続制御情報が、それぞれの中継サーバ3,4で分担する形で、かつ互いに独立して記憶されるため、個々の中継サーバ3,4における記憶内容の肥大化を防止できるとともに、記憶内容の同期制御も省略することができる。
また、本実施形態において、前記中継サーバ3がクライアント端末47と通信できない場合(図22のシーケンス番号37に示す応答が返って来ない場合)には、接続側の中継サーバ2における制御部60は、当該中継サーバ3が自身に通知するエラーに基づいて、接続に失敗した旨を、オペレータ2が操作する通信装置22に表示させる。
これにより、オペレータ2は、VPNによる通信を開始できない異常を適切に把握することができる。
また、本実施形態の中継サーバ2は、管理側の中継サーバ1の識別情報を記憶する管理先情報記憶部54を備える。前記グループ接続制御情報は、管理側の中継サーバ1が備えるグループ接続制御情報記憶部53によって記憶される。中継サーバ2の制御部60は、オペレータ2からログイン要求を受け付けたときに、管理先情報記憶部54の記憶内容に基づいて中継サーバ1にアクセスすることにより(図21のシーケンス番号22)、ログイン要求を行ったオペレータ2が接続可能な指定中継サーバ(中継サーバ3,4)を取得する。
これにより、中継サーバ1がグループ接続制御情報を集中的に管理する構成となるため、複数の機器によってグループ接続制御情報を共有させる必要がない。従って、当該機器間におけるグループ接続制御情報の同期制御が不要となり、中継サーバで行われる処理の負荷を軽減することができる。
ただし、上記実施形態において、管理側の中継サーバ1の代わりに、グループ接続制御情報を中継サーバ2及びクライアント端末21が記憶し、互いにその内容を同期するように変更しても良い。この場合、中継サーバ2の制御部60は、オペレータからログイン要求を受け付けたときに、自身が備えるグループ接続制御情報記憶部の記憶内容に基づいて、ログイン要求を行ったオペレータが接続可能な中継サーバを取得することになる。
この構成では、中継サーバ2は、自身の記憶内容を参照するだけで、ログイン要求を行ったオペレータが接続可能な中継サーバを取得できる。このため、VPNを開始するまでの処理を単純にすることができる。
次に、中継サーバ3,4のオペレータ接続制御情報記憶部58に関する変形例を説明する。図28は、オペレータ接続制御情報の変形例を示す図である。
図28には、当該変形例において、中継サーバ3のオペレータ接続制御情報記憶部58が記憶するオペレータ接続制御情報が示されている。この変形例に係るオペレータ接続制御情報では、上述の実施形態(図11)の場合と異なり、指定機器の識別情報が、オペレータIDに加えて時間帯の情報(スケジュール情報)に対応付けられた形で記述されている。この例では、オペレータ2は、中継サーバ3とクライアント端末47との接続を終日利用できる一方、中継サーバ3とクライアント端末42との接続は、午前0時から午前6時までの間だけ利用できる。
このようにオペレータ接続制御情報を構成することにより、接続時間帯の観点からのアクセス制御を実現することができる。なお、スケジュール情報は、時刻にとどまらず、例えば日付(年月日)、曜日等を用いて記述しても良いことは勿論である。
以上に示すように、本変形例においては、中継サーバ3が記憶するオペレータ接続制御情報において、前記オペレータグループに所属するオペレータの識別情報と、前記指定機器の識別情報と、時間帯の情報と、が対応付けられている。中継サーバ2の制御部60は、オペレータ接続制御情報に基づき、中継サーバ3と、ログインを要求するオペレータ及び現在時間に対応する指定機器と、の間を接続するように構成された1又は複数のルーティングセッションを利用したVPNを開始する。
これにより、接続時間帯を考慮したよりキメ細かいアクセス制御を行うことができる。
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
上記のオペレータ情報、グループ接続制御情報、オペレータ接続制御情報等は、適宜の形式(例えばXML形式)で格納することができる。
上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。