実施例1に続き、実施例2に係るVPN(Virtual Private Network)間接続設定システム100を説明する。まず、実施例1と異なる主な点を簡単に説明すると、実施例2に係るVPN間接続設定システム100は、拠点として、電気通信事業者などによって提供されたVPNサービスに接続するLAN(Local Area Network)を想定する。このため、実施例2においては、拠点間接続を「VPN間接続」と呼び、「終端装置」を「VPN終端装置」と呼ぶ。「VPN終端装置」は、広域ネットワークを終端する機能、及び、VPNを終端する機能を果たす。
また、実施例2に係るVPN間接続設定システム100は、VPN間接続の種別に応じて定型化されたVPN終端装置及び集合仮想ルータの設定パターンを予め記憶し、設定パターンを用いて設定情報を自動生成する。また、実施例2に係るVPN間接続設定システム100は、設定情報の他に、各設定情報がVPN終端装置及び集合仮想ルータに対して反映される順序を規定する設定順序情報を自動生成し、設定順序情報に従って設定情報を反映する。
また、実施例2に係るVPN間接続設定システム100は、VPN間接続に関する要求としてオプション要求をさらに受け付け、オプション設定情報を自動生成し、VPN終端装置や集合仮想ルータにオプション設定情報を反映する。ここで、オプションとは、例えば、NAT(Network Address Translation)、NAPT(Network Address Port Translation)、PF(Packet Filtering)、QoS(Quality of Service)などである。オプションは、VPN終端装置にて実施されたり、集合仮想ルータにて実施されたり、VPN終端装置及び集合仮想ルータの双方にて実施されたりする。
また、実施例2に係るVPN間接続設定システム100は、VPN間接続の開始時刻や終了時刻の指定を受け付け、受け付けた時刻にVPN間接続が開始され終了されるように予約管理を行う。
以下、図4〜図26を用いて、実施例2に係るVPN間接続設定システムの構成、処理手順、効果を説明する。
[実施例2のネットワーク構成]
まず、実施例2のネットワーク構成を説明する。図4は、実施例2のネットワーク構成を説明するための図である。図4に示すように、広域ネットワークには、VPN終端装置や集合仮想ルータが設置される。VPN終端装置は、拠点を接続するとともに、接続した拠点と広域ネットワークとの間で広域ネットワークを終端する装置である。また、集合仮想ルータは、広域ネットワーク内でパケット転送を行う装置である。
なお、図4においては、説明の便宜上、1台の筐体のVPN終端装置が1つの拠点を接続するが、開示の技術はこれに限られるものではなく、1台の筐体のVPN終端装置が複数の拠点を接続してもよい。また、「拠点を接続する」とは、例えば、広域ネットワークに設置されるVPN終端装置とアクセスネットワークに設置されるルータなどのネットワーク装置との間を物理的に接続し、また、アクセスネットワークに設置されるルータなどのネットワーク装置と拠点に設置されるルータなどのネットワーク装置との間を物理的に接続することをいう。
また、図4においては、複数台の筐体のVPN終端装置と複数台の筐体の集合仮想ルータとが設置される構成を示すが、開示の技術はこれに限られるものではない。例えば、VPN終端装置が有する機能と集合仮想ルータが有する機能とが1台の筐体に収まった装置が複数台設置される構成にも、開示の技術を同様に適用することができる。
また、図4に示すように、広域ネットワークには、実施例2に係るVPN間接続設定システム100が設置される。VPN間接続設定システム100は、VPN間接続のための伝送路を設定するシステムである。
なお、図4においては、VPN間接続設定システム100が広域ネットワークに設置される構成を示すが、開示の技術はこれに限られるものではない。VPN間接続設定システム100は、VPN終端装置及び集合仮想ルータとの間で通信を行うことが可能な構成であればよく、必ずしも広域ネットワークに設置されていなければならないわけではない。例えば、VPN間接続設定システム100が、VPN終端装置及び集合仮想ルータと監視用のネットワークで接続されている構成にも、開示の技術を同様に適用することができる。
また、図4においては、1台の筐体のVPN間接続設定システム100が設置される構成を示すが、開示の技術はこれに限られるものではない。例えば、複数台の筐体のVPN間接続設定システム100が設置される構成や、例えば、記憶部などVPN間接続設定システム100の一部が別の筐体で設置される構成などにも、開示の技術を同様に適用することができる。
ここで、図4に示すように、VPN終端装置と集合仮想ルータとは物理的に接続され、また、OSI(Open Systems Interconnection)のデータリンク層におけるインタフェースの設定は事前に行われている。また、実施例2においては、VPN間接続のネットワーク構成として、スター型を想定する。
次に、実施例2においてVPN間接続が実現された後のネットワーク構成を説明する。図5は、実施例2においてVPN間接続が実現された後のネットワーク構成を説明するための図である。実施例2に係るVPN間接続設定システム100が、VPN終端装置及び集合仮想ルータに対して設定情報を反映すると、図5に示すように、集合仮想ルータには、仮想的に構築された伝送路においてパケット転送を行う「仮想ルータ」が設定される。すなわち、図5に示す「仮想ルータ」は、物理的な筐体を示すものではなく、仮想的に設定された機能を示すものである。
また、図5に示す斜線で塗り潰された太線は、仮想的に構築された伝送路すなわちVPNを示し、『A社テレワーク』と『C社本社』との間をVPN間接続するVPNを示す。なお、図5においては、説明の便宜上、必要となる箇所のIP(Internet Protocol)アドレスを示す。
ところで、実施例2においては、図5に示す『A社テレワーク』と『C社本社』との間におけるVPN間接続を例に挙げて説明する。ここで、図5に示すように、『A社テレワーク』は、『VPN終端装置1』に接続され、『C社本社』は、『VPN終端装置12』に接続され、それぞれ異なるVPN終端装置に接続される。このため、実施例2においては、VPN終端装置の設定情報は、VPN終端装置毎に生成される。また、図5に示すように、『VPN終端装置1』は、『集合仮想ルータ1』に接続され、『VPN終端装置12』は、『集合仮想ルータ2』に接続される。このため、実施例2においては、集合仮想ルータの設定情報は、集合仮想ルータ毎に生成される。
なお、例えば、VPN間接続を要求する複数の拠点が、同じVPN終端装置に接続される場合も考えられる。このような場合には、複数拠点分の設定情報が生成されるが、生成された設定情報の反映は、一つのVPN終端装置に対して行われることになる。すなわち、拠点とVPN終端装置との関係には、N対1の関係(全拠点が同一のVPN終端装置にて接続される)、N対Mの関係(ただしN>Mである)、N対Nの関係がある。なお、複数拠点分の設定情報が、複数のファイルとして生成されるか、あるいは1つのファイルにまとめて生成されるかは、任意である。
また、実施例2においては、拠点間をVPN間接続する事例を説明するが、開示の技術はこれに限られるものではない。例えば、ユーザの端末自体を拠点として複数の拠点間をVPN間接続する事例や、ユーザの端末と拠点とが混在する構成において拠点間をVPN間接続する事例にも、開示の技術を同様に適用することができる。また、これらの事例においても同様に、拠点とVPN終端装置との関係には、N対1の関係(全拠点が同一のVPN終端装置にて接続される)、N対Mの関係(ただしN>Mである)、N対Nの関係がある。
続いて、実施例2におけるVPN終端装置の事前設定情報の一例を説明する。図6は、実施例2におけるVPN終端装置の事前設定情報の一例を説明するための図である。後述するように、VPN終端装置に設定すべき設定情報は、VPN間接続の種別に応じて決定されるべきものである。ここで、実施例2における「VPN間接続の種別」は、例えば、VPN種別や、VPN終端装置や集合仮想ルータの種別、あるいはこれらの組合せなどである。すなわち、例えば、VPN終端装置が1種類のVPN種別にのみ対応している場合には、VPN終端装置の種別から設定パターンが一意に特定されることになり、同時に、VPN種別から設定パターンが一意に特定されることにもなる。一方、例えば、VPN終端装置が複数種類のVPN種別に対応している場合には、VPN終端装置の種別から設定パターンは一意に特定されず、VPN種別とVPN終端装置との組合せから初めて設定パターンが一意に特定されることになる。さらに、例えば、VPN種別が複数の認証方法に対応する場合には、認証方法まで特定しなければ、設定パターンは一意に特定されないこともある。
現在、多く利用されているVPN種別を表1に示す。表1に示すように、VPN種別には、大きく、事前設定型及びオンデマンド接続型の2つの体系が存在する。事前設定型は、VPN間接続時に必要となるVPN配送用のIP(Internet Protocol)アドレスやルーティング情報を、事前にVPN終端装置や集合仮想ルータに設定する必要があるVPN種別の体系である。オンデマンド接続型は、VPN利用時に接続ポイント間にて認証をした上で自動的に接続する。VPN間接続のトリガがあるため、必要となるVPN配送用のIPアドレスやルーティング情報などをRadius(Remote Authentication Dial In User Service)、DHCP(Dynamic Host Configuration Protocol)などのプロトコルにより、サービス提供側から配信され自動設定可能である。VPN種別は、例えば、IPsec(Security Architecture for Internet Protocol)、SSL(Secure Sockets Layer)−VPN、SIP(Session Initiation Protocol)−DU(Dial Up)、OpenVPNなどである。
図6に戻り、図6に示す事前設定情報は、VPN種別としてOpenVPNを用いるVPN終端装置の事前設定情報『server.conf』の一例である。例えば、実施例2におけるVPN終端装置1に設定されている事前設定情報である。『port』は、サービスポートの指定を示す。『proto』は、プロトコルの指定を示す。『dev』は、ルーティング方式の選択を示す。OpenVPNを用いる場合、ルーティング方式には『routing』と『bridge』とがある。『routing』を選択する場合には『dev tun』と記載され、『bridge』を選択する場合には『dev tap』と記載される。
『ca』、『cert』、『key』は、CA(Certificate Authority)の証明書ファイル、サーバの証明書ファイル、サーバの秘密鍵ファイルの指定を示す。『dh』は、DH(Diffie-Hellman key)パラメータファイルの指定を示す。『ifconfig−pool−persist ipp.txt』は、クライアントに割り当てられたIPアドレスを管理するファイルの指定を示す。
『client−to−client』は、クライアント同士の通信を許可することを示す。『keepalive』は、サーバとクライアントとの間の死活監視の設定を示す。『comp−lzo』は、LZO(Lempel-Ziv-Oberhumer)圧縮の設定を示す。『max−clients』は、同時に接続することができるクライアントの最大数の設定を示す。『user』は、デーモンプロセスのユーザの指定を示す。『group』は、デーモンプロセスのグループの指定を示す。『persit−key』や『persist−tun』は、再接続処理の設定を示す。『status』は、ステータスログの指定を示す。『log』は、ログファイルの指定を示す。『verb』は、ログレベルの指定を示す。
ところで、図6に示す事前設定情報『server.conf』の内、下から3行分に記載された事前設定情報は、サーバとクライアントとの間で用いられる認証方法の指定を示す。VPN種別としてOpenVPNを用いる場合、認証方法の指定は、VPN間接続の種別の一つであり、VPN終端装置に設定すべき設定情報は、認証方法の指定に応じて決定されなければならない。『plugin』は、『/user/share/openvpn/plugin/lib/openvpn−auth−pam.so』に記憶されているプラグインの使用を宣言する。『client−cert−not−required』は、クライアントの証明書が不要であることを示す。『username−as−common−name』は、パスワードファイルを参照することを示す。
[実施例2に係るVPN間接続設定システム100の構成]
次に、実施例2に係るVPN間接続設定システム100の構成を説明する。図7は、実施例2に係るVPN間接続設定システム100の構成を示すブロック図である。図7に示すように、実施例2に係るVPN間接続設定システム100は、通信部110と、入力部111と、出力部112と、入出力制御I/F部113と、記憶部120と、制御部130とを備える。
通信部110は、例えばIP通信用の一般的なインタフェースなどであり、設定情報の設定対象となるVPN終端装置や集合仮想ルータとの間で通信を行う。なお、VPN間接続設定システム100は、通信部110を介して他の管理端末やユーザ用のWebサーバなどとの間で通信を行うこともでき、他の管理端末やユーザ用のWebサーバなどからVPN間接続要求を受信することもできる。
入力部111は、例えばキーボードやマウスなどであり、各種操作の入力などを受け付ける。実施例2において、入力部111は、VPN間接続要求の入力をキーボードやマウスによって受け付ける。出力部112は、例えばディスプレイなどであり、各種操作のための情報などを出力する。実施例2において、出力部112は、VPN間接続要求の入力画面を出力する。入出力制御I/F(Interface)部113は、入力部111と、出力部112と、記憶部120と、制御部130との間における入出力を制御する。なお、VPN間接続設定システム100は、必ずしも入力部111や出力部112を備える必要はなく、例えば、通信部110を介して他の管理端末やユーザ用のWebサーバと通信を行い、入出力に係る情報を送受信してもよい。
記憶部120は、例えばRAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(flash memory)などの半導体メモリ素子、ハードディスク、光ディスクなどであり、各種情報を記憶する。具体的には、記憶部120は、図7に示すように、接続情報記憶部121と、設定パターン記憶部122と、集合仮想ルータ間通信ルール記憶部123と、予約情報設定情報記憶部124と、アタッチメント記憶部125と、装置情報記憶部126とを有する。
接続情報記憶部121は、接続情報を記憶する。ここで、接続情報とは、VPN間接続要求にて指定された拠点それぞれを接続するVPN終端装置及び集合仮想ルータを特定し、設定パターンを特定するための情報のことであり、VPN間接続の種別と設定パターンとを対応付けた情報である。また、接続情報には、設定情報の作成に必要なその他の情報も含まれる。接続情報記憶部121は、例えばVPN間接続設定システム100の運用者に入力されることで、接続情報を事前に記憶する。また、接続情報記憶部121が記憶する接続情報は、後述する装置特定部132、VPN終端装置設定情報生成部133、集合仮想ルータ設定情報生成部134による処理に利用される。
図8及び図9は、接続情報記憶部121を説明するための図である。接続情報記憶部121は、図8に示すように、接続情報として、集合仮想ルータの設定パターンの識別情報や、集合仮想ルータに接続されるVPN終端装置及びその設定パターンの識別情報などを記憶する。また、接続情報記憶部121は、図9に示すように、接続情報として、集合仮想ルータに接続される装置の情報を記憶する。また、接続情報記憶部121は、これらの接続情報を集合仮想ルータ毎に記憶する。例えば、図8の(A)及び図9の(A)は、『集合仮想ルータ1』に関する接続情報であり、図8の(B)及び図9の(B)は、『集合仮想ルータ2』に関する接続情報である。
まず、図8を説明する。例えば、接続情報記憶部121は、集合仮想ルータの識別情報と、この識別情報によって識別される集合仮想ルータの設定パターンの識別情報とを対応付けて記憶する。例えば、図8の(A)に示すように、接続情報記憶部121は、集合仮想ルータの識別情報『集合仮想ルータ1』と、集合仮想ルータの設定パターン識別情報『VR−P1』とを対応付けて記憶する。また、例えば、図8の(B)に示すように、接続情報記憶部121は、集合仮想ルータの識別情報『集合仮想ルータ2』と、集合仮想ルータの設定パターン識別情報『VR−P2』とを対応付けて記憶する。
また、実施例2においては、VPN終端装置と集合仮想ルータとは予め対応付けられ、VPN終端装置が一意に特定されると、集合仮想ルータも一意に特定される関係にある。このようなことから、例えば、接続情報記憶部121は、図8に示すように、集合仮想ルータの識別情報毎に、拠点(又は拠点のユーザ)を識別するVPN間接続先ID(IDentifier)と、拠点が用いるVPN種別と、拠点が接続されるVPN終端装置の識別情報と、VPN終端装置の設定パターンの識別情報と、ユーザ側にて用いられている利用IPアドレス帯との対応付けのリストを記憶する。
『VPN間接続先ID』は、例えばVPN間接続サービスの契約時などにVPN間接続設定システム100の運用者によって払い出され、接続情報記憶部121に格納される。ここで、図8の(B)に示すように、例えばUserCは、『VPN終端装置11』に接続されるVPN間接続先ID『User−Telework』と、『VPN終端装置12』に接続されるVPN間接続先ID『User−Office』との払い出しを受けている。したがって、UserCが、C社テレワークからC社本社に移動した場合には、使用するVPN間接続先IDを『User−Telework』から『User−Office』に切り替えることで、VPN間接続サービスを受けることができる。一方、仮に、UserCが、未だVPN間接続先ID『User−Office』の払い出しを受けていない場合には、UserCは、たとえVPN間接続先ID『User−Telework』の払い出しを受けていたとしても、C社本社においては、VPN間接続サービスを受けることはできない。
『VPN種別』は、例えばVPN間接続サービスの契約時などにユーザからヒアリングされ、接続情報記憶部121に格納される。『VPN終端装置』は、例えばVPN間接続サービスの契約時などにVPN間接続設定システム100の運用者によって決定され、接続情報記憶部121に格納される。また、『VPN終端装置の設定パターン』は、例えばVPN間接続サービスの契約時などにVPN間接続設定システム100の運用者によって決定され、接続情報記憶部121に格納される。『利用IPアドレス帯』は、例えばVPN間接続サービスの契約時などにユーザからヒアリングされ、接続情報記憶部121に格納される。
例えば、図8の(A)において、VPN間接続先ID『UserA−Telework』、VPN種別『OpenVPN』、VPN終端装置『VPN装置1』、VPN終端装置の設定パターン『VPN−P1』、利用IPアドレス帯『10.16.0.0/24』の行について説明する。まず、『UserA−Telework』によって識別される拠点では、『OpenVPN』が用いられていることを示す。また、『UserA−Telework』によって識別される拠点は、『VPN終端装置1』に接続されること、また、VPN終端装置の設定パターンには、『VPN−P1』が用いられることを示す。また、『UserA−Telework』によって識別される拠点では、『10.16.0.0/24』のIPアドレス帯が用いられていることを示す。なお、実施例2においては、各拠点において用いられているプライベートアドレスが相互に重複することがない状況を想定する。
このように、実施例2においては、例えばVPN間接続サービスの契約時などに、VPN間接続設定システム100の運用者が、ユーザから『VPN種別』をヒアリングし、このユーザを接続する『VPN終端装置』を決定し、その他認証方法などを勘案することで、『VPN終端装置の設定パターン』を決定し、接続情報記憶部121に登録する。
次に、図9を説明する。例えば、接続情報記憶部121は、集合仮想ルータの各物理ポートに接続される装置の識別情報を、物理ポートを識別する物理ポート番号と対応付けて記憶する。すなわち、実施例2における集合仮想ルータは、複数の物理ポートを有し、各物理ポートは、他の集合仮想ルータと予め物理的に接続され、あるいは、VPN終端装置と予め物理的に接続されている。このため、接続情報記憶部121は、どの物理ポートにどの装置が接続されているかを示す接続情報を記憶する。
例えば、図9の(A)において、物理ポート番号『1』、装置『集合仮想ルータ2』の行は、『集合仮想ルータ1』が有する物理ポートのうち、物理ポート番号『1』の物理ポートには、『集合仮想ルータ2』が予め物理的に接続されていることを示す。また、例えば、図9の(A)において、物理ポート番号『5』、装置『VPN終端装置1』の行は、『集合仮想ルータ1』が有する物理ポートのうち、物理ポート番号『5』の物理ポートには、『VPN終端装置1』が予め物理的に接続されていることを示す。
こうして、実施例2に係るVPN間接続設定システム100においては、予め、VPN間接続の種別と設定パターンとを対応付けた情報が登録され、予め登録された情報を用いて、その後の設定情報の生成や反映が自動化されるのである。
図7に戻り、設定パターン記憶部122は、VPN終端装置に設定すべき設定情報がVPN間接続の種別に応じて定型化されたVPN終端装置の設定パターンを記憶する。また、設定パターン記憶部122は、集合仮想ルータに設定すべき設定情報がVPN間接続の種別に応じて定型化された集合仮想ルータの設定パターンを記憶する。設定パターン記憶部122は、例えばVPN間接続設定システムの運用者に入力されることで、設定パターンを事前に記憶する。また、設定パターン記憶部122が記憶する設定パターンは、後述するVPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134による処理に利用される。
図10は、集合仮想ルータの設定パターンの一例である。図10に示すように、例えば、設定パターン記憶部122は、集合仮想ルータの設定パターンとして、設定パターンの各項目を管理するための項番と、設定情報を設定内容に応じて区分けする区分と、設定内容と、設定情報の登録タイミングと、削除タイミングと、設定内容の仕様とを対応付けて記憶する。また、図10に示す設定パターンの内、項番1〜項番3、及び項番6が、設定情報の設定パターンであり、項番4及び項番5が、オプション設定情報の設定パターンである。なお、実施例2においては、オプション要求に関する設定情報を一般的な設定情報と区別して用いる場合には、『オプション設定情報』と呼ぶ。また、図10においては図示を省略するが、設定パターン記憶部122は、集合仮想ルータの設定パターンとして、所定のコマンド文をも記憶する。なお、設定パターンは、設定パターンの識別情報によって識別される。
例えば、項番1の行を説明する。区分『仮想ルータ定義』の設定パターンは、VPN間接続要求に基づいて仮想的に構築される伝送路においてパケット転送を行う「仮想ルータ」を定義するための設定パターンである。設定内容『仮想ルータ名』は、設定される「仮想ルータ」の名称であり、『半角英数字』で設定すべきことが、仕様として規定されている。また、設定内容『仮想ルータID』は、設定される「仮想ルータ」のIDであり、『16ビット数値』と『32ビット数値』とを『:(コロン)』で接続した形式で設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番1の情報は、サービス開始直前に集合仮想ルータに反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番1の情報は、サービス終了直後に集合仮想ルータから削除されるべきことを示す。
また、例えば、項番2の行を説明する。区分『I/F設定』の設定パターンは、「仮想ルータ」に設定されるインタフェースの設定パターンである。設定内容『IPアドレス』は、インタフェースに設定するIPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきことが、仕様として規定されている。また、設定内容『I/Fの指定』は、インタフェースの指定は『I/Fの種別 数字/数字/数字』の形式で設定すべきことが、仕様として規定されている。また、設定内容『所属仮想ルータ』は、インタフェースを設定する仮想ルータ名を指定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番2の情報は、サービス開始直前に集合仮想ルータに反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番2の情報は、サービス終了直後に集合仮想ルータから削除されるべきことを示す。
また、例えば、項番3の行を説明する。区分『仮想ルータ単位のルーティング設定』の設定パターンは、「仮想ルータ」に設定されるルーティング情報の設定パターンである。設定内容『ルーティング設定』は、ルーティング情報を設定する仮想ルータ名を指定すべきこと、ルーティング情報のIPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番3の情報は、サービス開始直前に集合仮想ルータに反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番3の情報は、サービス終了直後に集合仮想ルータから削除されるべきことを示す。
また、例えば、項番4の行を説明する。区分『アクセス制御』の設定パターンは、「仮想ルータ」に設定されるアクセス制御の設定パターンである。設定内容『フィルタリング(ACL(Access Control List)など)』は、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、ポート番号は、数字で設定すべきこと、数字は『1〜65535』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番4の情報は、サービス開始直前に集合仮想ルータに反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番4の情報は、サービス終了直後に集合仮想ルータから削除されるべきことを示す。
また、例えば、項番5の行を説明する。区分『アドレス重複解決』の設定パターンは、「仮想ルータ」に設定されるNAT(又はNAPT)の設定パターンである。設定内容『NAT設定』は、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、ポート番号は、数字で設定すべきこと、数字は『1〜65535』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番5の情報は、サービス開始直前に集合仮想ルータに反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番5の情報は、サービス終了直後に集合仮想ルータから削除されるべきことを示す。
また、例えば、項番6の行を説明する。区分『集合仮想ルータ間通信』の設定パターンは、「集合仮想ルータ」に設定されるルーティング情報の設定パターンである。上述した項番3の設定パターンは、各集合仮想ルータと各VPN終端装置との間におけるパケット転送のためのルーティング情報の設定パターンである。一方、項番6の設定パターンは、複数の集合仮想ルータ間におけるパケット転送のためのルーティング情報の設定パターンである。
設定内容『I/F設定』は、インタフェースに設定するIPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、インタフェースの指定は『I/Fの種別 数字/数字/数字』の形式で設定すべきことが、仕様として規定されている。また、設定内容『ルーティング設定』は、ルーティング情報のIPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきことが、仕様として規定されている。
また、登録タイミング『サービス開始直前』は、項番6の情報は、サービス開始直前に集合仮想ルータに反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番6の情報は、サービス終了直後に集合仮想ルータから削除されるべきことを示す。
図11は、VPN終端装置の設定パターンの一例である。図11に示すように、例えば、設定パターン記憶部122は、VPN終端装置の設定パターンとして、設定パターンの各項目を管理するための項番と、設定情報を区分けする区分と、設定内容と、設定情報の登録タイミングと、削除タイミングと、設定内容の仕様とを対応付けて記憶する。また、図11に示す設定パターンの内、項番1が、設定情報の設定パターンであり、項番2及び項番3が、オプション設定情報の設定パターンである。また、図11においては図示を省略するが、設定パターン記憶部122は、VPN終端装置の設定パターンとして、所定のコマンド文をも記憶する。なお、設定パターンは、設定パターンの識別情報によって識別される。
例えば、項番1の行を説明する。区分『VPNユーザ設定』の設定パターンは、VPN間接続要求に基づいてVPN終端装置に接続する拠点のユーザに関する設定パターンである。設定内容『認証ID/パスワード』は、拠点のユーザに払い出される認証ID及びパスワードであり、認証ID及びパスワードは、『128文字以内』の『半角英数字』で設定すべきことが、仕様として規定されている。なお、『認証ID/パスワード』の替わりにその他の『認証情報』であってもよい。また、登録タイミング『サービス開始直前』は、項番1の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番1の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
また、例えば、項番2の行を説明する。区分『アクセス制御』の設定パターンは、「VPN終端装置」に設定されるアクセス制御の設定パターンである。設定内容『フィルタリング(ACLなど)』は、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、ポート番号は、数字で設定すべきこと、数字は『1〜65535』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番2の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番2の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
また、例えば、項番3の行を説明する。区分『アドレス重複解決』の設定パターンは、「仮想ルータ」に設定されるNAT(又はNAPT)の設定パターンである。設定内容『NAT設定』は、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、ポート番号は、数字で設定すべきこと、数字は『1〜65535』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番3の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番3の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
なお、上記設定パターンはいずれも一例に過ぎず、VPN間接続の種別によって、設定内容、設定情報の登録タイミング、削除タイミング、設定内容の仕様などは異なってくると考えられる。すなわち、例えば、VPN間接続の種別が『L3VPN』であれば、VPN間接続先とVPN間接続元とのIPアドレスの組や、IPsecの動作設定情報(認証方式や暗号化アルゴリズム)、事前秘密共有鍵などの項目も、設定パターンに定型化され得る。また、例えば、VPN間接続の種別が『L2VPN』であれば、VPN間接続先とVPN間接続元とのL2などのIDなどの項目も、設定パターンに定型化され得る。このように、設定パターンは、VPN間接続の種別に応じて適切に定型化される。
図7に戻り、集合仮想ルータ間通信ルール記憶部123は、複数の集合仮想ルータ間における通信のルールとして、この通信用に予め確保されたIPアドレス帯を記憶する。図12は、集合仮想ルータ間通信ルール記憶部123を説明するための図である。図12に示すように、例えば、集合仮想ルータ間通信ルール記憶部123は、集合仮想ルータ間の通信用に予め確保されたIPアドレス帯として、『172.16.0.0』を記憶する。後述するように、集合仮想ルータ設定情報生成部134は、集合仮想ルータ間におけるパケット転送のためのルーティング情報を生成する際に、集合仮想ルータ間の通信用に予め確保されたIPアドレス帯に含まれるIPアドレスであって、使用中や予約済みのIPアドレス以外のIPアドレスを選択して用いる。
なお、集合仮想ルータ間通信ルール記憶部123が記憶するルールは、図12の例に限られない。例えば、集合仮想ルータ間通信ルール記憶部123は、アドレスの始点(例:10.10.10.0)とアドレスの終点(例:10.10.10.255)とを記憶してもよい。
図7に戻り、予約情報設定情報記憶部124は、予約情報及び設定情報を記憶する。予約情報設定情報記憶部124は、後述するVPN終端装置設定情報生成部133、集合仮想ルータ設定情報生成部134や、設定順序生成部135によって格納されることで、予約情報及び設定情報を記憶する。また、予約情報設定情報記憶部124が記憶する予約情報及び設定情報は、設定情報反映部136による処理に利用される。
図13は、予約情報設定情報記憶部124を説明するための図である。図13に示すように、例えば、予約情報設定情報記憶部124は、予約情報として、VPN間接続サービスを開始すべきサービス開始時刻と、VPN間接続サービスを終了すべきサービス終了時刻とを記憶する。また、予約情報設定情報記憶部124は、予約情報と対応付けて、設定情報の一群を記憶する。
ここで、設定情報の一群とは、集合仮想ルータのグループ情報や、各集合仮想ルータの設定情報、及び各VPN終端装置の設定情報などの組合せである。図13には、設定情報の一群として2つの例を挙げている。上の例において、設定情報の一群には、集合仮想ルータのグループ情報が含まれる。すなわち、上の例においては、接続対象となる複数のVPNが複数の集合仮想ルータに分散して接続された場合を想定する。また、下の例において、設定情報の一群には、集合仮想ルータのグループ情報は含まれない。すなわち、下の例においては、接続対象となる複数のVPNが1台の集合仮想ルータに接続された場合を想定する。また、下の例のようにオプション設定情報が生成された場合には、オプション設定情報も設定情報の一群に含まれる。なお、実施例2において、各設定情報は、後述するようにファイル形式で保存される。
ここで、図13においては、設定情報の一群をイメージで表現している。例えば、サービス開始時刻『2010/8/21 13:00』及びサービス終了時刻『2010/8/21 15:00』と対応付けて記憶されている設定情報の一群は、『VPN終端装置1』に接続されたVPNと、『VPN終端装置12』に接続されたVPNとを接続するVPN間接続に対応するものである。図5を用いて説明したように、『VPN終端装置1』は『集合仮想ルータ1』に接続され、『VPN終端装置12』は『集合仮想ルータ2』に接続される。また、『集合仮想ルータグループ情報』は、この複数の集合仮想ルータを管理上グルーピングするための情報である。このようなことから、予約情報設定情報記憶部124は、『集合仮想ルータグループ情報』に対応付けて、『集合仮想ルータ1の設定情報』と『VPN終端装置1の設定情報』との組合せ、及び、『集合仮想ルータ2の設定情報』と『VPN終端装置12の設定情報』との組合せを記憶する。
また、例えば、サービス開始時刻『2010/8/21 19:00』及びサービス終了時刻『2010/8/21 22:00』と対応付けて記憶されている設定情報の一群は、3つのVPNそれぞれを接続するVPN終端装置それぞれに設定すべき設定情報と、1つの集合仮想ルータに設定すべき設定情報との組合せの他に、オプション設定情報も含むことを示す。例えば、『VPN終端装置1の設定情報』の配下の設定情報として、『仮想ルータのオプション設定情報』と『VPN終端装置のオプション設定情報』とが記憶されることを示す。これは、3つのVPN終端装置それぞれの内の1つのVPN終端装置と仮想ルータとに関するオプション設定情報として、仮想ルータに対して設定されるオプション設定情報と、VPN終端装置に対して設定されるオプション設定情報とが存在することを示す。なお、接続対象となる複数のVPNが複数の集合仮想ルータに分散して接続された場合に、かつ、オプション設定情報が生成された場合には、図13に示す上の例においても同様に、オプション設定情報が設定情報の一群に含まれることになる。
図14は、集合仮想ルータグループ情報の一例を説明するための図である。図14に示すように、例えば、集合仮想ルータグループ情報は、『集合仮想ルータグループID』と、複数の『集合仮想ルータの識別情報』及び『仮想ルータID』の組合せとの対応付けである。同一の『集合仮想ルータグループID』に対応付けられた『集合仮想ルータの識別情報』及び『仮想ルータID』の組合せは、同一のVPN間接続に属することを示す。
また、設定情報それぞれは、例えば、図15に示すように、設定ファイルの形式で記憶される。図15は、設定情報の一例を説明するための図である。図15の(A)は、『集合仮想ルータ1』の設定ファイルの一例を示す。また、図15の(B)は、『集合仮想ルータ2』の設定ファイルの一例を示す。また、図15の(C)は、VPN終端装置の設定ファイルの一例を示す。
図7に戻り、アタッチメント記憶部125は、VPN終端装置ごと、集合仮想ルータ毎に、アタッチメントを記憶する。ここで、アタッチメントとは、設定情報をVPN終端装置や集合仮想ルータに対して反映するためのプログラム、及び、VPN終端装置や集合仮想ルータに対して反映された設定情報を削除するためのプログラムである。また、アタッチメントには、VPN間接続設定システムとVPN終端装置との間で用いられる通信プロトコルや、VPN間接続設定システムと集合仮想ルータとの間で用いられる通信プロトコルが規定される。なお、一般に、当該通信プロトコルには、VPN終端装置のベンダや集合仮想ルータのベンダによって規定される独自仕様の通信プロトコルが用いられる。アタッチメント記憶部125は、例えばVPN間接続設定システムの運用者に入力されることで、アタッチメントを事前に記憶する。また、アタッチメント記憶部125が記憶するアタッチメントは、後述する設定情報反映部136や設定情報削除部137による処理に利用される。
図16は、アタッチメント記憶部125を説明するための図である。図16に示すように、例えば、アタッチメント記憶部125は、VPN終端装置や集合仮想ルータの装置の識別情報とアタッチメントとを対応付けて記憶する。例えば、反映用のアタッチメントには、VPN終端装置や集合仮想ルータにログインするためのID/パスワードや、設定情報を格納すべきパスを指定し、指定したパスに設定情報を格納するためのコマンド、VPN終端装置や集合仮想ルータを再起動させるコマンドなどが記載される。なお、設定情報の反映には、格納して再起動することで反映する場合と、格納によって反映する場合とがある。また、反映用のアタッチメントには、VPN間接続設定システムとVPN終端装置との間で用いられる通信プロトコルや、VPN間接続設定システムと集合仮想ルータとの間で用いられる通信プロトコルが規定される。
また、例えば、削除用のアタッチメントには、VPN終端装置や集合仮想ルータにログインするためのID/パスワードや、設定情報が格納されているパスから設定情報を削除するためのコマンド、VPN終端装置や集合仮想ルータを再起動させるコマンドなどが記載される。また、削除用のアタッチメントには、VPN間接続設定システムとVPN終端装置との間で用いられる通信プロトコルや、VPN間接続設定システムと集合仮想ルータとの間で用いられる通信プロトコルが規定される。
図7に戻り、装置情報記憶部126は、VPN終端装置に事前設定されたVPN終端装置の事前設定情報、及び、集合仮想ルータに事前設定された集合仮想ルータの事前設定情報を記憶する。装置情報記憶部126は、例えばVPN間接続設定システムの運用者に入力されることで、VPN終端装置の事前設定情報及び集合仮想ルータの事前設定情報を事前に記憶する。また、装置情報記憶部126が記憶する事前設定情報は、後述する集合仮想ルータ設定情報生成部134による処理に利用される。
図17は、集合仮想ルータの事前設定情報を説明するための図である。図17に示すように、例えば、装置情報記憶部126は、集合仮想ルータの事前設定情報として、ホスト名(又はルータ名)及びパスワードを記憶する。「ホスト名」は、集合仮想ルータの名称であり、例えば『jpn100』といった名称である。「パスワード」は、集合仮想ルータにログインするためのパスワードであり、例えば『rootroot』といったパスワードである。
図18は、VPN終端装置の事前設定情報を説明するための図である。図18に示すように、例えば、装置情報記憶部126は、VPN終端装置の事前設定情報として、ホスト名(又はルータ名)、パスワード、VPN終端装置ID、VPN種別、集合仮想ルータ向けIPアドレス、サーバモードを記憶する。なお、図18の(A)は、『VPN終端装置1』の事前設定情報の一例であり、図18の(B)は、『VPN終端装置12』の事前設定情報の一例である。また、図18においては図示を省略するが、装置情報記憶部126は、事前設定情報として、例えば、サーバ側待ち受けIPアドレス、プロトコル、ポート番号なども記憶する。
「ホスト名」は、VPN終端装置の名称であり、例えば『jpn1』といった名称である。「パスワード」は、VPN終端装置にログインするためのパスワードであり、例えば『rootroot』といったパスワードである。「VPN終端装置ID」は、VPN終端装置を識別するIDであり、例えば『VPN終端装置1』といったIDである。「VPN種別」は、VPN種別であり、例えば『OpenVPN』といった種別である。
「集合仮想ルータ向けIPアドレス」は、拠点から送出されたパケットを集合仮想ルータに向けて送出する際に転送すべきIPアドレスであり、例えば『VPN終端装置1』の場合は『192.168.0.254』であり、例えば『VPN終端装置12』の場合は『192.168.2.254』である。なお、「集合仮想ルータ向けIPアドレス」として設定されたIPアドレスは、図5に示すように、集合仮想ルータ側のインタフェースに設定されたIPアドレスとなる。サーバモードは、VPN終端装置が選択したルーティング方式であり、例えばOpenVPNを用いる場合、ルーティング方式には『routing』と『bridge』とがある。
図7に戻り、制御部130は、VPN間接続設定システム100において実行される各種処理を制御する。具体的には、図7に示すように、制御部130は、接続要求受付部131と、装置特定部132と、VPN終端装置設定情報生成部133と、集合仮想ルータ設定情報生成部134と、設定順序生成部135と、設定情報反映部136と、設定情報削除部137とを有する。
接続要求受付部131は、VPN間接続要求を受け付ける。また、接続要求受付部131は、VPN間接続の制御に関する要求として、オプション要求を受け付ける。具体的には、接続要求受付部131は、例えばVPN間接続設定システムの運用者に入力されることで、VPN間接続要求やオプション要求の入力を受け付け、受け付けたVPN間接続要求やオプション要求を装置特定部132に送る。
図19及び図20は、VPN間接続要求の入力画面の一例を説明するための図である。例えば、接続要求受付部131は、まず、図19に示す入力画面を出力部112に出力する。図19に示す入力画面を説明する。入力画面には、VPN間接続先IDの入力を受け付ける枠が設けられる。例えば、図19に示すように、VPN間接続設定システムの運用者が、VPN間接続先IDとして『UserA−Telework』、『UserC−Office』を入力すると、接続要求受付部131は、『UserA−Telework』、『UserC−Office』によって識別されるVPN間をVPN間接続するVPN間接続要求を受け付ける。なお、例えば『More』のボタンがVPN間接続設定システムの運用者によって押下されると、接続要求受付部131は、入力画面上に、VPN間接続先IDの入力を受け付ける枠をさらに設け、3拠点以上のVPN間接続にも対応する。
また、入力画面には、予約時間の年月日及び時刻の入力を受け付ける枠が設けられる。例えば、図19に示すように、VPN間接続設定システムの運用者が、予約時間『2010.8.21 13:00』〜『2010.8.21 15:00』を入力すると、接続要求受付部131は、VPN間接続サービス開始時刻として『2010.8.21 13:00』、VPN間接続サービス終了時刻として『2010.8.21 15:00』を受け付ける。
また、入力画面には、設定パターン添付のチェックボックスと、添付する設定パターンが記憶されているパスを入力する入力枠とが設けられる。実施例2においては、後述するように、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、設定パターン記憶部122に記憶されている設定パターンを用いて設定情報を生成することを基本とするが、これに限られるものではなく、例えば、VPN間接続設定システムの運用者によって設定パターンが添付された場合には、添付された設定パターンを用いて設定情報を生成することもできる。
さて、図19に示す入力画面において、例えば『OK』ボタンがVPN間接続設定システムの運用者によって押下されると、接続要求受付部131は、VPN間接続要求の受け付けを終了する。一方、例えばVPN間接続先ID毎に設けられた『オプション』ボタンがVPN間接続設定システムの運用者によって押下されると、接続要求受付部131は、図20に示す入力画面を出力部112に出力する。
図20に示す入力画面を説明する。入力画面には、オプション要求のNATを受け付ける枠として、変換後IPアドレスの入力を受け付ける枠と、変換前IPアドレスの入力を受け付ける枠とが設けられる。なお、図20に示す入力画面では、NATに、StaticNATとNAPTとの種類があることを想定しており、チェックボックスによって選択できるようになっている。例えば、StaticNATのチェックボックスにVPN間接続設定システムの運用者によってチェックが入力されると、接続要求受付部131は、1つの変換前IPアドレスの入力を受け付ける。一方、例えばNAPTのチェックボックスにVPN間接続設定システムの運用者によってチェックが入力されると、接続要求受付部131は、複数の変換前IPアドレスの入力を受け付ける。
なお、例えば変換前IPアドレスの下に設けられた『More』のボタンがVPN間接続設定システムの運用者によって押下されると、接続要求受付部131は、入力画面上に、変換前IPアドレスの入力を受け付ける枠をさらに設け、3つ以上のIPアドレスの変換にも対応する。また、例えばNATの枠の下に設けられた『More』のボタンがVPN間接続設定システムの運用者によって押下されると、接続要求受付部131は、入力画面上にNATの枠をさらに設ける。
また、入力画面には、オプション要求のフィルタリングを受け付ける枠として、送信元IPアドレス及びポート番号の入力を受け付ける枠と、送信先IPアドレス及びポート番号の入力を受け付ける枠と、フィルタリングの動作である『ACCEPT』、『DROP』、『REJECT』のいずれか一つを選択するためのチェックボックスとが設けられる。例えば『ACCEPT』は、パケットの通過を許可し、『DROP』は、パケットを廃棄し、『REJECT』は、パケットの通過を拒否する。なお、例えばフィルタリングの枠の下に設けられた『More』のボタンがVPN間接続設定システムの運用者によって押下されると、接続要求受付部131は、入力画面上にフィルタリングの枠をさらに設ける。
なお、実施例2においては、VPN間接続設定システムの運用者が入力画面にVPN間接続要求を入力する手法を想定したが、開示の技術はこれに限られるものではない。例えば、インターネットなどのネットワークにユーザ用のWebサーバを設置し、ユーザ用の入力画面を配信してもよい。例えば、ユーザは、当該Webサーバにアクセスし、ユーザ用の入力画面にVPN間接続要求を入力する。すると、ユーザによって入力されたVPN間接続要求がネットワークを介してVPN間接続設定システムに送信され、接続要求受付部131が受け付ける。
装置特定部132は、接続要求受付部131からVPN間接続要求を受け取ると、接続要求受付部131によって受け付けられたVPN間接続要求に基づいて、設定情報の設定対象となるVPN終端装置であってVPN間接続要求にて指定されたVPNそれぞれを接続するVPN終端装置を特定する。また、装置特定部132は、接続要求受付部131によって受け付けられたVPN間接続要求に基づいて、設定情報の設定対象となる集合仮想ルータを特定する。具体的には、装置特定部132は、接続要求受付部131からVPN間接続要求としてVPN間接続先IDを受け取ると、VPN間接続先IDそれぞれを用いて接続情報記憶部121を参照し、VPN間接続先IDそれぞれに対応付けて記憶されている接続情報を用いて、VPN終端装置及び集合仮想ルータを特定する。
また、装置特定部132は、接続要求受付部131からオプション要求を受け取ると、オプション要求が受け付けられたVPN間接続IDに対応付けて特定されたVPN終端装置や集合仮想ルータを、オプション設定情報を設定すべきVPN終端装置や集合仮想ルータとしてさらに特定する。また、装置特定部132は、接続要求受付部131から受け取ったVPN間接続要求やオプション要求と、特定したVPN終端装置の識別情報や集合仮想ルータの識別情報とを、VPN終端装置設定情報生成部133、集合仮想ルータ設定情報生成部134、及び設定情報反映部136に送る。
例えば、図8を用いて説明すると、装置特定部132は、接続要求受付部131からVPN間接続先IDとして『UserA−Telework』及び『UserC−Office』を受け取ると、『UserA−Telework』及び『UserC−Office』を用いて接続情報記憶部121を参照する。
そして、装置特定部132は、例えば『UserA−Telework』に対応付けて記憶されているVPN終端装置『VPN終端装置1』を取得する。ここで、装置特定部132は、『UserA−Telework』を接続するVPN終端装置『VPN終端装置1』を特定したことになる。なお、上述したように、実施例2においては、VPN終端装置と集合仮想ルータとは予め対応付けられ、VPN終端装置が一意に特定されると、集合仮想ルータも一意に特定される関係にある。すなわち、図8に示す接続情報は、集合仮想ルータ毎に記憶されたものであるので、装置特定部132は、設定情報の設定対象となる集合仮想ルータ『集合仮想ルータ1』も特定したことになる。
また、同様に、装置特定部132は、『UserC−Office』についても、『UserC−Office』に対応付けて記憶されているVPN終端装置『VPN終端装置12』を取得する。装置特定部132は、『UserC−Office』を接続するVPN終端装置『VPN終端装置12』を特定したことになる。また、『VPN終端装置12』は、『集合仮想ルータ2』に接続されている。このため、装置特定部132は、設定情報の設定対象となる集合仮想ルータ『集合仮想ルータ2』も特定したことになる。
VPN終端装置設定情報生成部133は、装置特定部132によって特定されたVPN終端装置に設定すべき設定情報を生成する。また、集合仮想ルータ設定情報生成部134は、装置特定部132によって特定された集合仮想ルータに設定すべき設定情報を生成する。また、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、装置特定部132によって特定されたVPN終端装置や集合仮想ルータに応じてオプション設定情報を生成する。また、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、生成した設定情報の一群を予約情報と対応付けて予約情報設定情報記憶部124に格納する。
ここで、実施例2における集合仮想ルータ設定情報生成部134は、接続要求受付部131によって受け付けられたVPN間接続要求に基づいて、VPN間接続要求にて指定されたVPNそれぞれのVPN間接続の種別と対応付けられた設定パターンを選択する。具体的には、集合仮想ルータ設定情報生成部134は、接続要求受付部131によって受け付けられたVPN間接続先IDを用いて接続情報記憶部121を参照し、VPN間接続先IDと対応付けて記憶されている集合仮想ルータの設定パターンの識別情報を取得する。そして、集合仮想ルータ設定情報生成部134は、集合仮想ルータの設定パターンの識別情報を用いて設定パターン記憶部122を参照し、設定パターン記憶部122に記憶された集合仮想ルータの設定パターンの中から、設定情報の生成に利用すべき集合仮想ルータの設定パターンを選択する。そして、集合仮想ルータ設定情報生成部134は、選択した設定パターンを用いて設定情報を生成する。
また、VPN終端装置設定情報生成部133は、接続要求受付部131によって受け付けられたVPN間接続先IDを用いて接続情報記憶部121を参照し、VPN間接続先IDそれぞれと対応付けて記憶されているVPN終端装置の設定パターンの識別情報を取得する。そして、VPN終端装置設定情報生成部133は、VPN終端装置の設定パターンの識別情報それぞれを用いて設定パターン記憶部122を参照し、設定パターン記憶部122に記憶されたVPN終端装置の設定パターンの中から設定情報の生成に利用すべきVPN終端装置の設定パターンを選択する。そして、VPN終端装置設定情報生成部133は、選択した設定パターンを用いて設定情報を生成する。
なお、上述したように、実施例2において、設定情報それぞれは、例えば、図15に示すように、設定ファイルの形式で、予約情報設定情報記憶部124に記憶される。すなわち、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、生成した設定情報それぞれを、設定ファイルの形式で、予約情報設定情報記憶部124に格納する。もっとも、開示の技術はこれに限られるものではなく、生成した設定情報をデータベースに格納する手法でもよい。あるいは、生成した設定情報をファイル形式で記憶するとともにデータベースにも格納する手法でもよい。これらの手法によれば、設定情報は、検索や参照に適したデータベースに格納されるので、例えば、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、設定情報を生成する際に、既に生成された設定情報を参照して重複を判定するが、その都度ファイルオープンの処理を実行する必要がなく、処理が効率的になる。
[集合仮想ルータの設定情報の生成]
まず、集合仮想ルータの設定情報の生成について説明する。例えば、集合仮想ルータ設定情報生成部134は、まず『集合仮想ルータ1』の設定情報を生成し、次に『集合仮想ルータ2』の設定情報を生成する。なお、設定情報の生成順序は、任意に変更することができる。
まず、設定情報の生成について説明する前に、設定情報の内容について具体例を用いて説明する。図15の(A)において、「ip vrf vrf1」及び「rd 100:10」の2行は、仮想ルータの構築を宣言するコマンド文である。「ip vrf vrf1」の行は、仮想ルータ名『vrf1』を指定する。「rd 100:10」の行は、仮想ルータID『100:10』を指定する。
また、図15の(A)において、「interface GigabitEthernet5/0/0」、「ip vrf forwarding vrf1」、及び「ip address 192.168.0.10 255.255.255.0」の3行は、インタフェースを設定するコマンド文である。「interface GigabitEthernet5/0/0」の行は、どの物理ポートに対応するインタフェースに対する設定であるかを指定する。「ip vrf forwarding vrf1」の行は、インタフェースが属する仮想ルータ名『vrf1』を指定する。「ip address 192.168.0.10 255.255.255.0」の行は、このインタフェースに設定するIPアドレスを指定する。
また、図15の(A)において、「ip route vrf vrf1 10.16.0.0 255.255.255.0 192.168.0.254 GigabitEthernet5/0/0」の行は、ルーティングを設定するコマンド文である。図5を参照するとわかるように、『A社テレワーク』宛のパケットは、『VPN終端装置1』の集合仮想ルータ向けIPアドレス(192.168.0.254)に向けて転送することが設定されている。
また、図15の(A)において、「interface GigabitEthernet1/0/0」、「ip vrf forwarding vrf1」、及び「ip address 172.16.0.11 255.255.255.255」の3行は、インタフェースを設定するコマンド文である。「interface GigabitEthernet1/0/0」の行は、どの物理ポートに対応するインタフェースに対する設定であるかを指定する。「ip vrf forwarding vrf1」の行は、インタフェースが属する仮想ルータ名『vrf1』を指定する。「ip address 172.16.0.11 255.255.255.255」の行は、このインタフェースに設定するIPアドレスを指定する。
また、図15の(A)において、「ip route vrf vrf1 10.19.0.0 255.255.255.0 172.16.0.12 GigabitEthernet1/0/0」の行は、ルーティングを設定するコマンド文である。図5を参照するとわかるように、『C社本社』宛のパケットは、『集合仮想ルータ2』の集合仮想ルータ1向けのIPアドレス(172.16.0.12)に向けて転送することが設定されている。
このように、設定情報は、あるVPN間接続を実現するために具体的に必要となる各種情報(仮想ルータ名、仮想ルータID、インタフェース、IPアドレスなど)が、所定の規則及びコマンド文に従って記載されたものである。すなわち、集合仮想ルータ設定情報生成部134は、設定対象となる集合仮想ルータの設定パターンを特定し、設定情報を生成するための所定の規則やコマンド文を取得する。また、集合仮想ルータ設定情報生成部134は、予め登録された接続情報や、予約された設定情報などから、あるVPN間接続を実現するために具体的に必要となる各種情報を決定する。そして、集合仮想ルータ設定情報生成部134は、決定した各種情報を、取得した所定の規則やコマンド文を用いて記載することで、設定情報を生成する。以下、『集合仮想ルータ1』の設定情報の生成処理を例に挙げて説明する。
まず、集合仮想ルータ設定情報生成部134は、接続要求受付部131によって受け付けられたVPN間接続先IDを装置特定部132から受け取ると、設定パターン記憶部122を参照し、該当する設定パターンを取得する。例えば、集合仮想ルータ設定情報生成部134は、『集合仮想ルータ1』に対応する設定パターンとして、図10に示す設定パターンを取得する。
次に、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に「仮想ルータ名」として使用されている(又は予約されている)ものと重複しない「仮想ルータ名」を決定する。この時、集合仮想ルータ設定情報生成部134は、図10に示す設定パターンを参照し、『半角英数字』の仕様に従って「仮想ルータ名」を決定する。例えば、集合仮想ルータ設定情報生成部134は、仮想ルータ名『vrf1』を決定する。
続いて、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に「仮想ルータID」として使用されている(又は予約されている)ものと重複しない「仮想ルータID」を決定する。この時、集合仮想ルータ設定情報生成部134は、図10に示す設定パターンを参照し、『16ビット数値:32ビット数値』の仕様に従って「仮想ルータID」を決定する。例えば、集合仮想ルータ設定情報生成部134は、仮想ルータID『100:10』を決定する。
続いて、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に使用されている(又は予約されている)ものと重複しない「インタフェース」及びそのインタフェースに設定する「IPアドレス」を決定する。なお、集合仮想ルータ設定情報生成部134は、「インタフェース」及び「IPアドレス」として、他の集合仮想ルータとの通信用のものと、VPN終端装置との通信用のものとを決定する。
ここで、集合仮想ルータ設定情報生成部134は、物理ポート番号とインタフェースとは1対1の関係にあるので、接続情報記憶部121を参照し、『集合仮想ルータ2』が接続されている物理ポートや、『VPN終端装置1』が接続されている物理ポートを特定する。そして、集合仮想ルータ設定情報生成部134は、『集合仮想ルータ2』が接続されている物理ポートであって、既に使用されている(又は予約されている)ものと重複しない物理ポートを、VPN間接続に利用する「インタフェース」として決定する。また、集合仮想ルータ設定情報生成部134は、『VPN終端装置1』が接続されている物理ポートを、VPN間接続に利用する「インタフェース」として決定する。
また、集合仮想ルータ設定情報生成部134は、他の集合仮想ルータとの通信用の「IPアドレス」を決定する際には、集合仮想ルータ間通信ルール記憶部123を参照し、VPN間接続の通信用に予め確保されたIPアドレス帯を取得する。そして、集合仮想ルータ設定情報生成部134は、予め確保されたIPアドレス帯に含まれるIPアドレスであって、既に使用されている(又は予約されている)ものと重複しないIPアドレスを、VPN間接続に利用する「IPアドレス」として決定する。なお、『集合仮想ルータ2』側の設定情報の生成において「IPアドレス」を選択する際には、『集合仮想ルータ1』側の設定情報の生成において選択された「IPアドレス」との間で通信することが可能になるように選択する必要がある。このため、例えば、集合仮想ルータ設定情報生成部134は、VPN間接続に利用する「IPアドレス」を決定する際に、2つの連番の「IPアドレス」を利用できるか否かを判断してもよい。
また、集合仮想ルータ設定情報生成部134は、VPN終端装置との通信用の「IPアドレス」を決定する際には、予め確保されたIPアドレス帯に含まれるIPアドレスであって、既に使用されている(又は予約されている)ものと重複しないIPアドレスを、VPN間接続に利用する「IPアドレス」として決定する。また、集合仮想ルータ設定情報生成部134は、この「IPアドレス」を決定する際には、『VPN終端装置1』の集合仮想ルータ向けIPアドレス『192.168.0.254』との間で通信することが可能になるように決定する必要がある。このため、この「IPアドレス」の決定は、『VPN終端装置1』の集合仮想ルータ向けIPアドレス『192.168.0.254』を取得後に行う方が効率的である。
なお、集合仮想ルータ設定情報生成部134は、図10に示す設定パターンを参照し、『I/Fの種別 数字/数字/数字』の仕様に従って「インタフェース」を決定する。また、集合仮想ルータ設定情報生成部134は、図10に示す設定パターンを参照し、『数字.数字.数字.数字』の仕様に従って「IPアドレス」を決定する。
例えば、集合仮想ルータ設定情報生成部134は、『VPN終端装置1』との通信用の「インタフェース」として、『GigabitEthernet(登録商標)5/0/0』を決定する。また、例えば、集合仮想ルータ設定情報生成部134は、『集合仮想ルータ2』との通信用の「インタフェース」として、『GigabitEthernet(登録商標)1/0/0』を決定する。また、例えば、集合仮想ルータ設定情報生成部134は、『VPN終端装置1』との通信用の「IPアドレス」として、『192.168.0.10 255.255.255.0』を決定する。また、例えば、集合仮想ルータ設定情報生成部134は、『集合仮想ルータ2』との通信用の「IPアドレス」として、『172.16.0.11 255.255.255.255』を決定する。
次に、集合仮想ルータ設定情報生成部134は、装置特定部132から受け取ったVPN終端装置の識別情報を用いて装置情報記憶部126を参照し、集合仮想ルータ向けIPアドレスを取得する。例えば、集合仮想ルータ設定情報生成部134は、VPN終端装置の識別情報『VPN終端装置1』を用いて装置情報記憶部126を参照し、図18の(A)に示す『VPN終端装置1』の事前設定情報に記載の集合仮想ルータ向けIPアドレス『192.168.0.254』を取得する。
次に、集合仮想ルータ設定情報生成部134は、接続要求受付部131によって受け付けられたVPN間接続先IDを用いて接続情報記憶部121を参照し、VPN間接続先IDに対応付けて記憶されている利用IPアドレス帯を取得する。例えば、集合仮想ルータ設定情報生成部134は、VPN間接続先ID『UserA−Telework』を用いて図8に示す接続情報記憶部121を参照し、VPN間接続先ID『UserA−Telework』と対応付けて記憶されている利用IPアドレス帯『10.16.0.0/24』を取得する。
こうして、集合仮想ルータ設定情報生成部134は、予め登録された接続情報や、予約された設定情報などから、あるVPN間接続を実現するために具体的に必要となる各種情報を決定することができた。そこで、次に、集合仮想ルータ設定情報生成部134は、決定した各種情報を、取得した所定の規則やコマンド文を用いて記載することで、設定情報を生成する。すなわち、集合仮想ルータ設定情報生成部134は、『集合仮想ルータ1』に応じた所定のコマンド文を用いて、仮想ルータの構築、インタフェースの設定、ルーティングの設定をファイルに記載し、集合仮想ルータの設定情報をファイル形式で保存する。
なお、図10には例示しなかったが、設定パターン記憶部122は、設定パターンの一つとして、設定情報を集合仮想ルータに反映するための所定のコマンド文も集合仮想ルータ毎に記憶するので、集合仮想ルータ設定情報生成部134は、設定パターン記憶部122からコマンド文を取得し、取得したコマンド文を用いてファイルに記載する。このようにして、例えば図15の(A)に示すような設定情報が生成される。
また、集合仮想ルータ設定情報生成部134は、『集合仮想ルータ2』に設定すべき設定情報についても上述した図15の(A)に示す設定情報と同様に生成し、例えば図15の(B)に示すような設定情報を生成する。ここで、図15の(B)に示すように、『集合仮想ルータ2』に設定すべき設定情報においては、仮想ルータ名『vrf2』や仮想ルータID『200:10』が用いられており、『集合仮想ルータ1』に設定すべき設定情報で用いられている仮想ルータ名『vrf1』や仮想ルータID『100:10』とは異なる。これは、この『集合仮想ルータ1』や『集合仮想ルータ2』の機器の仕様などに従って異なる仮想ルータ名や仮想ルータIDが割り当てられているのであり、設定パターン記憶部122は、このような仕様についても設定パターンとして記憶する。そして、集合仮想ルータ設定情報生成部134は、設定パターン記憶部122を参照し、このような仕様に従って、仮想ルータ名や仮想ルータIDを決定する。
ところで、集合仮想ルータ設定情報生成部134は、集合仮想ルータグループ情報も生成する。例えば、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に使用されている(又は予約されている)ものと重複しない「集合仮想ルータグループID」を決定する。そして、集合仮想ルータ設定情報生成部134は、「集合仮想ルータグループID」と、複数の「集合仮想ルータの識別情報」及び「仮想ルータID」の組合せとの対応付けを生成する。
その後、VPN終端装置設定情報生成部133がVPN終端装置の設定情報を生成した後に、VPN終端装置設定情報生成部133が、集合仮想ルータ設定情報生成部134によって生成された設定情報を含む設定情報の一群を、予約情報設定情報記憶部124に格納する。
[VPN終端装置の設定情報の生成]
次に、VPN終端装置の設定情報の生成について説明する。VPN終端装置設定情報生成部133は、接続要求受付部131によって受け付けられたVPN間接続先IDを受け取ると、上述したように設定パターン記憶部122を参照し、該当する設定パターンを取得する。例えば、VPN終端装置設定情報生成部133は、図11に示す設定パターンを取得する。この設定パターンは、VPN終端装置の種別や、VPN種別、VPN終端装置が採用する認証方法などのVPN間接続の種別に従って予め適切に選択され、VPN間接続設定システムの運用者などによって予め設定パターン記憶部122に設定されたものである。
次に、VPN終端装置設定情報生成部133は、予約情報設定情報記憶部124に記憶されたVPN終端装置の設定情報を参照し、既に「認証ID」として使用されている(又は予約されている)ものと重複しない「認証ID」を決定する。この時、VPN終端装置設定情報生成部133は、図11に示す設定パターンを参照し、『128文字以内の半角英数字』の仕様に従って「認証ID」を決定する。例えば、VPN終端装置設定情報生成部133は、認証ID『user1234』を決定する。
続いて、VPN終端装置設定情報生成部133は、「パスワード」をランダムに生成する。この時、VPN終端装置設定情報生成部133は、図11に示す設定パターンを参照し、『128文字以内の半角英数字』の仕様に従って「パスワード」をランダムに生成する。例えば、VPN終端装置設定情報生成部133は、パスワード『rtgb4932』を生成する。
次に、VPN終端装置設定情報生成部133は、VPN終端装置に応じた所定のコマンド文を用いて、認証ID、パスワードをファイルに記載し、VPN終端装置の設定情報をファイル形式で保存する。なお、図11には示さなかったが、設定パターン記憶部122は、設定パターンの一つとして、設定情報をVPN終端装置に反映するための所定のコマンド文もVPN終端装置毎に記憶するので、VPN終端装置設定情報生成部133は、設定パターン記憶部122からコマンド文を取得し、取得したコマンド文を用いてファイルに記載する。
例えば、VPN終端装置設定情報生成部133は、図15の(C)に示すように、図11に示す仕様に従って決定した認証ID『user1234』、図11に示す仕様に従って生成したパスワード『rtgb4932』を、所定のコマンド文を用いて『add user user1234 rtgb4932』と記載する。そして、VPN終端装置設定情報生成部133は、図15の(C)のように記載したファイルをVPN終端装置の設定情報として保存する。なお、VPN終端装置設定情報生成部133は、接続要求受付部131によって受け付けられた他のVPN間接続IDについても同様に、設定情報を生成する。
なお、集合仮想ルータ設定情報生成部134及びVPN終端装置設定情報生成部133は、装置特定部132からオプション要求を受け取ると、設定情報と同様に、設定パターン記憶部122を参照し、VPN終端装置や集合仮想ルータに応じてオプション設定情報を生成する。
また、VPN終端装置設定情報生成部133は、装置特定部132から受け取ったVPN間接続要求の予約時間を用いて予約情報設定情報記憶部124を参照し、予約に空きがあるか否かを判定する。なお、VPN終端装置設定情報生成部133は、単に予約時間が重複しているか否かのみではなく、設定情報を併せて参照し、VPN終端装置や集合仮想ルータに重複して設定することが可能であるか否かを判定する。予約に空きがあると判定し、かつ、設定することが可能であると判定すると、VPN終端装置設定情報生成部133は、予約情報設定情報記憶部124に予約時間と設定情報の一群とを格納する。
上述した「予約に空きがあるか否かの判定」についてさらに説明する。例えば、VPN終端装置設定情報生成部133は、VPN終端装置や集合仮想ルータのリソースや、予約状況、現在の使用状況などに応じて、予約に空きがあるか否かを判定する。「リソース」としては、例えば、集合仮想ルータが生成できる仮想ルータの上限数や、各VPN終端装置が同時にVPN間接続できる上限数などが考えられる。また、「予約情報」としては、例えば、どのVPN終端装置に何本のVPN間接続が予約されているか、どの集合仮想ルータにいくつの仮想ルータが予約されているか、などの情報が考えられる。また、「使用状況」としては、例えば、どのVPN終端装置で何本のVPNが接続中であるか、どの集合仮想ルータでいくつの仮想ルータが稼動中であるか、などの情報が考えられる。
上記情報の内、「リソース」に関する情報は、例えば装置情報記憶部126に、装置の仕様に関する情報として格納することができる。また、上記情報の内、「予約情報」や「使用状況」は、予約情報設定情報記憶部124に記憶された設定情報の一群を参照することで得ることができる。したがって、VPN終端装置設定情報生成部133は、装置特定部132から受け取ったVPN間接続要求を用いて予約情報設定情報記憶部124や装置情報記憶部126を参照し、VPN終端装置や集合仮想ルータのリソースや、予約状況、現在の使用状況その他の管理情報と、現在要求されている予約内容とを踏まえて、予約に空きがあるか否かを判定する。例えば、要求された予約時間が予約済みの時間と重複していたとしても、VPN終端装置や集合仮想ルータのリソースに空きがあれば、予約可能となる。
設定順序生成部135は、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134によって生成された各設定情報がVPN終端装置及び集合仮想ルータに対して反映される順序を規定する設定順序情報を生成する。具体的には、実施例2における設定順序生成部135は、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134によって生成された順序で設定情報が反映されるように、設定順序情報を生成する。そして、設定順序生成部135は、生成した設定順序情報を予約情報設定情報記憶部124に格納する。ここで、実施例2においては、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、集合仮想ルータそれぞれの設定情報、VPN終端装置それぞれの設定情報の順序で設定情報を生成した。このため、実施例2において、設定順序生成部135は、集合仮想ルータそれぞれの設定情報、VPN終端装置それぞれの設定情報の順序で設定情報が反映されるように、設定順序情報を生成する。
ここで、一般に、設定情報の反映は、ネットワーク構成において上位の装置から行われる。この点、実施例2においても、設定情報が生成された順序で反映される結果、集合仮想ルータの設定情報がVPN終端装置の設定情報よりも先に反映されることになる。
実施例2において、設定情報の一群が生成された順序は、例えば、集合仮想ルータ1の設定情報、集合仮想ルータ2の設定情報、VPN終端装置1の設定情報、VPN終端装置12の設定情報である。したがって、設定順序生成部135は、この順序で設定情報が反映されるように、設定順序情報を生成する。仮に、設定情報の一群が生成された順序が、例えば、集合仮想ルータ1の設定情報、VPN終端装置1の設定情報、VPN終端装置3の設定情報、VPN終端装置4の設定情報、VPN終端装置1との間で構築されるVPNについて集合仮想ルータに設定されるオプション設定情報、VPN終端装置3との間で構築されるVPNについて集合仮想ルータに設定されるオプション設定情報、VPN終端装置4との間で構築されるVPNについて集合仮想ルータに設定されるオプション設定情報、VPN終端装置1との間で構築されるVPNについてVPN終端装置1に設定されるオプション設定情報、VPN終端装置3との間で構築されるVPNについてVPN終端装置3に設定されるオプション設定情報、VPN終端装置4との間で構築されるVPNについてVPN終端装置4に設定されるオプション設定情報である場合には、設定順序生成部135は、この順序で設定情報が反映されるように、設定順序情報を生成する。
また、設定順序情報の作成について具体的に例を挙げて説明する。例えば、設定順序生成部135は、予約情報設定情報記憶部124を参照し、設定情報の一群を取得する。次に、設定順序生成部135は、集合仮想ルータの設定情報、VPN終端装置それぞれの設定情報、オプションの設定情報の順序で各設定情報のファイルが読み出されるように、各設定情報のファイルの末尾に、次の設定情報のファイルを読み出すコマンド文を記載する。例えば、設定順序生成部135は、集合仮想ルータの設定情報のファイルの末尾に、VPN終端装置1の設定情報のファイルを読み出すコマンド文を記載する。また、例えば、設定順序生成部135は、VPN終端装置1の設定情報のファイルの末尾に、VPN終端装置3の設定情報のファイルを読み出すコマンド文を記載する。同様に、設定順序生成部135は、VPN終端装置3の設定情報のファイルの末尾に、VPN終端装置4の設定情報のファイルを読み出すコマンド文を記載する。また、オプション設定情報がある場合には、例えば、設定順序生成部135は、VPN終端装置4の設定情報のファイルの末尾に、オプション設定情報のファイルを読み出すコマンド文を記載する。
なお、設定順序生成部135は、設定順序の逆順を示す情報を別途ファイルとして作成する。このファイルは、設定情報削除部137によって参照される。また、設定順序生成部135による設定順序情報の生成は、上述した手法に限られるものではない。例えば、設定順序生成部135は、設定順序と設定情報のファイル名とを対応付けた設定順序情報のファイル、及び、設定順序の逆順と設定情報のファイル名とを対応付けたファイルを新たに作成してもよい。この場合には、設定情報反映部136や設定情報削除部137は、これらのファイルを参照しながら設定情報を反映したり、削除したりすることになる。
設定情報反映部136は、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134によって設定された設定情報を、設定順序生成部135によって生成された設定順序情報に従って、装置特定部132によって特定されたVPN終端装置や集合仮想ルータに対して反映する。具体的には、設定情報反映部136は、タイマやポーリングなどによって定期的に予約情報設定情報記憶部124を参照し、VPN間接続サービスを開始する時刻であるか否かを判定する。サービス開始時刻であると判定すると、設定情報反映部136は、予約情報設定情報記憶部124から設定情報の一群を取得する。
また、設定情報反映部136は、アタッチメント記憶部125を参照し、該当するVPN終端装置や集合仮想ルータのアタッチメント(反映用)を取得する。そして、設定情報反映部136は、設定順序情報に従って、また、該当するアタッチメントを用いて、該当するVPN終端装置や集合仮想ルータに設定情報を送信する。この時、設定情報反映部136は、VPN終端装置や集合仮想ルータとの間で送信完了確認もしくは反映完了確認を行いながら、確認後に初めて、設定順序情報の次の装置に対して設定情報を送信する手法を用いてもよい。また、設定情報反映部136は、各VPN終端装置や集合仮想ルータとの間で送信完了確認もしくは反映完了確認を行うことなく、設定順序情報に従って一方的に設定情報を送信する手法を用いてもよい。
なお、実施例2においては、設定情報反映部136は、VPN間接続サービスを開始する時刻に設定情報の反映を開始するものとして説明するが、開示の技術はこれに限られるものではない。VPN間接続サービスを開始する時刻として予約を受け付けた時刻には即時にVPN間接続が実現されるように、例えば、設定情報の反映に要する時間を予め予測し、予約情報設定情報記憶部124に記憶された『サービス開始時刻』から、予測した当該時間を差し引いた時刻を、設定情報の反映を開始する時刻としてもよい。例えば、VPN終端装置設定情報生成部133が、予約情報設定情報記憶部124に予約時間と設定情報の一群とを格納する際に、設定情報の反映に要する時間を差し引いた時刻も併せて格納し、設定情報反映部136が、当該時刻であるか否かを判定して設定情報の反映を開始してもよい。
設定情報削除部137は、VPN終端装置や集合仮想ルータに対して反映された設定情報を削除する。具体的には、設定情報削除部137は、タイマやポーリングなどによって定期的に予約情報設定情報記憶部124を参照し、VPN間接続サービスを終了する時刻であるか否かを判定する。サービス終了時刻であると判定すると、設定情報削除部137は、予約情報設定情報記憶部124から設定順序情報を取得する。
また、設定情報削除部137は、アタッチメント記憶部125を参照し、該当するVPN終端装置や集合仮想ルータのアタッチメント(削除用)を取得する。そして、設定情報反映部136は、設定順序情報の逆順に従って、また、該当するアタッチメントを用いて、該当するVPN終端装置や集合仮想ルータから設定情報を削除する。なお、実施例2における設定情報削除部137は、予約情報設定情報記憶部124に記憶されている予約情報なども削除する。また、この時、例えば、設定情報削除部137は、VPN終端装置や集合仮想ルータの設定情報、予約情報設定情報記憶部124に記憶されている予約情報を同時に削除してもよい。また、例えば、設定情報削除部137は、VPN終端装置や集合仮想ルータの設定情報を先に削除してから、予約情報設定情報記憶部124に記憶されている予約情報を削除してもよい。
なお、例えば、「設定情報を一旦反映したがその後フィルタリングのエントリを追加する必要が生じた」といったように、設定情報の反映後に設定情報やオプション設定情報を変更する必要が生じることも起こり得る。このような場合、実施例2におけるVPN間接続設定システムは、変更要求を受け付けると、当該変更要求が、どの装置に対する何の設定情報の変更であるのかに応じて、変更を反映すべき設定情報を特定する。次に、設定情報削除部137が、設定順序の逆順を示す情報が記載されたファイルを参照しながら、設定順序情報の逆順に従って、特定した設定情報まで削除する。続いて、設定情報反映部136が、特定した設定情報に替えて、別途、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134によって生成された変更後のオプション設定情報を反映する。
また、設定情報反映部136は、設定情報削除部137によって削除されたその他の設定情報については、再度、反映する。すなわち、設定情報削除部137によって削除されたその他の設定情報とは、変更を反映すべき設定情報ではなかったが、設定順序の逆順に従って設定情報が削除された結果、併せて削除されてしまった設定情報のことである。このような設定情報は、削除された設定情報を再度そのまま反映すればよい。また、反映は、元々の設定順序に従って行われればよい。この元々の設定順序が、例えば、ファイルの末尾に記載されたコマンド文によって規定されている場合には、設定情報削除部137は、各設定情報のファイルの末尾に記載されたコマンド文を読み出すなどして、設定順序情報に従って、再度、反映する。このような手法によれば、設定情報を変更する必要が生じた場合に、全ての設定情報を一旦削除し、全ての設定情報を反映し直す手法よりも、効率的に変更することが可能になる。
[実施例2に係るVPN間接続設定システム100による処理手順]
続いて、実施例2に係るVPN間接続設定システム100による処理手順を説明する。図21は、実施例2に係るVPN間接続設定システム100による処理手順を示すフローチャートである。
[VPN間接続設定システム100による処理手順全体]
図21に示すように、実施例2に係るVPN間接続設定システム100において、まず、接続要求受付部131が、VPN間接続要求を受け付けたか否かを判定する(ステップS201)。受け付けていないと判定した場合には(ステップS201否定)、接続要求受付部131は、受け付けたか否かを判定する処理に戻る。
一方、受け付けたと判定した場合には(ステップS201肯定)、装置特定部132が、VPN間接続要求に基づいてVPN終端装置及び集合仮想ルータを特定する(ステップS202)。
そして、まず、集合仮想ルータ設定情報生成部134が、装置特定部132によって特定された集合仮想ルータに設定すべき設定情報を生成する(ステップS203)。なお、ステップS203における処理手順の詳細は、図22及び23を用いて後述する。続いて、集合仮想ルータ設定情報生成部134は、集合仮想ルータグループ情報を生成する(ステップS204)。
次に、VPN終端装置設定情報生成部133が、装置特定部132によって特定されたVPN終端装置に設定すべき設定情報を生成する(ステップS205)。なお、ステップS205における処理手順の詳細は、図24を用いて後述する。
そして、集合仮想ルータ設定情報生成部134及びVPN終端装置設定情報生成部133は、オプション要求を受け取っていたか否かを判定し(ステップS206)、受け取っていた場合には(ステップS206肯定)、オプション設定情報を生成する(ステップS207)。なお、受け取っていない場合には(ステップS206否定)、集合仮想ルータ設定情報生成部134及びVPN終端装置設定情報生成部133は、ステップS207の処理を行うことなくステップS208に移行する。
続いて、集合仮想ルータ設定情報生成部134及びVPN終端装置設定情報生成部133は、ステップS203において生成した集合仮想ルータの設定情報、ステップS204において生成した集合仮想ルータグループ情報、ステップS205において生成したVPN終端装置の設定情報、ステップS207において生成したオプションの設定情報を、予約時間とともに予約情報設定情報記憶部124に格納する(ステップS208)。
次に、設定順序生成部135が、設定順序情報を生成し(ステップS209)、生成した設定順序情報を予約情報設定情報記憶部124に格納する(ステップS210)。
[集合仮想ルータの設定情報の生成処理]
図22及び23は、集合仮想ルータの設定情報の生成処理を示すフローチャートである。まず、集合仮想ルータ設定情報生成部134は、接続要求受付部131によって受け付けられたVPN間接続先IDを用いて接続情報記憶部121を参照し、VPN間接続先IDと対応付けて記憶されている集合仮想ルータの設定パターンの識別情報を取得する(ステップS203−1)。
次に、集合仮想ルータ設定情報生成部134は、集合仮想ルータの設定パターンの識別情報を用いて設定パターン記憶部122を参照し、設定情報の生成に利用すべき集合仮想ルータの設定パターンを取得する(ステップS203−2)。
また、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に「仮想ルータ名」として使用されている(又は予約されている)ものと重複しない「仮想ルータ名」を決定する(ステップS203−3)。
次に、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に「仮想ルータID」として使用されている(又は予約されている)ものと重複しない「仮想ルータID」を決定する(ステップS203−4)。
次に、集合仮想ルータ設定情報生成部134は、予約情報設定情報記憶部124に記憶された集合仮想ルータの設定情報を参照し、既に使用されているもの(又は予約されている)と重複しない「インタフェース」及びそのインタフェースに設定する「IPアドレス」を決定する(ステップS203−5)。なお、集合仮想ルータ設定情報生成部134は、「インタフェース」及び「IPアドレス」を決定する際には、接続情報記憶部121に記憶された接続情報や、集合仮想ルータ間通信ルール記憶部123も参照する。
続いて、集合仮想ルータ設定情報生成部134は、装置特定部132によって特定されたVPN終端装置の識別情報を用いて装置情報記憶部126を参照し、集合仮想ルータ向けIPアドレスを取得する(ステップS203−6)。
次に、集合仮想ルータ設定情報生成部134は、接続要求受付部131によって受け付けられたVPN間接続先IDを用いて接続情報記憶部121を参照し、VPN間接続先IDに対応付けて記憶されている利用IPアドレス帯を取得する(ステップS203−7)。
そして、集合仮想ルータ設定情報生成部134は、集合仮想ルータに応じた所定のコマンド文を用いて、仮想ルータの構築、インタフェースの設定、ルーティングの設定をファイルに記載し(ステップS203−8)、集合仮想ルータの設定情報をファイル形式で保存する(ステップS203−9)。
なお、集合仮想ルータ設定情報生成部134は、他に設定すべき集合仮想ルータがあるか否かを判定し(ステップS203−10)、ある場合には(ステップS203−10肯定)、再び、ステップS203−1の処理に戻る。一方、ない場合には(ステップS203−10否定)、集合仮想ルータ設定情報生成部134は、処理を終了する。
[VPN終端装置の設定情報の生成処理]
図24は、VPN終端装置の設定情報の生成処理を示すフローチャートである。まず、VPN終端装置設定情報生成部133は、接続要求受付部131によって受け付けられたVPN間接続先IDを用いて接続情報記憶部121を参照し、VPN間接続先IDと対応付けて記憶されているVPN終端装置の設定パターンの識別情報を取得する(ステップS204−1)。
次に、VPN終端装置設定情報生成部133は、VPN終端装置の設定パターンの識別情報を用いて設定パターン記憶部122を参照し、設定情報の生成に利用すべきVPN終端装置の設定パターンを取得する(ステップS204−2)。
続いて、VPN終端装置設定情報生成部133は、予約情報設定情報記憶部124に記憶されたVPN終端装置の設定情報を参照し、既に「認証ID」として使用されている(又は予約されている)ものと重複しない「認証ID」を決定する(ステップS204−3)。
次に、VPN終端装置設定情報生成部133は、重複しない「パスワード」をランダムに生成する(ステップS204−4)。
続いて、VPN終端装置設定情報生成部133は、VPN終端装置に応じた所定のコマンド文を用いて、認証ID、パスワードをファイルに記載し(ステップS204−5)、VPN終端装置の設定情報をファイル形式で保存する(ステップS204−6)。
そして、VPN終端装置設定情報生成部133は、他に設定すべきVPN終端装置があるか否かを判定し(ステップS204−7)、ある場合には(ステップS204−7肯定)、再び、ステップS204−1の処理に戻る。一方、ない場合には(ステップS204−7否定)、VPN終端装置設定情報生成部133は、処理を終了する。
[設定情報の反映処理]
図25は、設定情報の反映処理を示すフローチャートである。図25に示すように、実施例2に係るVPN間接続設定システム100において、まず、設定情報反映部136が、VPN間接続サービスを開始する時刻であるか否かを判定している(ステップS301)。サービス開始時刻でないと判定すると(ステップS301否定)、サービス開始時刻であるか否かを判定する処理に戻る。
一方、サービス開始時刻であると判定すると(ステップS301肯定)、設定情報反映部136は、予約情報設定情報記憶部124から設定情報の一群を取得する(ステップS302)。
また、設定情報反映部136は、アタッチメント記憶部125を参照し、該当するVPN終端装置や集合仮想ルータのアタッチメント(反映用)を取得する(ステップS303)。
そして、設定情報反映部136は、設定順序情報に従って、また、該当するアタッチメントを用いて、該当するVPN終端装置や集合仮想ルータに設定情報を送信することで、設定情報を反映する(ステップS304)。
[設定情報の削除処理]
図26は、設定情報の削除処理を示すフローチャートである。図26に示すように、実施例2に係るVPN間接続設定システム100において、設定情報削除部137が、VPN間接続サービスを終了する時刻であるか否かを判定している(ステップS401)。サービス終了時刻でないと判定すると(ステップS401否定)、サービス終了時刻であるか否かを判定する処理に戻る。
一方、サービス終了時刻であると判定すると(ステップS401肯定)、設定情報削除部137は、予約情報設定情報記憶部124から設定順序情報を取得する(ステップS402)。
また、設定情報削除部137は、アタッチメント記憶部125を参照し、該当するVPN終端装置や集合仮想ルータのアタッチメント(削除用)を取得する(ステップS403)。
そして、設定情報削除部137は、設定順序情報の逆順に従って、また、該当するアタッチメントを用いて、該当するVPN終端装置や集合仮想ルータに反映された設定情報を削除する(ステップS404)。
[実施例2の効果]
上述したように、実施例2においては、接続要求受付部131が、複数のVPN間を接続する接続要求を受け付ける。装置特定部132が、接続要求に基づいて、伝送路を形成する装置として、複数のVPN終端装置及び複数の集合仮想ルータを特定する。VPN終端装置設定情報生成部133が、複数のVPN終端装置に設定すべき設定情報を、各VPN終端装置に応じて生成する。集合仮想ルータ設定情報生成部134が、複数の集合仮想ルータに設定すべき設定情報として、複数の集合仮想ルータ間におけるパケット転送のための設定情報、及び、各集合仮想ルータと各集合仮想ルータに接続される各VPN終端装置との間におけるパケット転送のための設定情報を、各集合仮想ルータに応じて生成する。設定情報反映部136が、設定情報を、複数のVPN終端装置及び複数の集合仮想ルータに対して反映する。このようなことから、実施例2によれば、集合仮想ルータを複数台経由する伝送路を自動設定することが可能になる。
また、実施例2においては、設定パターン記憶部122が、VPN終端装置に設定すべき設定情報がVPN間接続の種別に応じて定型化されたVPN終端装置の設定パターンを記憶する。また、設定パターン記憶部122が、集合仮想ルータに設定すべき設定情報がVPN間接続の種別に応じて定型化された集合仮想ルータの設定パターンを記憶する。また、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134が、接続要求から特定される拠点それぞれのVPN間接続の種別に基づいて、設定パターン記憶部122に記憶されたVPN終端装置の設定パターン及び集合仮想ルータの設定パターンの中から、設定情報の生成に利用すべきVPN終端装置の設定パターン及び集合仮想ルータの設定パターンを選択し、選択した設定パターンを用いて設定情報を生成する。このようなことから、実施例2によれば、設定情報の生成に必要な設定パターンを使って自動生成するので、設定情報を簡易に生成することが可能になり、設定情報生成の効率化を図ることが可能になる。
また、実施例2においては、設定順序生成部135が、各設定情報がVPN終端装置及び集合仮想ルータに対して反映される順序を規定する設定順序情報を生成する。また、設定情報反映部136が、設定順序情報に規定される順序に従って、VPN終端装置に設定すべき設定情報、及び、集合仮想ルータに設定すべき設定情報を、VPN終端装置及び集合仮想ルータに対して反映する。このようなことから、実施例2によれば、適切な順序で設定情報が設定されることも可能になる。
また、実施例2においては、装置特定部132は、オプション(パケットフィルタリング、NATなど)要求に基づいて、オプション設定情報を設定すべきVPN終端装置や集合仮想ルータをさらに特定する。また、VPN終端装置設定情報生成部133及び集合仮想ルータ設定情報生成部134は、VPN終端装置に設定すべきオプション設定情報をVPN終端装置に応じて生成し、かつ、集合仮想ルータに設定すべきオプション設定情報を集合仮想ルータに応じて生成する。また、設定情報反映部136は、オプション設定情報をVPN終端装置及び集合仮想ルータに対して反映する。このようなことから、実施例2によれば、オプション要求に対応する設定情報も自動生成することが可能になる。
なお、実施例2においては、パケットフィルタリングやNATなどのオプションが集合仮想ルータやVPN終端装置にて実行される場合を想定したが、これに限られるものではない。例えば、集合仮想ルータとVPN終端装置との間にパケットフィルタリング用の通信装置やNAT用の通信装置を設置し、この通信装置が、パケットフィルタリングやNATなどのオプションを実行してもよい。この場合には、VPN間接続設定システム100は、集合仮想ルータやVPN終端装置に設定すべき設定情報を自動生成する機能と同様に、パケットフィルタリングやNATなどのオプションを実行する通信装置に設定すべき設定情報を自動生成するための機能を備える。
例えば、VPN間接続設定システム100は、接続情報記憶部121や装置情報記憶部126に、通信装置に関する接続情報や装置情報を記憶すればよい。また、例えば、VPN間接続設定システム100は、設定パターン記憶部122に、通信装置用の設定パターンを記憶すればよい。また、例えば、VPN間接続設定システム100は、アタッチメント記憶部125に、通信装置用のアタッチメントを記憶すればよい。そして、VPN終端装置設定情報生成部133又は集合仮想ルータ設定情報生成部134が、この通信装置に設定すべきオプション設定情報をこの通信装置に応じて生成すればよい。また、設定情報反映部136が、オプション設定情報を通信装置に対して反映すればよい。
また、実施例2においては、接続要求受付部131が、VPN間接続を開始する時刻の指定を受け付け、設定情報反映部136が、開始時刻にVPN間接続が開始されるように設定情報を反映するので、迅速にオンデマンドなVPNを構築することが可能になる。
また、実施例2においては、接続要求受付部131が、VPN間接続を終了する時刻の指定を受け付け、設定情報削除部137が、終了時刻にVPN間接続が終了されるように設定情報を削除するので、時限VPNに対応することも可能になる。すなわち、必要に応じて、複数の拠点間を、時限的にかつ安全に接続することも可能になる。
ここで、VPNの利用環境は変化している。例えば、VPNに接続する端末が複数化し、社内用PC、持出用PC、自宅用PCなど、一人で複数台の端末を使い分けることが一般化している。また、接続するVPNの種別が複数存在する。例えば、オフィスからのアクセス、外出先、テレワークセンタからのアクセスは、VPN間接続の種別が異なることが想定される。また、時限VPNが登場する。例えば、複数社間の時限協働プロジェクトでのVPN利用等、期間を区切ったVPNの利用が想定される。このような利用環境においても、実施例2に係るVPN間接続設定システムによれば、VPN終端装置や集合仮想ルータに対して行う設定を簡易にすることが可能になる。