中継サーバ及び中継通信システム
【課題】相手にアドレスを知らせることなく中継通信が可能な中継通信システムを構築できる中継サーバを提供する。
【解決手段】中継サーバ3は、第1ルーティング対象アドレスと、第2ルーティング対象アドレスと、を記憶する。中継サーバ3は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。中継サーバ3は、第1ルーティング対象アドレスに仮想アドレスを割り当てる。中継サーバ3は、第1ルーティング対象アドレスに割り当てた仮想アドレスを中継サーバ1へ送信するとともに、中継サーバ1から第2ルーティング対象アドレスを受信し、中継サーバ1とルーティングセッションを確立する。中継サーバ3は、交換したルーティング対象アドレスに基づいてルーティング制御を行う。
【解決手段】中継サーバ3は、第1ルーティング対象アドレスと、第2ルーティング対象アドレスと、を記憶する。中継サーバ3は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。中継サーバ3は、第1ルーティング対象アドレスに仮想アドレスを割り当てる。中継サーバ3は、第1ルーティング対象アドレスに割り当てた仮想アドレスを中継サーバ1へ送信するとともに、中継サーバ1から第2ルーティング対象アドレスを受信し、中継サーバ1とルーティングセッションを確立する。中継サーバ3は、交換したルーティング対象アドレスに基づいてルーティング制御を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、主として、異なるLAN(Local Area Network)に接続されている機器間の通信を可能とする中継サーバに関する。
【背景技術】
【0002】
従来から、物理的に離れた場所に設置されたLAN同士で通信を行う仮想プライベートネットワーク(Virtual Private Network,VPN)と呼ばれる通信技術が知られている。特許文献1に示す例では、物理的に離れた位置に設置された複数のLANのそれぞれに中継サーバ及び通信端末等が接続されている。通信端末は、このVPNを利用して、他のLANに接続された通信端末へパケットを送信することができる。具体的には、通信端末が送信するパケットは、初めに同一LAN内の中継サーバへ送られる。この中継サーバは、インターネットを介して、宛先の通信端末と同一のLAN内の中継サーバへパケットを送信(転送)する。そして、このパケットを受信した中継サーバは、宛先の通信端末へパケットを送信(転送)する。
【0003】
このVPNを利用することにより、遠隔地にある他のLANを、あたかも直接接続されているネットワークであるかのように使用することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−268312号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、この種のシステムにおいては、LANに接続された端末のIPアドレス(プライベートIPアドレス)を用いて端末同士の通信を行っている。従って、VPNを利用した通信を行う場合、自分のLANに設定されたIPアドレスを相手側のLANへ送信する必要がある。
【0006】
この点、例えば同一企業同士でVPNを構築する場合、相手にIPアドレスを知られても問題にはなりにくい。しかし、異なる企業同士でVPNを構築する場合、セキュリティ上の観点から、相手にIPアドレスを知られることは好ましくない。従って、LANで機器に付与されているIPアドレスを他のLAN側に知られることなくVPNを運用できる構成が望まれていた。
【0007】
本発明は以上の事情に鑑みてされたものであり、その主要な目的は、相手に実際のアドレスを知らせることなく中継通信が可能な中継通信システムを構築できる中継サーバを提供することにある。
【課題を解決するための手段及び効果】
【0008】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【0009】
本発明の第1の観点によれば、以下の構成の中継サーバが提供される。即ち、この中継サーバは、アドレスフィルタ情報記憶部と、仮想アドレス割当関係記憶部と、制御部と、を備える。前記アドレスフィルタ情報記憶部は、第1LAN内に位置し(中継サーバが)パケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶する。前記仮想アドレス割当関係記憶部は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。前記制御部は、前記第1ルーティング対象アドレスに前記仮想アドレスを割り当て、その割当関係を前記仮想アドレス割当関係記憶部に記憶する。前記制御部は、前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する。前記制御部は、前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する。前記制御部は、前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する。
【0010】
これにより、制御部が上記のようにアドレスを変換することで、第1ルーティング対象装置は、自機のアドレスを相手に知らせることなく、第2ルーティング対象装置と通信を行うことができる。従って、セキュリティを確保しつつ中継通信を行うことができる。また、第2中継サーバ及び第2ルーティング対象装置から見たときに、第1ルーティング対象装置を示すアドレスが実際のアドレスであるか仮想アドレスであるかについても隠蔽されるので、この点においてもセキュリティを向上することができる。
【0011】
前記の中継サーバにおいては、前記制御部は、無作為に決定された前記仮想アドレスを前記第1ルーティング対象アドレスに割り当てることが好ましい。
【0012】
これにより、仮想アドレスから第1ルーティング対象アドレスが推測されることを防止できるので、セキュリティを一層向上させることができる。
【0013】
前記の中継サーバにおいては、前記仮想アドレスを用いて通信を行うか前記第1ルーティング対象アドレスを用いて通信を行うかを中継サーバ毎に設定可能であることが好ましい。
【0014】
これにより、ある中継サーバを利用するユーザは、他の中継サーバのユーザとの関係等を考慮して、中継サーバ毎に用いるアドレスを決定することができる。従って、様々な状況に柔軟に対応可能な中継通信システムが実現できる。
【0015】
本発明の第2の観点によれば、第1中継サーバ及び第2中継サーバを含んで構成される中継通信システムにおいて、以下の構成が提供される。即ち、第1LAN内に位置する中継サーバは、アドレスフィルタ情報記憶部と、仮想アドレス割当関係記憶部と、制御部と、を備える。前記アドレスフィルタ情報記憶部は、当該第1中継サーバがパケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する前記第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶する。前記仮想アドレス割当関係記憶部は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。前記制御部は、前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する。前記制御部は、前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する。前記制御部は、前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する。
【0016】
これにより、制御部が上記のようにアドレスを変換することで、第1ルーティング対象装置は、自機のアドレスを相手に知らせることなく、第2ルーティング対象装置と通信を行うことができる。従って、セキュリティを確保しつつ中継通信を行うことができる。また、第2中継サーバ及び第2ルーティング対象装置から見たときに、第1ルーティング対象装置を示すアドレスが実際のアドレスであるか仮想アドレスであるかについても隠蔽されるので、この点においてもセキュリティを向上することができる。
【図面の簡単な説明】
【0017】
【図1】本発明の一実施形態に係る中継通信システムの全体構成を示す説明図。
【図2】中継サーバの機能ブロック図。
【図3】中継グループ情報の内容を示す図。
【図4】中継サーバ情報の内容を示す図。
【図5】クライアント端末情報の内容を示す図。
【図6】VPNグループ情報の内容を示す図。
【図7】それぞれの中継サーバに予め登録されるアドレスフィルタ情報の内容を示す図。
【図8】VPN構築後に中継サーバ1,3が記憶する内容を示す図。
【図9】仮想アドレス登録情報の内容を示す図。
【図10】予め中継サーバに行う設定を示すフローチャート。
【図11】VPNグループを作成する処理を示すフローチャート。
【図12】VPNを構築する処理を示すフローチャート。
【図13】VPNを構築する処理を示すフローチャート。
【図14】LANからパケットを受信したときのルーティング制御を示すフローチャート。
【図15】ルーティングセッションからパケットを受信したときのルーティング制御を示すフローチャート。
【図16】仮想アドレスを用いたルーティング制御を示す説明図。
【図17】仮想アドレス管理情報(設定情報)の内容を示す図。
【発明を実施するための形態】
【0018】
次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本実施形態に係る中継通信システム100の全体構成を示す説明図である。
【0019】
図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数のLAN10,20,30で構成されている。それぞれのLAN10,20,30は、限定された場所で構築される比較的小規模なネットワークである。また、LAN10,20,30は、それぞれが物理的に離れた場所に配置されている。なお、本実施形態ではWAN80としてインターネットが使用されている。
【0020】
以下、それぞれのLANを具体的に説明する。図1に示すように、LAN(第2LAN)10には、中継サーバ(第2中継サーバ)1と、第2ルーティング対象装置としての操作PC11,12と、クライアント端末13と、が接続されている。LAN20には、中継サーバ2と、操作PC21と、クライアント端末22と、が接続されている。LAN(第1LAN)30には、中継サーバ(第1中継サーバ)3と、第1ルーティング対象装置としての対象端末31,32,33と、クライアント端末34と、が接続されている。
【0021】
それぞれの中継サーバ1,2,3は、LAN10,20,30だけでなくWAN80にも接続されているため、同一のLANに接続された機器と通信可能であるだけでなく、他のLANに配置された中継サーバとも通信可能となっている。操作PC11,12,21は、例えばオペレータが操作するためのパーソナルコンピュータである。対象端末31,32,33は、パーソナルコンピュータ、又は、ファイルサーバ等であり、例えばオペレータは、操作PC11等を操作して、対象端末31等に所定のデータを要求すること、及び、対象端末31の記憶内容を更新することが想定されている。クライアント端末13,22,34は、例えばパーソナルコンピュータで構成されており、それぞれ自身が所属する中継サーバ1,2,3を介して、互いに通信可能である。
【0022】
次に、図2を参照して、中継サーバ1,2,3の詳細な構成について説明する。図2は、中継サーバ3の機能ブロック図である。なお、中継サーバ3は中継サーバ1,2と略同じ構成であるので、以下では、主として中継サーバ3について説明する。
【0023】
図2に示すように、中継サーバ3は、記憶部50と、制御部60と、インタフェース部70と、を備えている。
【0024】
インタフェース部70は、LAN10内の端末に対して通信を実行する。また、インタフェース部70は、WAN80に対して通信を実行する。インタフェース部70は、LAN30又はWAN80から受信したパケットに適宜の処理を行って制御部60へ出力する。
【0025】
制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信を制御することができる。具体的には、制御部60は、受信したパケットについて、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて宛先を決定し、決定した宛先へ当該パケットを送信する。また、制御部60は、他の端末から受信した情報に基づいて、記憶部50の記憶内容を更新することができる。
【0026】
記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種データを保存可能である。記憶部50は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、クライアント端末情報記憶部53と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、仮想アドレス登録情報記憶部56と、仮想アドレス割当関係記憶部57と、を備えている。なお、中継サーバ1,2は、後述の仮想アドレスを用いた通信を行わないため、仮想アドレス登録情報記憶部56及び仮想アドレス割当関係記憶部57を備えていない。以下、図3から図9までを参照して、記憶部50の記憶内容について説明する。図3から図9までは、主として、中継サーバ3の記憶部50の記憶内容を示す図である。
【0027】
中継グループ情報記憶部51は、中継グループと、当該中継グループを構成する中継サーバと、を示した中継グループ情報を記憶している。
【0028】
図3に示すように、中継グループ情報においては、groupタグと、このgroupタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関するグループ情報511が記述されている。このグループ情報511としては、中継グループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、中継グループの名称(「name」)と、が記述されている。siteタグには、中継グループを構成する中継サーバに関するグループ構成情報512が記述されている。このグループ構成情報512には、当該中継サーバの識別情報(「id」)が記述されている。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、特定の中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
【0029】
なお、この中継グループ情報は、当該中継グループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいて中継グループを変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継グループ情報が更新される。このようにして、中継グループ情報が動的に共有される。
【0030】
中継サーバ情報記憶部52は、中継通信を行う中継サーバ及び当該中継サーバに所属するクライアント端末の概要を示す中継サーバ情報を記憶している。
【0031】
図4に示す中継サーバ情報においては、中継サーバ毎に記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには中継サーバ1に関するサーバ情報521が記述されている。このサーバ情報521としては、中継サーバの識別情報(「id」)と、中継サーバの名称(「name」)と、起動情報(「stat」)と、が記述されている。なお、「stat」の内容が「active」の場合は中継サーバが中継通信システム100にログインしていることを示し、statが空欄であるときはログオフ中であることを示す。siteタグの子要素であるnodeタグには、中継サーバに所属するクライアント端末を示す所属情報522が記述されている。所属情報522としては、所属する中継グループの名称(「group」)と、クライアント端末の識別情報(「id」)と、クライアント端末の名称(「name」)と、所属先の中継サーバの識別情報(「site」)と、が記述されている。クライアント端末が中継通信システム100にログインしていないときは、「site」は空欄となる。
【0032】
なお、中継グループによる通信は、上記の中継グループ情報及び中継サーバ情報に基づいて、以下のようにして行われる。例えばクライアント端末13からクライアント端末22にパケットを送信する場合、初めに、クライアント端末13は、自身が接続している中継サーバである中継サーバ1にパケットを送信する。なお、パケットのやり取りが可能な中継サーバは上記の中継グループ情報に基づいて把握することができ、中継サーバに所属しているクライアント端末の識別情報及び接続の可否は上記の中継サーバ情報に基づいて把握することができる。中継サーバ1は、これらの情報に基づいて、クライアント端末22が接続している中継サーバである中継サーバ2へパケットを転送する。そして、このパケットを受信した中継サーバ2がクライアント端末22へパケットを転送する。このようにして、クライアント端末13,22同士で中継通信を行うことができる。
【0033】
この中継サーバ情報に関しても中継グループ情報と同様に、当該中継グループを構成する中継サーバ1,2,3の間で情報が共有されている。そして、ある中継サーバにおいて中継サーバ情報を変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継サーバ情報が更新される。このようにして、中継サーバ情報が動的に共有される。
【0034】
クライアント端末情報記憶部53は、クライアント端末に関する詳細な情報であるクライアント端末情報を記憶している。なお、中継サーバ1,2,3は、自身に所属するクライアント端末に関するクライアント端末情報のみを記憶している。中継サーバ3には、クライアント端末34が所属しているため、中継サーバ3が備えるクライアント端末情報記憶部53には、クライアント端末34についてのクライアント端末情報のみが記憶されている。
【0035】
中継サーバ3のクライアント端末情報記憶部53が記憶するクライアント端末情報は、図5(c)に示されている。同様に、中継サーバ1が記憶するクライアント端末情報が図5(a)に、中継サーバ2が記憶するクライアント端末情報が図5(b)に、それぞれ示されている。
【0036】
図5に示すクライアント端末情報においては、nodeタグが記述されている。このnodeタグには、クライアント端末のプライベートIPアドレス(「addr」)と、所属する中継グループの名称(「group」)と、識別情報(「id」)と、名称(「name」)と、中継サーバにログインするためのパスワード(「pass」)と、ポート情報(「port」)と、が記述されている。
【0037】
VPNグループ情報記憶部54は、中継グループを構成する中継サーバ及びクライアント端末からルーティングポイントとして選択された機器(以下、ルーティング機器と称する)で構成されたVPNグループに関する情報であるVPNグループ情報を記憶している。同一のVPNグループに所属するルーティング機器同士でルーティングセッションを確立させることにより、VPNを利用した通信を開始することができる。
【0038】
図6に示すVPNグループ情報においては、vnetタグが記述されている。このvnetタグには、VPNグループ基本情報541と、ルーティングポイント情報542と、ルーティングセッション情報543と、が記述されている。VPNグループ基本情報541には、VPNグループが所属する中継グループの名称(「group」)と、VPNグループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、VPNグループの名称(「name」)と、が記述されている。ルーティングポイント情報542には、VPNグループ間で通信を行うときにルーティングを行うルーティング機器の識別情報が記述されている。図6の例においては、ルーティング機器として、中継サーバ1と、中継サーバ3と、が記述されている。ルーティングセッション情報543には、VPNグループにおいて互いに接続されるルーティング機器が記述されている。ルーティングセッション情報543において、ルーティング機器は、VPNグループでVPNを構築して通信を開始するためのルーティングセッション確立処理において、通信制御を最初に行う側(「sp(start point)」)と、その通信制御を受ける側「ep(end point)」と、に分けて定められている。なお、以下の説明では、ルーティングセッション確立のための通信制御を最初に行う側のルーティング機器を「始点」と、その通信制御を受ける側のルーティング機器を「終点」と、それぞれ称することがある。
【0039】
図6に示すVPNグループ情報からは、VPNグループ(VPN−GROUP1)が、中継サーバ1と中継サーバ3とで構成されることが分かる。また、このVPNグループの開始時には、中継サーバ3から中継サーバ1へルーティングセッションを確立するための通信制御が行われることが分かる。
【0040】
このVPNグループ情報も中継サーバ情報及び中継グループ情報と同様に、同じVPNグループに所属する中継サーバ1,3の間で共有されている。そして、ある中継サーバにおいてVPNグループ情報を変更する処理が行われた場合は、同じVPNグループに所属する他の中継サーバに対してその旨が送信されてVPNグループ情報が更新される。このようにして、VPNグループ情報が動的に共有される。なお、このVPNグループを作成する処理については後述する。
【0041】
アドレスフィルタ情報記憶部55は、VPNを利用したルーティング制御を行う際に用いられる情報であるアドレスフィルタ情報を記憶する。アドレスフィルタ情報記憶部55は、VPNの構築前においては、中継サーバ3自身がパケットを直接的に送信可能な装置(ルーティング対象装置)を示す情報(中継サーバ3のアドレスフィルタ情報)を記憶する。なお、アドレスフィルタ情報には、ルーティング対象装置のアドレス(ルーティング対象アドレス)と、ルーティング対象装置の名称と、が含まれる。
【0042】
図7(c)には、中継サーバ3自身に予め登録されたアドレスフィルタ情報の例が示されている。この例では、中継サーバ3がパケットを直接的に送信可能な機器が対象端末31,32,33であることが記述されている。なお、図7(a)には、中継サーバ1に予め登録されたアドレスフィルタ情報が示され、図7(b)には、中継サーバ2に予め登録されたアドレスフィルタ情報が示されている。以下では、中継サーバ3のアドレスフィルタ情報に含まれるルーティング対象アドレス(対象端末31,32,33のアドレス)を第1ルーティング対象アドレスと称し、中継サーバ1のアドレスフィルタ情報に含まれるルーティング対象アドレス(操作PC11,12のアドレス)を第2ルーティング対象アドレスと称することがある。
【0043】
中継サーバ3の仮想アドレス登録情報記憶部56には、図9に示すように、少なくともLAN30内で重複しないアドレス(LAN30内の機器に割り当てられておらず、かつその予約もされていないアドレス)が仮想アドレスとして予め登録されている。この仮想アドレスは、所定のタイミング(例えば他の中継サーバと通信を開始するタイミング)で、第1ルーティング対象アドレスに割り当てられる。仮想アドレス割当関係記憶部57は、第1ルーティング対象アドレスと仮想アドレスとの対応関係(割当関係)を記憶する。
【0044】
以下、仮想アドレスを利用しない通信と、仮想アドレスを利用する通信と、の違いについて簡単に説明する。仮想アドレスを利用しない場合は、中継サーバ同士でルーティングセッションを確立する際に、ルーティング対象アドレス(実際のアドレス)が交換される。これにより、中継サーバは、通信相手のルーティング対象アドレスを利用して通信を行うことができる。しかし、ルーティング対象アドレスが知られてしまうことは、セキュリティの観点から好ましくないことがある。
【0045】
これに対し、仮想アドレスを利用する通信では、アドレスフィルタ情報を送信する際に、ルーティング対象アドレスに代えて仮想アドレスを送信する。そして、中継通信システム100では、この仮想アドレスを用いてルーティング対象装置同士で通信を行うことができる(詳細な処理は後述)。従って、本実施形態では、セキュリティを確保しつつ中継通信を行うことができる。
【0046】
次に、VPNを利用した通信を行うための準備について説明する。初めに、図10を参照して中継サーバに予め行う設定について説明し、次に、図11を参照してVPNグループを作成するときの流れについて説明する。図10は、予め中継サーバに行う設定を示すフローチャートである。図11は、VPNグループを作成する処理を示すフローチャートである。
【0047】
中継サーバ3に予め行う設定としては、当該中継サーバ3のアドレスフィルタ情報の登録(S101)がある。この登録は、中継通信システム100を利用するユーザが、ルーティング対象装置として指定する機器等のアドレス(第1ルーティング対象アドレス)と、名称と、を所定の方法で入力することにより行う。ここでは、ユーザは、対象端末31,32,33のアドレス及び名称を入力したものとする。ここで登録されたアドレスフィルタ情報は、アドレスフィルタ情報記憶部55に記憶される。
【0048】
次に、仮想アドレスを用いた通信を行う場合は、ユーザは、少なくともLAN30内で重複しないアドレスを仮想アドレスとして登録する(S102)。ここで登録された仮想アドレスは、仮想アドレス登録情報記憶部56に記憶される。なお、ユーザは、仮想アドレスの登録とともに、仮想アドレスを利用した通信を許可するか否か(仮想アドレスの割当てを許可するか否か)についても設定することができる。ユーザは、対象端末31,32,33の実際のアドレスを知られてたくない場合、仮想アドレスの割当てを許可する旨を中継サーバ3に登録する。
【0049】
以下、VPNグループを作成するときの流れについて説明する。ユーザは、初めに、クライアント端末13,22,34等を操作することによって、VPNグループの設定画面を表示させることができる。ここでは、クライアント端末34を用いて設定を行う場合について説明する。クライアント端末34に表示させた設定画面には、当該クライアント端末34が属する複数の中継グループが表示される。ユーザは、この複数の中継グループから、VPNグループを構築したい中継グループを選択する(S201)。
【0050】
中継グループが選択されると、クライアント端末34の画面には、選択した中継グループに属し、かつルーティングポイントとして機能可能な中継サーバ及びクライアント端末の識別情報の一覧が表示される(S202)。そして、ユーザは、構築するVPNグループにおいてルーティングポイントとして機能させる中継サーバ及びクライアント端末を選択する(S203)。今回の説明では、中継サーバ1と、中継サーバ3と、がユーザに選択されたものとする。
【0051】
そして、選択された中継サーバの識別情報に基づいて、ルーティングポイントの識別情報及び前記ルーティングセッション情報が作成される(S204)。そして、これらの情報にVPNグループの識別情報等を付加することにより、図6で示したVPNグループ情報が作成される。クライアント端末34は、このVPNグループ情報を、同じVPNグループに所属する中継サーバ1,3へ送信する(S205)。そして、中継サーバ1,3は、受信したVPNグループ情報をVPNグループ情報記憶部54に記憶する。以上により、VPNグループの構築処理が完了する。
【0052】
次に、構築したVPNグループでVPNを利用した通信を開始するまでの流れについて、図12及び図13を参照して説明する。図12及び図13は、VPNを利用した通信を開始するまでに行う処理を示すフローチャートである。
【0053】
ユーザは、クライアント端末13等又は操作PC11等を操作することによって、構築したVPNグループを画面に表示させることができる。そして、表示されたVPNグループから適当なVPNグループを選択することにより(S301)、VPNを構築するための処理を行わせることができる。今回の説明では、上記で作成したVPNグループ(中継サーバ1,3で構成されるVPNグループ)の開始処理を中継サーバ3が行う例を説明する。
【0054】
中継サーバ3は、初めに、自身に対応付けられたアドレスフィルタ情報を読み出す(S302)。ここで読み出される情報は、S101で登録された内容(図7(c)に示す内容)である。次に、中継サーバ3は、選択されたVPNグループに属するルーティングポイントの読出しを行う(S303)。これにより、図6に示すVPNグループ情報の内容に基づいて、中継サーバ1が読み出される。
【0055】
中継サーバ3は、中継サーバ情報に基づいて、初めに、中継サーバ1がログイン中か否か(「stat」がactiveか空欄か)を判断する(S304)。図4に示す中継サーバ情報によれば中継サーバ1はログイン中であるため、中継サーバ3は、中継サーバ1へVPNグループの識別情報とともに、VPNグループの開始コマンドを送信する(S305)。
【0056】
中継サーバ3は、この開始コマンドに対する中継サーバ1からの応答を受けると(S306)、中継サーバ1を、VPNを構築する準備が完了したルーティングポイントとして登録する(S307)。
【0057】
次に、中継サーバ3は、同じVPNグループに所属する他の機器が有るか否かの判断を行う(S308)。現在作成中のVPNグループは、中継サーバ1と中継サーバ3のみで構成されるため、他の機器は存在しない。なお、仮に他の機器が存在していた場合は、中継サーバ3は、今度は当該機器を対象としてS304〜S307の処理を行う。
【0058】
次に、中継サーバ3は、VPNグループ情報記憶部54の記憶内容からルーティングセッション情報を抽出する(図13のS309)。そして、中継サーバ3は、抽出したルーティングセッション情報を参照して、自身が始点となるルーティングセッションが記述されているか否かを判断する(S310)。図6のルーティングセッション情報においては、中継サーバ1と中継サーバ3との間で確立されるべきルーティングセッションにおいて、自身(中継サーバ3)が始点となることが記述されている。そのため、中継サーバ3は、中継サーバ1に対して所定の通信制御を行ってルーティングセッションを確立する(S311)。
【0059】
次に、中継サーバ3は、S102において仮想アドレスの割当てを許可する旨が登録されたか否かの判断を行う(S312)。仮想アドレスの割当てを許可する旨が登録されていた場合、中継サーバ3は、自機(中継サーバ3)の第1ルーティング対象アドレスに仮想アドレスを割り当てる(S313)。なお、本実施形態では、乱数等を用いて無作為に決定された仮想アドレスを第1ルーティング対象アドレスに割り当てていく(図8(b)を参照)。これにより、仮想アドレスから第1ルーティング対象アドレスが推測されることを防止できるので、セキュリティを向上させることができる。
【0060】
次に、中継サーバ3は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てた仮想アドレスと、の対応関係(割当関係)を仮想アドレス割当関係記憶部57に記憶する(S314)。
【0061】
その後、中継サーバ3は、中継サーバ1とアドレスフィルタ情報の交換を行う(S315)。具体的には、中継サーバ3は、対象端末31,32,33の名称と、第1ルーティング対象アドレスに割り当てた仮想アドレスと、を中継サーバ1へ送信する。ただし、中継サーバ3は、第1ルーティング対象アドレスそのもの(実際のアドレス)は送信しない。一方、中継サーバ1は、仮想アドレスを利用した通信を行わないので、操作PC11,12の名称と、第2ルーティング対象アドレス(実際のアドレス)を中継サーバ3へ送信する。
【0062】
これにより、中継サーバ3には、図8(b)に示す内容が記憶される。一方、中継サーバ1には、図8(a)に示す内容が記憶される。図8(a)に示すように、中継サーバ1には、対象端末31,32,33の実際のアドレスではなく、仮想アドレスが登録される。なお、中継サーバ3は、対象端末31,32,33に関して送信するアドレスが仮想アドレスであるか否かを中継サーバ1に通知することはない。従って、LAN10に所属するユーザは、対象端末31,32,33に関して、中継サーバ1に実際のアドレスが登録されているのか仮想アドレスが登録されているのかを判断することができない。従って、セキュリティを効果的に向上させることができる。
【0063】
次に、中継サーバ3は、再びS310の処理を行う。現在作成中のVPNグループは、中継サーバ1と中継サーバ3のみで構成されるため、他のルーティングセッションはVPNグループ情報には記述されていない。従って、中継サーバ3は、パケットのルーティング制御を開始する(S316)。なお、仮に他のルーティングセッションがある場合は、中継サーバ3は、再びS311〜S315の処理を行う。
【0064】
このように、本実施形態では、VPNを構築する際に、それぞれのルーティング機器が他のルーティング機器とアドレスフィルタ情報を交換(取得)するため、最新のアドレスフィルタ情報を用いてVPNを構築することができる。従って、VPN開始前の段階で一部のルーティング機器においてアドレスフィルタ情報が変更された場合でも、その変更を全てのルーティング機器に反映させた状態でVPNを構築して通信を開始できるので、パケットのルーティングにおける矛盾の発生を防止でき、信頼性を向上させることができる。
【0065】
また、図13のフローチャートには記載していないが、S310において自身が接続の始点となるルーティングセッションが無い場合(自身がルーティングの終点となる場合)であっても、始点となるルーティング機器からの通信制御を受けてルーティングセッションの確立処理及びアドレスフィルタ情報の交換が行われる。それと同時に、仮想アドレスを用いた通信を行う場合は、仮想アドレスの割当て等も行われる。
【0066】
なお、それぞれのルーティング機器は、自身が始点である旨がルーティングセッション情報に記述されていない限りはルーティングセッション確立のための最初の通信制御を行わないので、通信制御の衝突を防止し、機器間のルーティングセッションを簡素な制御で確立することができる。
【0067】
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について説明する。
【0068】
初めに、中継サーバ3がLAN30からパケットを受信したときに行う制御について図14を参照して説明する。図14は、この制御の流れを示すフローチャートである。
【0069】
なお、LAN30内のルーティング対象装置は、他のルーティング対象装置にパケットを送信する際は、中継サーバ3に登録された情報を参照して他のルーティング対象アドレスを取得し、取得したルーティング対象アドレスを宛先アドレスとしてパケットを送信する。
【0070】
中継サーバ3は、LAN30からパケットを受信するまで待機している(S401)。そして、LAN30からパケットを受信した場合、初めに、当該パケットの宛先が自機(中継サーバ3)であるか否かの判断を行う(S402)。
【0071】
中継サーバ3は、パケットの宛先が自機であった場合、当該パケットの受信を行う(S403)。一方、パケットの宛先が自機以外であった場合、中継サーバ3は、受信したパケットの宛先アドレスと、アドレスフィルタ情報(図8(b)を参照)と、を比較して、宛先アドレスがアドレスフィルタ情報に登録されているか否かの判断を行う(S404)。中継サーバ3は、宛先アドレスがアドレスフィルタ情報に登録されていない場合、パケットを破棄する(S405)。一方、中継サーバ3は、宛先アドレスがアドレスフィルタ情報に登録されていた場合、当該アドレスフィルタ情報に対応するルーティングセッションを特定する(S406)。
【0072】
次に、中継サーバ3は、自機が仮想アドレスを利用中か否か(S102で仮想アドレスの割当てを許可したか否か)の判断を行う(S407)。仮想アドレスを利用中である場合、中継サーバ3は、仮想アドレス割当関係記憶部57を参照して、送信元アドレスを仮想アドレスに変換する(S408)。そして、S406で特定したルーティングセッションへパケットを転送する(S409)。なお、仮想アドレスを利用中でない場合、中継サーバ3は、送信元アドレスの変換を行わずに、S406で特定したルーティングセッションへパケットを送信(転送)する(S409)。
【0073】
次に、中継サーバ3がルーティングセッションからパケットを受信したときに行う制御について図15を参照して説明する。図15は、この制御の流れを示すフローチャートである。
【0074】
中継サーバ3は、ルーティングセッションからパケットを受信するまで待機している(S501)。そして、中継サーバ3は、ルーティングセッションからパケットを受信した場合、当該パケットの宛先アドレスと、アドレスフィルタ情報(図8(b)を参照)と、を比較して、パケットの宛先アドレスが自機のアドレスフィルタ情報に対応付けて登録されているか否かの判断を行う(S502)。
【0075】
パケットの宛先アドレスが自機のアドレスフィルタ情報に対応付けて登録されている場合、自機が仮想アドレスを利用中か否か(S102で仮想アドレスの割当てを許可したか否か)の判断を行う(S503)。仮想アドレスを利用中である場合、中継サーバ3は、宛先アドレスを実際のアドレスに変換して(S504)、宛先アドレスが示す機器(対象端末31,32,33)へ、パケットを転送する(S505)。なお、仮想アドレスを利用中でない場合、中継サーバ3は、宛先アドレスを変換することなく宛先が示す機器へパケットを送信(転送)する(S505)。
【0076】
また、中継サーバ3は、宛先アドレスが自機のアドレスフィルタ情報に対応付けて登録されていない場合、当該宛先アドレスが他のルーティング機器のアドレスフィルタ情報に対応付けて登録されているか否かの判断を行う(S506)。当該宛先アドレスが他のルーティング機器のアドレスフィルタ情報に対応付けて登録されている場合、中継サーバ3は、該当するルーティングセッションを特定し(S507)、このルーティングセッションへパケットを送信(転送)する(S508)。
【0077】
一方、当該宛先アドレスが他のルーティング機器のアドレスフィルタ情報にも登録されていない場合、中継サーバ3は、当該パケットを破棄する(S509)。
【0078】
以上の制御を行うことにより、中継サーバ3は、仮想アドレスを利用して通信を行うことができる。
【0079】
次に、上記の制御を行う中継サーバ1,3を介して、操作PC11と対象端末31とがパケットをやり取りするときの流れについて図16を参照して簡単に説明する。
【0080】
図16(a)は、対象端末31から操作PC11へパケットが送信される場合を示している。この場合、中継サーバ3は、LAN30からパケットを受信するため、図14に示す制御を行う。
【0081】
対象端末31は、操作PC11の実際のアドレスを宛先アドレスとしてパケットを送信する。このパケットを受信した中継サーバ3は、アドレスフィルタ情報(図8(b)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として中継サーバ1が記述されていることを認識してルーティングセッションを特定する(S406)。次に、中継サーバ3は、自機が仮想アドレスを利用中であることを認識して、送信元アドレスを仮想アドレスに変換する(S408)。そして、中継サーバ3は、ルーティングセッションを介して中継サーバ1へパケットを送信する(S409)。
【0082】
このパケットを受信した中継サーバ1は、アドレスフィルタ情報(図8(a)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として自機(中継サーバ1)が記述されていることを認識する。そして、中継サーバ1は、宛先の操作PC11へパケットを送信する。
【0083】
図16(b)は、操作PC11から対象端末31へパケットが送信される場合を示している。この場合、中継サーバ3は、ルーティングセッションからパケットを受信するため、図15に示す制御を行う。
【0084】
操作PC11は、対象端末31からのパケットを受信すること、又は、中継サーバ1に登録された情報を参照すること等によって、対象端末31の仮想アドレスを取得する。操作PC11は、この仮想アドレスを宛先としてパケットを送信する。このパケットを受信した中継サーバ1は、アドレスフィルタ情報(図8(a)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として中継サーバ3が記述されていることを認識する。そして、中継サーバ1は、ルーティングセッションを介して、中継サーバ3へパケットを送信する。
【0085】
このパケットを受信した中継サーバ3は、アドレスフィルタ情報(図8(b)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として自機(中継サーバ3)が記述されていることを認識する。次に、中継サーバ3は、自機が仮想アドレスを利用中であることを認識して、宛先アドレスを実際のアドレスに変換する(S504)。そして、中継サーバ3は、宛先の対象端末31へパケットを送信する(S505)。
【0086】
以上により、第1ルーティング対象アドレスを第2LAN側の機器(中継サーバ1、操作PC11,12等)に知らせることなく、ルーティング対象装置間で通信を行うことができる。
【0087】
以上に示したように、本実施形態の中継サーバ3は、アドレスフィルタ情報記憶部55と、仮想アドレス割当関係記憶部57と、制御部60と、を備える。アドレスフィルタ情報記憶部55は、当該中継サーバ3と同じLAN30に属する対象端末31,32,33を示すアドレスと、中継サーバ1と同じLAN10に属する操作PC11,12を示すアドレスと、を記憶する。仮想アドレス割当関係記憶部57は、LAN30に属する対象端末31,32,33の実際のアドレスと、当該アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。制御部60は、LAN30に属する対象端末31,32,33の実際のアドレスに仮想アドレスを割り当て、その割当関係を仮想アドレス割当関係記憶部57に記憶する。制御部60は、LAN30に属する対象端末31,32,33の実際のアドレスに割り当てた仮想アドレスを中継サーバ1へ送信するとともに、中継サーバ1から、LAN10に属する操作PC11,12を示すアドレスを受信し、中継サーバ1とルーティングセッションを確立する。制御部60は、ルーティングセッションから仮想アドレスを宛先とするパケットを受信した際に、パケットの宛先アドレスを、LAN30に属する対象端末31,32,33のアドレスに変換して宛先の対象端末31,32,33へパケットを転送する。制御部60は、LAN30に属する対象端末31,32,33からパケットを受信した際に、パケットの送信元アドレスを仮想アドレスに変換してルーティングセッションへパケットを転送する。
【0088】
これにより、LAN30に属するユーザは、例えば対象端末31,32,33のうち何れかを使用して、当該端末の実際のアドレスを相手に知らせることなしに操作PC11,12と通信を行うことができる。従って、セキュリティを確保しつつ中継通信を行うことができる。また、中継サーバ1及び操作PC11,12から見たときに、LAN30側の対象端末31,32,33を示すものとして中継サーバ1に通知されたアドレス(例えば150.100.0.82)が実際のアドレスであるか仮想アドレスであるかについても隠蔽されるので、この点においてもセキュリティを向上することができる。
【0089】
また、本実施形態の中継サーバ3においては、制御部60は、無作為に決定された仮想アドレスを、LAN30に所属する対象端末31,32,33の実際のアドレスに割り当てる。
【0090】
これにより、LAN10側のユーザが仮想アドレスから対象端末31,32,33の実際のアドレスを推測することが困難になるので、セキュリティを一層向上させることができる。
【0091】
次に、上記実施形態の変形例について説明する。本変形例では、上記実施形態の構成を採用しつつ、設定可能な事項を充実させた構成である。具体的には、本変形例では、図17に示すように、上記実施形態で設定した仮想アドレスの割当てを許可するか否かを中継サーバ毎に設定することができる。
【0092】
この設定は、例えば中継サーバの設置先に基づいて決定することができる。例えば、図1の構成において、中継サーバ3の設置先の企業が中継サーバ1の設置先の企業と異なる一方で、中継サーバ3の設置先の企業と中継サーバ2の設置先の企業とが同じであるとする。この場合、中継サーバ1へ対象端末31,32,33の実際のアドレスを送信することは、セキュリティ上の観点から問題が生じる可能性がある。一方、中継サーバ2へは、対象端末31,32,33の実際のアドレスを送信してもセキュリティ上問題ないことが多い。この場合、中継サーバ3の設定として、図17に示すように、中継サーバ1に送信するアドレスとして仮想アドレスを指定し、中継サーバ2に送信するアドレスとして実際のアドレスを指定することで、上記の事情に対応したVPNを構築することができる。
【0093】
以上に本発明の好適な実施の形態及び変形例を説明したが、上記の構成は例えば以下のように変更することができる。
【0094】
仮想アドレスを利用した通信を許可するか否かの設定は、上記実施形態のようにVPNの初期設定時に行っても良いし、VPNの起動時に行っても良い。
【0095】
仮想アドレスの割当てを行うタイミングは任意であり、上記で説明した例に限られない。例えば、他の中継サーバからルーティング対象アドレスを受信した後に割当てを行うことで、他のルーティング対象アドレスとの重複を防ぐことができる。
【0096】
上記では、ルーティングセッションの確立と略同時にアドレスフィルタ情報の交換を行う構成である。これに対し、VPNグループの開始コマンドの送信(S305)とともにアドレスフィルタ情報を送信し、応答(S306)とともにアドレスフィルタ情報を受信する構成でも良い。
【0097】
上記では、操作PC11等の個別の機器がルーティング対象装置となっていたが、例えば、LAN10全体(200.1.40.0/24)を中継サーバ1のルーティング対象装置として設定しても良い。この場合、当該ルーティング対象装置には、(150.100.10.0/24)のように、範囲指定された仮想アドレスが割り当てられる。
【0098】
仮想アドレスの割当てを行うタイミングは任意であり、例えば、開始コマンドの送信とともにアドレスフィルタ情報を送信する構成とすることができる。この場合、より早いタイミングで仮想アドレスの割当てを行うことができる。
【0099】
上記では、中継サーバのみがルーティングポイントとして機能する構成であるが、クライアント端末がルーティングポイントとして機能する構成であっても良い。また、VPNグループ内のルーティングポイントの数は2つに限られず、3つ以上であっても良い。また、1つのルーティング機器が複数のVPNグループに所属していても良い。
【0100】
上記の中継グループ情報、中継サーバ情報、クライアント端末情報、VPNグループ情報、アドレスフィルタ情報等を格納する形式はXML形式に限定されず、適宜の形式で各情報を格納することができる。
【0101】
上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。
【符号の説明】
【0102】
1 中継サーバ(第2中継サーバ)
3 中継サーバ(第1中継サーバ)
11,12 操作PC(第2ルーティング対象装置)
31,32,33 対象端末(第1ルーティング対象装置)
10 LAN(第2LAN)
30 LAN(第1LAN)
54 VPNグループ情報記憶部
55 アドレスフィルタ情報記憶部
56 仮想アドレス登録情報記憶部
57 仮想アドレス割当関係記憶部
100 中継通信システム
【技術分野】
【0001】
本発明は、主として、異なるLAN(Local Area Network)に接続されている機器間の通信を可能とする中継サーバに関する。
【背景技術】
【0002】
従来から、物理的に離れた場所に設置されたLAN同士で通信を行う仮想プライベートネットワーク(Virtual Private Network,VPN)と呼ばれる通信技術が知られている。特許文献1に示す例では、物理的に離れた位置に設置された複数のLANのそれぞれに中継サーバ及び通信端末等が接続されている。通信端末は、このVPNを利用して、他のLANに接続された通信端末へパケットを送信することができる。具体的には、通信端末が送信するパケットは、初めに同一LAN内の中継サーバへ送られる。この中継サーバは、インターネットを介して、宛先の通信端末と同一のLAN内の中継サーバへパケットを送信(転送)する。そして、このパケットを受信した中継サーバは、宛先の通信端末へパケットを送信(転送)する。
【0003】
このVPNを利用することにより、遠隔地にある他のLANを、あたかも直接接続されているネットワークであるかのように使用することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−268312号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、この種のシステムにおいては、LANに接続された端末のIPアドレス(プライベートIPアドレス)を用いて端末同士の通信を行っている。従って、VPNを利用した通信を行う場合、自分のLANに設定されたIPアドレスを相手側のLANへ送信する必要がある。
【0006】
この点、例えば同一企業同士でVPNを構築する場合、相手にIPアドレスを知られても問題にはなりにくい。しかし、異なる企業同士でVPNを構築する場合、セキュリティ上の観点から、相手にIPアドレスを知られることは好ましくない。従って、LANで機器に付与されているIPアドレスを他のLAN側に知られることなくVPNを運用できる構成が望まれていた。
【0007】
本発明は以上の事情に鑑みてされたものであり、その主要な目的は、相手に実際のアドレスを知らせることなく中継通信が可能な中継通信システムを構築できる中継サーバを提供することにある。
【課題を解決するための手段及び効果】
【0008】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【0009】
本発明の第1の観点によれば、以下の構成の中継サーバが提供される。即ち、この中継サーバは、アドレスフィルタ情報記憶部と、仮想アドレス割当関係記憶部と、制御部と、を備える。前記アドレスフィルタ情報記憶部は、第1LAN内に位置し(中継サーバが)パケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶する。前記仮想アドレス割当関係記憶部は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。前記制御部は、前記第1ルーティング対象アドレスに前記仮想アドレスを割り当て、その割当関係を前記仮想アドレス割当関係記憶部に記憶する。前記制御部は、前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する。前記制御部は、前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する。前記制御部は、前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する。
【0010】
これにより、制御部が上記のようにアドレスを変換することで、第1ルーティング対象装置は、自機のアドレスを相手に知らせることなく、第2ルーティング対象装置と通信を行うことができる。従って、セキュリティを確保しつつ中継通信を行うことができる。また、第2中継サーバ及び第2ルーティング対象装置から見たときに、第1ルーティング対象装置を示すアドレスが実際のアドレスであるか仮想アドレスであるかについても隠蔽されるので、この点においてもセキュリティを向上することができる。
【0011】
前記の中継サーバにおいては、前記制御部は、無作為に決定された前記仮想アドレスを前記第1ルーティング対象アドレスに割り当てることが好ましい。
【0012】
これにより、仮想アドレスから第1ルーティング対象アドレスが推測されることを防止できるので、セキュリティを一層向上させることができる。
【0013】
前記の中継サーバにおいては、前記仮想アドレスを用いて通信を行うか前記第1ルーティング対象アドレスを用いて通信を行うかを中継サーバ毎に設定可能であることが好ましい。
【0014】
これにより、ある中継サーバを利用するユーザは、他の中継サーバのユーザとの関係等を考慮して、中継サーバ毎に用いるアドレスを決定することができる。従って、様々な状況に柔軟に対応可能な中継通信システムが実現できる。
【0015】
本発明の第2の観点によれば、第1中継サーバ及び第2中継サーバを含んで構成される中継通信システムにおいて、以下の構成が提供される。即ち、第1LAN内に位置する中継サーバは、アドレスフィルタ情報記憶部と、仮想アドレス割当関係記憶部と、制御部と、を備える。前記アドレスフィルタ情報記憶部は、当該第1中継サーバがパケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する前記第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶する。前記仮想アドレス割当関係記憶部は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。前記制御部は、前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する。前記制御部は、前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する。前記制御部は、前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する。
【0016】
これにより、制御部が上記のようにアドレスを変換することで、第1ルーティング対象装置は、自機のアドレスを相手に知らせることなく、第2ルーティング対象装置と通信を行うことができる。従って、セキュリティを確保しつつ中継通信を行うことができる。また、第2中継サーバ及び第2ルーティング対象装置から見たときに、第1ルーティング対象装置を示すアドレスが実際のアドレスであるか仮想アドレスであるかについても隠蔽されるので、この点においてもセキュリティを向上することができる。
【図面の簡単な説明】
【0017】
【図1】本発明の一実施形態に係る中継通信システムの全体構成を示す説明図。
【図2】中継サーバの機能ブロック図。
【図3】中継グループ情報の内容を示す図。
【図4】中継サーバ情報の内容を示す図。
【図5】クライアント端末情報の内容を示す図。
【図6】VPNグループ情報の内容を示す図。
【図7】それぞれの中継サーバに予め登録されるアドレスフィルタ情報の内容を示す図。
【図8】VPN構築後に中継サーバ1,3が記憶する内容を示す図。
【図9】仮想アドレス登録情報の内容を示す図。
【図10】予め中継サーバに行う設定を示すフローチャート。
【図11】VPNグループを作成する処理を示すフローチャート。
【図12】VPNを構築する処理を示すフローチャート。
【図13】VPNを構築する処理を示すフローチャート。
【図14】LANからパケットを受信したときのルーティング制御を示すフローチャート。
【図15】ルーティングセッションからパケットを受信したときのルーティング制御を示すフローチャート。
【図16】仮想アドレスを用いたルーティング制御を示す説明図。
【図17】仮想アドレス管理情報(設定情報)の内容を示す図。
【発明を実施するための形態】
【0018】
次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本実施形態に係る中継通信システム100の全体構成を示す説明図である。
【0019】
図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数のLAN10,20,30で構成されている。それぞれのLAN10,20,30は、限定された場所で構築される比較的小規模なネットワークである。また、LAN10,20,30は、それぞれが物理的に離れた場所に配置されている。なお、本実施形態ではWAN80としてインターネットが使用されている。
【0020】
以下、それぞれのLANを具体的に説明する。図1に示すように、LAN(第2LAN)10には、中継サーバ(第2中継サーバ)1と、第2ルーティング対象装置としての操作PC11,12と、クライアント端末13と、が接続されている。LAN20には、中継サーバ2と、操作PC21と、クライアント端末22と、が接続されている。LAN(第1LAN)30には、中継サーバ(第1中継サーバ)3と、第1ルーティング対象装置としての対象端末31,32,33と、クライアント端末34と、が接続されている。
【0021】
それぞれの中継サーバ1,2,3は、LAN10,20,30だけでなくWAN80にも接続されているため、同一のLANに接続された機器と通信可能であるだけでなく、他のLANに配置された中継サーバとも通信可能となっている。操作PC11,12,21は、例えばオペレータが操作するためのパーソナルコンピュータである。対象端末31,32,33は、パーソナルコンピュータ、又は、ファイルサーバ等であり、例えばオペレータは、操作PC11等を操作して、対象端末31等に所定のデータを要求すること、及び、対象端末31の記憶内容を更新することが想定されている。クライアント端末13,22,34は、例えばパーソナルコンピュータで構成されており、それぞれ自身が所属する中継サーバ1,2,3を介して、互いに通信可能である。
【0022】
次に、図2を参照して、中継サーバ1,2,3の詳細な構成について説明する。図2は、中継サーバ3の機能ブロック図である。なお、中継サーバ3は中継サーバ1,2と略同じ構成であるので、以下では、主として中継サーバ3について説明する。
【0023】
図2に示すように、中継サーバ3は、記憶部50と、制御部60と、インタフェース部70と、を備えている。
【0024】
インタフェース部70は、LAN10内の端末に対して通信を実行する。また、インタフェース部70は、WAN80に対して通信を実行する。インタフェース部70は、LAN30又はWAN80から受信したパケットに適宜の処理を行って制御部60へ出力する。
【0025】
制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信を制御することができる。具体的には、制御部60は、受信したパケットについて、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて宛先を決定し、決定した宛先へ当該パケットを送信する。また、制御部60は、他の端末から受信した情報に基づいて、記憶部50の記憶内容を更新することができる。
【0026】
記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種データを保存可能である。記憶部50は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、クライアント端末情報記憶部53と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、仮想アドレス登録情報記憶部56と、仮想アドレス割当関係記憶部57と、を備えている。なお、中継サーバ1,2は、後述の仮想アドレスを用いた通信を行わないため、仮想アドレス登録情報記憶部56及び仮想アドレス割当関係記憶部57を備えていない。以下、図3から図9までを参照して、記憶部50の記憶内容について説明する。図3から図9までは、主として、中継サーバ3の記憶部50の記憶内容を示す図である。
【0027】
中継グループ情報記憶部51は、中継グループと、当該中継グループを構成する中継サーバと、を示した中継グループ情報を記憶している。
【0028】
図3に示すように、中継グループ情報においては、groupタグと、このgroupタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関するグループ情報511が記述されている。このグループ情報511としては、中継グループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、中継グループの名称(「name」)と、が記述されている。siteタグには、中継グループを構成する中継サーバに関するグループ構成情報512が記述されている。このグループ構成情報512には、当該中継サーバの識別情報(「id」)が記述されている。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、特定の中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
【0029】
なお、この中継グループ情報は、当該中継グループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいて中継グループを変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継グループ情報が更新される。このようにして、中継グループ情報が動的に共有される。
【0030】
中継サーバ情報記憶部52は、中継通信を行う中継サーバ及び当該中継サーバに所属するクライアント端末の概要を示す中継サーバ情報を記憶している。
【0031】
図4に示す中継サーバ情報においては、中継サーバ毎に記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには中継サーバ1に関するサーバ情報521が記述されている。このサーバ情報521としては、中継サーバの識別情報(「id」)と、中継サーバの名称(「name」)と、起動情報(「stat」)と、が記述されている。なお、「stat」の内容が「active」の場合は中継サーバが中継通信システム100にログインしていることを示し、statが空欄であるときはログオフ中であることを示す。siteタグの子要素であるnodeタグには、中継サーバに所属するクライアント端末を示す所属情報522が記述されている。所属情報522としては、所属する中継グループの名称(「group」)と、クライアント端末の識別情報(「id」)と、クライアント端末の名称(「name」)と、所属先の中継サーバの識別情報(「site」)と、が記述されている。クライアント端末が中継通信システム100にログインしていないときは、「site」は空欄となる。
【0032】
なお、中継グループによる通信は、上記の中継グループ情報及び中継サーバ情報に基づいて、以下のようにして行われる。例えばクライアント端末13からクライアント端末22にパケットを送信する場合、初めに、クライアント端末13は、自身が接続している中継サーバである中継サーバ1にパケットを送信する。なお、パケットのやり取りが可能な中継サーバは上記の中継グループ情報に基づいて把握することができ、中継サーバに所属しているクライアント端末の識別情報及び接続の可否は上記の中継サーバ情報に基づいて把握することができる。中継サーバ1は、これらの情報に基づいて、クライアント端末22が接続している中継サーバである中継サーバ2へパケットを転送する。そして、このパケットを受信した中継サーバ2がクライアント端末22へパケットを転送する。このようにして、クライアント端末13,22同士で中継通信を行うことができる。
【0033】
この中継サーバ情報に関しても中継グループ情報と同様に、当該中継グループを構成する中継サーバ1,2,3の間で情報が共有されている。そして、ある中継サーバにおいて中継サーバ情報を変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継サーバ情報が更新される。このようにして、中継サーバ情報が動的に共有される。
【0034】
クライアント端末情報記憶部53は、クライアント端末に関する詳細な情報であるクライアント端末情報を記憶している。なお、中継サーバ1,2,3は、自身に所属するクライアント端末に関するクライアント端末情報のみを記憶している。中継サーバ3には、クライアント端末34が所属しているため、中継サーバ3が備えるクライアント端末情報記憶部53には、クライアント端末34についてのクライアント端末情報のみが記憶されている。
【0035】
中継サーバ3のクライアント端末情報記憶部53が記憶するクライアント端末情報は、図5(c)に示されている。同様に、中継サーバ1が記憶するクライアント端末情報が図5(a)に、中継サーバ2が記憶するクライアント端末情報が図5(b)に、それぞれ示されている。
【0036】
図5に示すクライアント端末情報においては、nodeタグが記述されている。このnodeタグには、クライアント端末のプライベートIPアドレス(「addr」)と、所属する中継グループの名称(「group」)と、識別情報(「id」)と、名称(「name」)と、中継サーバにログインするためのパスワード(「pass」)と、ポート情報(「port」)と、が記述されている。
【0037】
VPNグループ情報記憶部54は、中継グループを構成する中継サーバ及びクライアント端末からルーティングポイントとして選択された機器(以下、ルーティング機器と称する)で構成されたVPNグループに関する情報であるVPNグループ情報を記憶している。同一のVPNグループに所属するルーティング機器同士でルーティングセッションを確立させることにより、VPNを利用した通信を開始することができる。
【0038】
図6に示すVPNグループ情報においては、vnetタグが記述されている。このvnetタグには、VPNグループ基本情報541と、ルーティングポイント情報542と、ルーティングセッション情報543と、が記述されている。VPNグループ基本情報541には、VPNグループが所属する中継グループの名称(「group」)と、VPNグループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、VPNグループの名称(「name」)と、が記述されている。ルーティングポイント情報542には、VPNグループ間で通信を行うときにルーティングを行うルーティング機器の識別情報が記述されている。図6の例においては、ルーティング機器として、中継サーバ1と、中継サーバ3と、が記述されている。ルーティングセッション情報543には、VPNグループにおいて互いに接続されるルーティング機器が記述されている。ルーティングセッション情報543において、ルーティング機器は、VPNグループでVPNを構築して通信を開始するためのルーティングセッション確立処理において、通信制御を最初に行う側(「sp(start point)」)と、その通信制御を受ける側「ep(end point)」と、に分けて定められている。なお、以下の説明では、ルーティングセッション確立のための通信制御を最初に行う側のルーティング機器を「始点」と、その通信制御を受ける側のルーティング機器を「終点」と、それぞれ称することがある。
【0039】
図6に示すVPNグループ情報からは、VPNグループ(VPN−GROUP1)が、中継サーバ1と中継サーバ3とで構成されることが分かる。また、このVPNグループの開始時には、中継サーバ3から中継サーバ1へルーティングセッションを確立するための通信制御が行われることが分かる。
【0040】
このVPNグループ情報も中継サーバ情報及び中継グループ情報と同様に、同じVPNグループに所属する中継サーバ1,3の間で共有されている。そして、ある中継サーバにおいてVPNグループ情報を変更する処理が行われた場合は、同じVPNグループに所属する他の中継サーバに対してその旨が送信されてVPNグループ情報が更新される。このようにして、VPNグループ情報が動的に共有される。なお、このVPNグループを作成する処理については後述する。
【0041】
アドレスフィルタ情報記憶部55は、VPNを利用したルーティング制御を行う際に用いられる情報であるアドレスフィルタ情報を記憶する。アドレスフィルタ情報記憶部55は、VPNの構築前においては、中継サーバ3自身がパケットを直接的に送信可能な装置(ルーティング対象装置)を示す情報(中継サーバ3のアドレスフィルタ情報)を記憶する。なお、アドレスフィルタ情報には、ルーティング対象装置のアドレス(ルーティング対象アドレス)と、ルーティング対象装置の名称と、が含まれる。
【0042】
図7(c)には、中継サーバ3自身に予め登録されたアドレスフィルタ情報の例が示されている。この例では、中継サーバ3がパケットを直接的に送信可能な機器が対象端末31,32,33であることが記述されている。なお、図7(a)には、中継サーバ1に予め登録されたアドレスフィルタ情報が示され、図7(b)には、中継サーバ2に予め登録されたアドレスフィルタ情報が示されている。以下では、中継サーバ3のアドレスフィルタ情報に含まれるルーティング対象アドレス(対象端末31,32,33のアドレス)を第1ルーティング対象アドレスと称し、中継サーバ1のアドレスフィルタ情報に含まれるルーティング対象アドレス(操作PC11,12のアドレス)を第2ルーティング対象アドレスと称することがある。
【0043】
中継サーバ3の仮想アドレス登録情報記憶部56には、図9に示すように、少なくともLAN30内で重複しないアドレス(LAN30内の機器に割り当てられておらず、かつその予約もされていないアドレス)が仮想アドレスとして予め登録されている。この仮想アドレスは、所定のタイミング(例えば他の中継サーバと通信を開始するタイミング)で、第1ルーティング対象アドレスに割り当てられる。仮想アドレス割当関係記憶部57は、第1ルーティング対象アドレスと仮想アドレスとの対応関係(割当関係)を記憶する。
【0044】
以下、仮想アドレスを利用しない通信と、仮想アドレスを利用する通信と、の違いについて簡単に説明する。仮想アドレスを利用しない場合は、中継サーバ同士でルーティングセッションを確立する際に、ルーティング対象アドレス(実際のアドレス)が交換される。これにより、中継サーバは、通信相手のルーティング対象アドレスを利用して通信を行うことができる。しかし、ルーティング対象アドレスが知られてしまうことは、セキュリティの観点から好ましくないことがある。
【0045】
これに対し、仮想アドレスを利用する通信では、アドレスフィルタ情報を送信する際に、ルーティング対象アドレスに代えて仮想アドレスを送信する。そして、中継通信システム100では、この仮想アドレスを用いてルーティング対象装置同士で通信を行うことができる(詳細な処理は後述)。従って、本実施形態では、セキュリティを確保しつつ中継通信を行うことができる。
【0046】
次に、VPNを利用した通信を行うための準備について説明する。初めに、図10を参照して中継サーバに予め行う設定について説明し、次に、図11を参照してVPNグループを作成するときの流れについて説明する。図10は、予め中継サーバに行う設定を示すフローチャートである。図11は、VPNグループを作成する処理を示すフローチャートである。
【0047】
中継サーバ3に予め行う設定としては、当該中継サーバ3のアドレスフィルタ情報の登録(S101)がある。この登録は、中継通信システム100を利用するユーザが、ルーティング対象装置として指定する機器等のアドレス(第1ルーティング対象アドレス)と、名称と、を所定の方法で入力することにより行う。ここでは、ユーザは、対象端末31,32,33のアドレス及び名称を入力したものとする。ここで登録されたアドレスフィルタ情報は、アドレスフィルタ情報記憶部55に記憶される。
【0048】
次に、仮想アドレスを用いた通信を行う場合は、ユーザは、少なくともLAN30内で重複しないアドレスを仮想アドレスとして登録する(S102)。ここで登録された仮想アドレスは、仮想アドレス登録情報記憶部56に記憶される。なお、ユーザは、仮想アドレスの登録とともに、仮想アドレスを利用した通信を許可するか否か(仮想アドレスの割当てを許可するか否か)についても設定することができる。ユーザは、対象端末31,32,33の実際のアドレスを知られてたくない場合、仮想アドレスの割当てを許可する旨を中継サーバ3に登録する。
【0049】
以下、VPNグループを作成するときの流れについて説明する。ユーザは、初めに、クライアント端末13,22,34等を操作することによって、VPNグループの設定画面を表示させることができる。ここでは、クライアント端末34を用いて設定を行う場合について説明する。クライアント端末34に表示させた設定画面には、当該クライアント端末34が属する複数の中継グループが表示される。ユーザは、この複数の中継グループから、VPNグループを構築したい中継グループを選択する(S201)。
【0050】
中継グループが選択されると、クライアント端末34の画面には、選択した中継グループに属し、かつルーティングポイントとして機能可能な中継サーバ及びクライアント端末の識別情報の一覧が表示される(S202)。そして、ユーザは、構築するVPNグループにおいてルーティングポイントとして機能させる中継サーバ及びクライアント端末を選択する(S203)。今回の説明では、中継サーバ1と、中継サーバ3と、がユーザに選択されたものとする。
【0051】
そして、選択された中継サーバの識別情報に基づいて、ルーティングポイントの識別情報及び前記ルーティングセッション情報が作成される(S204)。そして、これらの情報にVPNグループの識別情報等を付加することにより、図6で示したVPNグループ情報が作成される。クライアント端末34は、このVPNグループ情報を、同じVPNグループに所属する中継サーバ1,3へ送信する(S205)。そして、中継サーバ1,3は、受信したVPNグループ情報をVPNグループ情報記憶部54に記憶する。以上により、VPNグループの構築処理が完了する。
【0052】
次に、構築したVPNグループでVPNを利用した通信を開始するまでの流れについて、図12及び図13を参照して説明する。図12及び図13は、VPNを利用した通信を開始するまでに行う処理を示すフローチャートである。
【0053】
ユーザは、クライアント端末13等又は操作PC11等を操作することによって、構築したVPNグループを画面に表示させることができる。そして、表示されたVPNグループから適当なVPNグループを選択することにより(S301)、VPNを構築するための処理を行わせることができる。今回の説明では、上記で作成したVPNグループ(中継サーバ1,3で構成されるVPNグループ)の開始処理を中継サーバ3が行う例を説明する。
【0054】
中継サーバ3は、初めに、自身に対応付けられたアドレスフィルタ情報を読み出す(S302)。ここで読み出される情報は、S101で登録された内容(図7(c)に示す内容)である。次に、中継サーバ3は、選択されたVPNグループに属するルーティングポイントの読出しを行う(S303)。これにより、図6に示すVPNグループ情報の内容に基づいて、中継サーバ1が読み出される。
【0055】
中継サーバ3は、中継サーバ情報に基づいて、初めに、中継サーバ1がログイン中か否か(「stat」がactiveか空欄か)を判断する(S304)。図4に示す中継サーバ情報によれば中継サーバ1はログイン中であるため、中継サーバ3は、中継サーバ1へVPNグループの識別情報とともに、VPNグループの開始コマンドを送信する(S305)。
【0056】
中継サーバ3は、この開始コマンドに対する中継サーバ1からの応答を受けると(S306)、中継サーバ1を、VPNを構築する準備が完了したルーティングポイントとして登録する(S307)。
【0057】
次に、中継サーバ3は、同じVPNグループに所属する他の機器が有るか否かの判断を行う(S308)。現在作成中のVPNグループは、中継サーバ1と中継サーバ3のみで構成されるため、他の機器は存在しない。なお、仮に他の機器が存在していた場合は、中継サーバ3は、今度は当該機器を対象としてS304〜S307の処理を行う。
【0058】
次に、中継サーバ3は、VPNグループ情報記憶部54の記憶内容からルーティングセッション情報を抽出する(図13のS309)。そして、中継サーバ3は、抽出したルーティングセッション情報を参照して、自身が始点となるルーティングセッションが記述されているか否かを判断する(S310)。図6のルーティングセッション情報においては、中継サーバ1と中継サーバ3との間で確立されるべきルーティングセッションにおいて、自身(中継サーバ3)が始点となることが記述されている。そのため、中継サーバ3は、中継サーバ1に対して所定の通信制御を行ってルーティングセッションを確立する(S311)。
【0059】
次に、中継サーバ3は、S102において仮想アドレスの割当てを許可する旨が登録されたか否かの判断を行う(S312)。仮想アドレスの割当てを許可する旨が登録されていた場合、中継サーバ3は、自機(中継サーバ3)の第1ルーティング対象アドレスに仮想アドレスを割り当てる(S313)。なお、本実施形態では、乱数等を用いて無作為に決定された仮想アドレスを第1ルーティング対象アドレスに割り当てていく(図8(b)を参照)。これにより、仮想アドレスから第1ルーティング対象アドレスが推測されることを防止できるので、セキュリティを向上させることができる。
【0060】
次に、中継サーバ3は、第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てた仮想アドレスと、の対応関係(割当関係)を仮想アドレス割当関係記憶部57に記憶する(S314)。
【0061】
その後、中継サーバ3は、中継サーバ1とアドレスフィルタ情報の交換を行う(S315)。具体的には、中継サーバ3は、対象端末31,32,33の名称と、第1ルーティング対象アドレスに割り当てた仮想アドレスと、を中継サーバ1へ送信する。ただし、中継サーバ3は、第1ルーティング対象アドレスそのもの(実際のアドレス)は送信しない。一方、中継サーバ1は、仮想アドレスを利用した通信を行わないので、操作PC11,12の名称と、第2ルーティング対象アドレス(実際のアドレス)を中継サーバ3へ送信する。
【0062】
これにより、中継サーバ3には、図8(b)に示す内容が記憶される。一方、中継サーバ1には、図8(a)に示す内容が記憶される。図8(a)に示すように、中継サーバ1には、対象端末31,32,33の実際のアドレスではなく、仮想アドレスが登録される。なお、中継サーバ3は、対象端末31,32,33に関して送信するアドレスが仮想アドレスであるか否かを中継サーバ1に通知することはない。従って、LAN10に所属するユーザは、対象端末31,32,33に関して、中継サーバ1に実際のアドレスが登録されているのか仮想アドレスが登録されているのかを判断することができない。従って、セキュリティを効果的に向上させることができる。
【0063】
次に、中継サーバ3は、再びS310の処理を行う。現在作成中のVPNグループは、中継サーバ1と中継サーバ3のみで構成されるため、他のルーティングセッションはVPNグループ情報には記述されていない。従って、中継サーバ3は、パケットのルーティング制御を開始する(S316)。なお、仮に他のルーティングセッションがある場合は、中継サーバ3は、再びS311〜S315の処理を行う。
【0064】
このように、本実施形態では、VPNを構築する際に、それぞれのルーティング機器が他のルーティング機器とアドレスフィルタ情報を交換(取得)するため、最新のアドレスフィルタ情報を用いてVPNを構築することができる。従って、VPN開始前の段階で一部のルーティング機器においてアドレスフィルタ情報が変更された場合でも、その変更を全てのルーティング機器に反映させた状態でVPNを構築して通信を開始できるので、パケットのルーティングにおける矛盾の発生を防止でき、信頼性を向上させることができる。
【0065】
また、図13のフローチャートには記載していないが、S310において自身が接続の始点となるルーティングセッションが無い場合(自身がルーティングの終点となる場合)であっても、始点となるルーティング機器からの通信制御を受けてルーティングセッションの確立処理及びアドレスフィルタ情報の交換が行われる。それと同時に、仮想アドレスを用いた通信を行う場合は、仮想アドレスの割当て等も行われる。
【0066】
なお、それぞれのルーティング機器は、自身が始点である旨がルーティングセッション情報に記述されていない限りはルーティングセッション確立のための最初の通信制御を行わないので、通信制御の衝突を防止し、機器間のルーティングセッションを簡素な制御で確立することができる。
【0067】
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について説明する。
【0068】
初めに、中継サーバ3がLAN30からパケットを受信したときに行う制御について図14を参照して説明する。図14は、この制御の流れを示すフローチャートである。
【0069】
なお、LAN30内のルーティング対象装置は、他のルーティング対象装置にパケットを送信する際は、中継サーバ3に登録された情報を参照して他のルーティング対象アドレスを取得し、取得したルーティング対象アドレスを宛先アドレスとしてパケットを送信する。
【0070】
中継サーバ3は、LAN30からパケットを受信するまで待機している(S401)。そして、LAN30からパケットを受信した場合、初めに、当該パケットの宛先が自機(中継サーバ3)であるか否かの判断を行う(S402)。
【0071】
中継サーバ3は、パケットの宛先が自機であった場合、当該パケットの受信を行う(S403)。一方、パケットの宛先が自機以外であった場合、中継サーバ3は、受信したパケットの宛先アドレスと、アドレスフィルタ情報(図8(b)を参照)と、を比較して、宛先アドレスがアドレスフィルタ情報に登録されているか否かの判断を行う(S404)。中継サーバ3は、宛先アドレスがアドレスフィルタ情報に登録されていない場合、パケットを破棄する(S405)。一方、中継サーバ3は、宛先アドレスがアドレスフィルタ情報に登録されていた場合、当該アドレスフィルタ情報に対応するルーティングセッションを特定する(S406)。
【0072】
次に、中継サーバ3は、自機が仮想アドレスを利用中か否か(S102で仮想アドレスの割当てを許可したか否か)の判断を行う(S407)。仮想アドレスを利用中である場合、中継サーバ3は、仮想アドレス割当関係記憶部57を参照して、送信元アドレスを仮想アドレスに変換する(S408)。そして、S406で特定したルーティングセッションへパケットを転送する(S409)。なお、仮想アドレスを利用中でない場合、中継サーバ3は、送信元アドレスの変換を行わずに、S406で特定したルーティングセッションへパケットを送信(転送)する(S409)。
【0073】
次に、中継サーバ3がルーティングセッションからパケットを受信したときに行う制御について図15を参照して説明する。図15は、この制御の流れを示すフローチャートである。
【0074】
中継サーバ3は、ルーティングセッションからパケットを受信するまで待機している(S501)。そして、中継サーバ3は、ルーティングセッションからパケットを受信した場合、当該パケットの宛先アドレスと、アドレスフィルタ情報(図8(b)を参照)と、を比較して、パケットの宛先アドレスが自機のアドレスフィルタ情報に対応付けて登録されているか否かの判断を行う(S502)。
【0075】
パケットの宛先アドレスが自機のアドレスフィルタ情報に対応付けて登録されている場合、自機が仮想アドレスを利用中か否か(S102で仮想アドレスの割当てを許可したか否か)の判断を行う(S503)。仮想アドレスを利用中である場合、中継サーバ3は、宛先アドレスを実際のアドレスに変換して(S504)、宛先アドレスが示す機器(対象端末31,32,33)へ、パケットを転送する(S505)。なお、仮想アドレスを利用中でない場合、中継サーバ3は、宛先アドレスを変換することなく宛先が示す機器へパケットを送信(転送)する(S505)。
【0076】
また、中継サーバ3は、宛先アドレスが自機のアドレスフィルタ情報に対応付けて登録されていない場合、当該宛先アドレスが他のルーティング機器のアドレスフィルタ情報に対応付けて登録されているか否かの判断を行う(S506)。当該宛先アドレスが他のルーティング機器のアドレスフィルタ情報に対応付けて登録されている場合、中継サーバ3は、該当するルーティングセッションを特定し(S507)、このルーティングセッションへパケットを送信(転送)する(S508)。
【0077】
一方、当該宛先アドレスが他のルーティング機器のアドレスフィルタ情報にも登録されていない場合、中継サーバ3は、当該パケットを破棄する(S509)。
【0078】
以上の制御を行うことにより、中継サーバ3は、仮想アドレスを利用して通信を行うことができる。
【0079】
次に、上記の制御を行う中継サーバ1,3を介して、操作PC11と対象端末31とがパケットをやり取りするときの流れについて図16を参照して簡単に説明する。
【0080】
図16(a)は、対象端末31から操作PC11へパケットが送信される場合を示している。この場合、中継サーバ3は、LAN30からパケットを受信するため、図14に示す制御を行う。
【0081】
対象端末31は、操作PC11の実際のアドレスを宛先アドレスとしてパケットを送信する。このパケットを受信した中継サーバ3は、アドレスフィルタ情報(図8(b)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として中継サーバ1が記述されていることを認識してルーティングセッションを特定する(S406)。次に、中継サーバ3は、自機が仮想アドレスを利用中であることを認識して、送信元アドレスを仮想アドレスに変換する(S408)。そして、中継サーバ3は、ルーティングセッションを介して中継サーバ1へパケットを送信する(S409)。
【0082】
このパケットを受信した中継サーバ1は、アドレスフィルタ情報(図8(a)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として自機(中継サーバ1)が記述されていることを認識する。そして、中継サーバ1は、宛先の操作PC11へパケットを送信する。
【0083】
図16(b)は、操作PC11から対象端末31へパケットが送信される場合を示している。この場合、中継サーバ3は、ルーティングセッションからパケットを受信するため、図15に示す制御を行う。
【0084】
操作PC11は、対象端末31からのパケットを受信すること、又は、中継サーバ1に登録された情報を参照すること等によって、対象端末31の仮想アドレスを取得する。操作PC11は、この仮想アドレスを宛先としてパケットを送信する。このパケットを受信した中継サーバ1は、アドレスフィルタ情報(図8(a)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として中継サーバ3が記述されていることを認識する。そして、中継サーバ1は、ルーティングセッションを介して、中継サーバ3へパケットを送信する。
【0085】
このパケットを受信した中継サーバ3は、アドレスフィルタ情報(図8(b)を参照)に基づいて、パケットの宛先アドレスに対応するルーティング機器として自機(中継サーバ3)が記述されていることを認識する。次に、中継サーバ3は、自機が仮想アドレスを利用中であることを認識して、宛先アドレスを実際のアドレスに変換する(S504)。そして、中継サーバ3は、宛先の対象端末31へパケットを送信する(S505)。
【0086】
以上により、第1ルーティング対象アドレスを第2LAN側の機器(中継サーバ1、操作PC11,12等)に知らせることなく、ルーティング対象装置間で通信を行うことができる。
【0087】
以上に示したように、本実施形態の中継サーバ3は、アドレスフィルタ情報記憶部55と、仮想アドレス割当関係記憶部57と、制御部60と、を備える。アドレスフィルタ情報記憶部55は、当該中継サーバ3と同じLAN30に属する対象端末31,32,33を示すアドレスと、中継サーバ1と同じLAN10に属する操作PC11,12を示すアドレスと、を記憶する。仮想アドレス割当関係記憶部57は、LAN30に属する対象端末31,32,33の実際のアドレスと、当該アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する。制御部60は、LAN30に属する対象端末31,32,33の実際のアドレスに仮想アドレスを割り当て、その割当関係を仮想アドレス割当関係記憶部57に記憶する。制御部60は、LAN30に属する対象端末31,32,33の実際のアドレスに割り当てた仮想アドレスを中継サーバ1へ送信するとともに、中継サーバ1から、LAN10に属する操作PC11,12を示すアドレスを受信し、中継サーバ1とルーティングセッションを確立する。制御部60は、ルーティングセッションから仮想アドレスを宛先とするパケットを受信した際に、パケットの宛先アドレスを、LAN30に属する対象端末31,32,33のアドレスに変換して宛先の対象端末31,32,33へパケットを転送する。制御部60は、LAN30に属する対象端末31,32,33からパケットを受信した際に、パケットの送信元アドレスを仮想アドレスに変換してルーティングセッションへパケットを転送する。
【0088】
これにより、LAN30に属するユーザは、例えば対象端末31,32,33のうち何れかを使用して、当該端末の実際のアドレスを相手に知らせることなしに操作PC11,12と通信を行うことができる。従って、セキュリティを確保しつつ中継通信を行うことができる。また、中継サーバ1及び操作PC11,12から見たときに、LAN30側の対象端末31,32,33を示すものとして中継サーバ1に通知されたアドレス(例えば150.100.0.82)が実際のアドレスであるか仮想アドレスであるかについても隠蔽されるので、この点においてもセキュリティを向上することができる。
【0089】
また、本実施形態の中継サーバ3においては、制御部60は、無作為に決定された仮想アドレスを、LAN30に所属する対象端末31,32,33の実際のアドレスに割り当てる。
【0090】
これにより、LAN10側のユーザが仮想アドレスから対象端末31,32,33の実際のアドレスを推測することが困難になるので、セキュリティを一層向上させることができる。
【0091】
次に、上記実施形態の変形例について説明する。本変形例では、上記実施形態の構成を採用しつつ、設定可能な事項を充実させた構成である。具体的には、本変形例では、図17に示すように、上記実施形態で設定した仮想アドレスの割当てを許可するか否かを中継サーバ毎に設定することができる。
【0092】
この設定は、例えば中継サーバの設置先に基づいて決定することができる。例えば、図1の構成において、中継サーバ3の設置先の企業が中継サーバ1の設置先の企業と異なる一方で、中継サーバ3の設置先の企業と中継サーバ2の設置先の企業とが同じであるとする。この場合、中継サーバ1へ対象端末31,32,33の実際のアドレスを送信することは、セキュリティ上の観点から問題が生じる可能性がある。一方、中継サーバ2へは、対象端末31,32,33の実際のアドレスを送信してもセキュリティ上問題ないことが多い。この場合、中継サーバ3の設定として、図17に示すように、中継サーバ1に送信するアドレスとして仮想アドレスを指定し、中継サーバ2に送信するアドレスとして実際のアドレスを指定することで、上記の事情に対応したVPNを構築することができる。
【0093】
以上に本発明の好適な実施の形態及び変形例を説明したが、上記の構成は例えば以下のように変更することができる。
【0094】
仮想アドレスを利用した通信を許可するか否かの設定は、上記実施形態のようにVPNの初期設定時に行っても良いし、VPNの起動時に行っても良い。
【0095】
仮想アドレスの割当てを行うタイミングは任意であり、上記で説明した例に限られない。例えば、他の中継サーバからルーティング対象アドレスを受信した後に割当てを行うことで、他のルーティング対象アドレスとの重複を防ぐことができる。
【0096】
上記では、ルーティングセッションの確立と略同時にアドレスフィルタ情報の交換を行う構成である。これに対し、VPNグループの開始コマンドの送信(S305)とともにアドレスフィルタ情報を送信し、応答(S306)とともにアドレスフィルタ情報を受信する構成でも良い。
【0097】
上記では、操作PC11等の個別の機器がルーティング対象装置となっていたが、例えば、LAN10全体(200.1.40.0/24)を中継サーバ1のルーティング対象装置として設定しても良い。この場合、当該ルーティング対象装置には、(150.100.10.0/24)のように、範囲指定された仮想アドレスが割り当てられる。
【0098】
仮想アドレスの割当てを行うタイミングは任意であり、例えば、開始コマンドの送信とともにアドレスフィルタ情報を送信する構成とすることができる。この場合、より早いタイミングで仮想アドレスの割当てを行うことができる。
【0099】
上記では、中継サーバのみがルーティングポイントとして機能する構成であるが、クライアント端末がルーティングポイントとして機能する構成であっても良い。また、VPNグループ内のルーティングポイントの数は2つに限られず、3つ以上であっても良い。また、1つのルーティング機器が複数のVPNグループに所属していても良い。
【0100】
上記の中継グループ情報、中継サーバ情報、クライアント端末情報、VPNグループ情報、アドレスフィルタ情報等を格納する形式はXML形式に限定されず、適宜の形式で各情報を格納することができる。
【0101】
上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。
【符号の説明】
【0102】
1 中継サーバ(第2中継サーバ)
3 中継サーバ(第1中継サーバ)
11,12 操作PC(第2ルーティング対象装置)
31,32,33 対象端末(第1ルーティング対象装置)
10 LAN(第2LAN)
30 LAN(第1LAN)
54 VPNグループ情報記憶部
55 アドレスフィルタ情報記憶部
56 仮想アドレス登録情報記憶部
57 仮想アドレス割当関係記憶部
100 中継通信システム
【特許請求の範囲】
【請求項1】
第1LAN内に位置しパケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶するアドレスフィルタ情報記憶部と、
第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する仮想アドレス割当関係記憶部と、
制御部と、を備え、
前記制御部は、
前記第1ルーティング対象アドレスに前記仮想アドレスを割り当て、その割当関係を前記仮想アドレス割当関係記憶部に記憶する制御と、
前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する制御と、
前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する制御と、
前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する制御と、
を行うことを特徴とする中継サーバ。
【請求項2】
請求項1に記載の中継サーバであって、
前記制御部は、無作為に決定された前記仮想アドレスを前記第1ルーティング対象アドレスに割り当てることを特徴とする中継サーバ。
【請求項3】
請求項1又は2に記載の中継サーバであって、
前記仮想アドレスを用いて通信を行うか前記第1ルーティング対象アドレスを用いて通信を行うかを中継サーバ毎に設定可能であることを特徴とする中継サーバ。
【請求項4】
第1中継サーバ及び第2中継サーバを含んで構成される中継通信システムにおいて、
第1LAN内に位置する中継サーバは、
当該第1中継サーバがパケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する前記第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶するアドレスフィルタ情報記憶部と、
第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する仮想アドレス割当関係記憶部と、
制御部と、を備え、
前記制御部は、
前記第1ルーティング対象アドレスに前記仮想アドレスを割り当て、その割当関係を前記仮想アドレス割当関係記憶部に記憶する制御と、
前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する制御と、
前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する制御と、
前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する制御と、
を行うことを特徴とする中継通信システム。
【請求項1】
第1LAN内に位置しパケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶するアドレスフィルタ情報記憶部と、
第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する仮想アドレス割当関係記憶部と、
制御部と、を備え、
前記制御部は、
前記第1ルーティング対象アドレスに前記仮想アドレスを割り当て、その割当関係を前記仮想アドレス割当関係記憶部に記憶する制御と、
前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する制御と、
前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する制御と、
前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する制御と、
を行うことを特徴とする中継サーバ。
【請求項2】
請求項1に記載の中継サーバであって、
前記制御部は、無作為に決定された前記仮想アドレスを前記第1ルーティング対象アドレスに割り当てることを特徴とする中継サーバ。
【請求項3】
請求項1又は2に記載の中継サーバであって、
前記仮想アドレスを用いて通信を行うか前記第1ルーティング対象アドレスを用いて通信を行うかを中継サーバ毎に設定可能であることを特徴とする中継サーバ。
【請求項4】
第1中継サーバ及び第2中継サーバを含んで構成される中継通信システムにおいて、
第1LAN内に位置する中継サーバは、
当該第1中継サーバがパケットを転送可能な第1ルーティング対象装置のアドレスである第1ルーティング対象アドレスと、第2LAN内に位置する前記第2中継サーバがパケットを転送可能な第2ルーティング対象装置のアドレスである第2ルーティング対象アドレスと、を記憶するアドレスフィルタ情報記憶部と、
第1ルーティング対象アドレスと、当該第1ルーティング対象アドレスに割り当てられた仮想アドレスと、を対応付けて記憶する仮想アドレス割当関係記憶部と、
制御部と、を備え、
前記制御部は、
前記第1ルーティング対象アドレスに前記仮想アドレスを割り当て、その割当関係を前記仮想アドレス割当関係記憶部に記憶する制御と、
前記第1ルーティング対象アドレスに割り当てた前記仮想アドレスを前記第2中継サーバへ送信するとともに、前記第2中継サーバから前記第2ルーティング対象アドレスを受信し、前記第2中継サーバとルーティングセッションを確立する制御と、
前記ルーティングセッションから前記仮想アドレスを宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの宛先アドレスを、前記仮想アドレスに対応する前記第1ルーティング対象アドレスに変換して宛先の前記第1ルーティング対象装置へパケットを転送する制御と、
前記第1ルーティング対象装置から前記第2ルーティング対象装置を宛先とするパケットを受信した際に、前記仮想アドレス割当関係記憶部を参照して、パケットの送信元アドレスを、前記第1ルーティング対象アドレスに割り当てられた前記仮想アドレスに変換して前記ルーティングセッションへパケットを転送する制御と、
を行うことを特徴とする中継通信システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2013−115777(P2013−115777A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−263030(P2011−263030)
【出願日】平成23年11月30日(2011.11.30)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願日】平成23年11月30日(2011.11.30)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】
[ Back to top ]