(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023067459
(43)【公開日】2023-05-16
(54)【発明の名称】情報処理システム、ルータ、管理サーバ、方法およびプログラム
(51)【国際特許分類】
H04L 12/46 20060101AFI20230509BHJP
H04L 41/0895 20220101ALI20230509BHJP
H04L 61/5007 20220101ALI20230509BHJP
H04L 61/45 20220101ALI20230509BHJP
H04L 101/659 20220101ALN20230509BHJP
【FI】
H04L12/46 V
H04L41/0895
H04L61/5007
H04L61/45
H04L101:659
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2021178721
(22)【出願日】2021-11-01
(71)【出願人】
【識別番号】510068091
【氏名又は名称】株式会社エヴリカ
(74)【代理人】
【識別番号】100145838
【弁理士】
【氏名又は名称】畑添 隆人
(74)【代理人】
【識別番号】100103137
【弁理士】
【氏名又は名称】稲葉 滋
(72)【発明者】
【氏名】山田 直樹
【テーマコード(参考)】
5K033
【Fターム(参考)】
5K033CB08
5K033DA05
5K033DB18
5K033DB20
5K033EA03
5K033EC02
(57)【要約】
【課題】グローバルアドレスが変更され得る拠点を含むVPNの管理を容易にすることを課題とする。
【解決手段】ルータに、当該ルータ配下の端末のグローバルアドレスを取得する端末情報取得部と、当該ルータのグローバルアドレス及び当該ルータ配下の端末のグローバルアドレスを管理サーバに通知するネットワーク情報通知部と、他のルータのグローバルアドレス及び当該他のルータ配下の端末のグローバルアドレスを含むネットワーク情報を管理サーバから取得するネットワーク情報取得部と、ネットワーク情報を用いて他のルータとの間にVPNを構築するVPN構築部と、ネットワーク情報に従ってルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティング部と、を備えた。
【選択図】
図3
【特許請求の範囲】
【請求項1】
管理サーバ、及び該管理サーバによって管理される複数のルータを備える情報処理システムであって、
前記複数のルータの夫々は、
該ルータのIPv6グローバルアドレスを設定するルータアドレス設定手段と、
該ルータによって中継される通信を監視することで、該ルータ配下の端末のIPv6グローバルアドレスを取得する端末情報取得手段と、
前記ルータアドレス設定手段によって設定された該ルータのIPv6グローバルアドレス、及び前記端末情報取得手段によって取得された前記端末のIPv6グローバルアドレスを、前記管理サーバに通知するネットワーク情報通知手段と、
前記管理サーバによって管理されている他のルータのIPv6グローバルアドレス及び該他のルータ配下の端末のIPv6グローバルアドレスを含むネットワーク情報を、前記管理サーバから取得するネットワーク情報取得手段と、
前記ネットワーク情報を用いて前記他のルータとの間にVPNを構築するVPN構築手段と、
前記ネットワーク情報に従って前記ルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティング手段と、を備え、
前記管理サーバは、
前記複数のルータに係る情報を管理する情報管理手段と、
前記複数のルータの夫々から、該ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスの通知を受け付ける通知受付手段と、
前記通知受付手段によって通知を受けた、前記ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスを含む前記ネットワーク情報を、前記複数のルータに提供するネットワーク情報提供手段と、を備える、
情報処理システム。
【請求項2】
前記ルータアドレス設定手段は、該ルータに割り当てられたIPv6プレフィックスを用いて該ルータのIPv6グローバルアドレスを設定する、
請求項1に記載の情報処理システム。
【請求項3】
前記ルータは、
前記IPv6プレフィックスを該ルータ配下の端末に通知することで、該ルータ配下の端末に該端末のIPv6グローバルアドレスを設定させるプレフィックス通知手段を更に備える、
請求項1又は2に記載の情報処理システム。
【請求項4】
前記ルータの前記ネットワーク情報取得手段は、前記他のルータのネットワーク情報を、前記管理サーバに対して問い合わせ、
前記管理サーバの前記ネットワーク情報提供手段は、前記ルータによる問い合わせに応じて、前記ネットワーク情報を問い合わせ元のルータに提供する、
請求項1から3のいずれか一項に記載の情報処理システム。
【請求項5】
前記ルータは、前記VPN構築手段によって構築された前記VPN内の通信状況を監視する監視手段を更に備え、
前記ネットワーク情報取得手段は、前記監視手段によってVPN内の通信に不具合が生じたことが検知された際に、前記管理サーバに対して前記他のルータのネットワーク情報を問い合わせる、
請求項4に記載の情報処理システム。
【請求項6】
前記監視手段は、前記VPN構築手段によってVPN接続された相手方ルータのIPv6グローバルアドレスを監視し、
前記ネットワーク情報取得手段は、VPN接続された相手方ルータのIPv6グローバルアドレスの変更が検知された場合に、前記管理サーバに対して前記他のルータのネットワーク情報を問い合わせ、
前記VPN構築手段は、VPN接続された相手方ルータのIPv6グローバルアドレスの変更が検知された場合に、前記管理サーバから得られた変更後の前記ネットワーク情報を用いて、前記相手方ルータとの間にVPNを構築する、
請求項5に記載の情報処理システム。
【請求項7】
前記ルータの前記端末情報取得手段は、該ルータ配下の端末のIPv6グローバルアドレスと併せて、該端末の名前を取得し、
前記ルータの前記ネットワーク情報通知手段は、前記端末情報取得手段によって取得された前記端末のIPv6グローバルアドレスと該端末の名前との組合せを前記管理サーバに通知し、
前記ルータの前記ネットワーク情報取得手段は、他のルータ配下の端末のIPv6グローバルアドレスと該端末の名前との組合せを前記管理サーバから取得し、
前記管理サーバの前記通知受付手段は、前記端末のIPv6グローバルアドレスと該端末の名前との組合せの通知を受け付け、
前記管理サーバの前記ネットワーク情報提供手段は、前記端末のIPv6グローバルアドレスと該端末の名前との組合せを、前記複数のルータに提供し、
前記ルータは、
前記端末のIPv6グローバルアドレスと該端末の名前との組合せを参照して、該ルータ配下の端末から送信された名前解決のための通信に対して応答する名前解決手段を更に備える、
請求項1から6のいずれか一項に記載の情報処理システム。
【請求項8】
前記ルータの前記名前解決手段は、該ルータ配下の端末から送信された名前解決のための通信に含まれる名前解決対象が、前記管理サーバの前記ネットワーク情報提供手段によって提供された前記端末のIPv6グローバルアドレスと該端末の名前との組合せに含まれる場合に、該ルータ配下の端末から送信された名前解決のための通信に対して名前解決サーバに代わって応答し、
前記ルータの前記ルーティング手段は、該ルータ配下の端末から送信された名前解決のための通信に含まれる名前解決対象が、前記管理サーバの前記ネットワーク情報提供手段によって提供された前記端末のIPv6グローバルアドレスと該端末の名前との組合せに含まれない場合に、該通信を前記名前解決サーバに転送する、
請求項7に記載の情報処理システム。
【請求項9】
複数のルータを管理する管理サーバと通信可能なルータであって、
該ルータのIPv6グローバルアドレスを設定するルータアドレス設定手段と、
該ルータによって中継される通信を監視することで、該ルータ配下の端末のIPv6グローバルアドレスを取得する端末情報取得手段と、
前記ルータアドレス設定手段によって設定された該ルータのIPv6グローバルアドレス、及び前記端末情報取得手段によって取得された前記端末のIPv6グローバルアドレスを、前記管理サーバに通知するネットワーク情報通知手段と、
前記管理サーバによって管理されている他のルータのIPv6グローバルアドレス及び該他のルータ配下の端末のIPv6グローバルアドレスを含むネットワーク情報を、前記管理サーバから取得するネットワーク情報取得手段と、
前記ネットワーク情報を用いて前記他のルータとの間にVPNを構築するVPN構築手段と、
前記ネットワーク情報に従って前記ルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティング手段と、
を備えるルータ。
【請求項10】
複数のルータを管理する管理サーバであって、
前記複数のルータに係る情報を管理する情報管理手段と、
前記複数のルータの夫々から、該ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスの通知を受け付ける通知受付手段と、
前記通知受付手段によって通知を受けた、前記ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスを含む前記ネットワーク情報を、前記複数のルータに提供するネットワーク情報提供手段と、
を備える管理サーバ。
【請求項11】
複数のルータを管理する管理サーバと通信可能なルータのコンピュータが、
該ルータのIPv6グローバルアドレスを設定するルータアドレス設定ステップと、
該ルータによって中継される通信を監視することで、該ルータ配下の端末のIPv6グローバルアドレスを取得する端末情報取得ステップと、
前記ルータアドレス設定ステップで設定された該ルータのIPv6グローバルアドレス、及び前記端末情報取得ステップで取得された前記端末のIPv6グローバルアドレスを、前記管理サーバに通知するネットワーク情報通知ステップと、
前記管理サーバによって管理されている他のルータのIPv6グローバルアドレス及び該他のルータ配下の端末のIPv6グローバルアドレスを含むネットワーク情報を、前記管理サーバから取得するネットワーク情報取得ステップと、
前記ネットワーク情報を用いて前記他のルータとの間にVPNを構築するVPN構築ステップと、
前記ネットワーク情報に従って前記ルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティングステップと、
を実行する方法。
【請求項12】
複数のルータを管理する管理サーバのコンピュータが、
前記複数のルータに係る情報を管理する情報管理ステップと、
前記複数のルータの夫々から、該ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスの通知を受け付ける通知受付ステップと、
前記通知受付ステップで通知を受けた、前記ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスを含む前記ネットワーク情報を、前記複数のルータに提供するネットワーク情報提供ステップと、
を実行する方法。
【請求項13】
複数のルータを管理する管理サーバと通信可能なルータのコンピュータを、
該ルータのIPv6グローバルアドレスを設定するルータアドレス設定手段と、
該ルータによって中継される通信を監視することで、該ルータ配下の端末のIPv6グローバルアドレスを取得する端末情報取得手段と、
前記ルータアドレス設定手段によって設定された該ルータのIPv6グローバルアドレス、及び前記端末情報取得手段によって取得された前記端末のIPv6グローバルアドレスを、前記管理サーバに通知するネットワーク情報通知手段と、
前記管理サーバによって管理されている他のルータのIPv6グローバルアドレス及び該他のルータ配下の端末のIPv6グローバルアドレスを含むネットワーク情報を、前記管理サーバから取得するネットワーク情報取得手段と、
前記ネットワーク情報を用いて前記他のルータとの間にVPNを構築するVPN構築手段と、
前記ネットワーク情報に従って前記ルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティング手段と、
として機能させるプログラム。
【請求項14】
複数のルータを管理する管理サーバのコンピュータを、
前記複数のルータに係る情報を管理する情報管理手段と、
前記複数のルータの夫々から、該ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスの通知を受け付ける通知受付手段と、
前記通知受付手段によって通知を受けた、前記ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスを含む前記ネットワーク情報を、前記複数のルータに提供するネットワーク情報提供手段と、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、仮想プライベートネットワークのための技術に関する。
【背景技術】
【0002】
従来、仮想プライベートネットワークの運用における利便性を向上させるための技術が種々提案されている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
仮想プライベートネットワーク(以下、「VPN」)内で端末が互いに通信するためには、VPN接続された拠点間で互いに相手方LAN内端末のアドレスを知る必要がある。しかし、インターネットプロトコルバージョン6(以下、「IPv6」)ではローカルエリアネットワーク(以下、「LAN」)内端末もグローバルアドレスを用いて通信を行い、また、グローバルアドレスはインターネットプロバイダからの割り当て方式に従って変更され得る。このため、VPNに属する何れかの拠点においてグローバルアドレスが変更されてしまった場合、当該拠点との間でのVPN内通信ができなくなってしまう。
【0005】
加えて、VPN構築のためにはVPN接続を担当するルータは相手方ルータのグローバルアドレスを知る必要があるが、これらのルータのグローバルアドレスも、プロバイダからの割り当て方式に従って変更され得る。
【0006】
本開示は、上記した問題に鑑み、グローバルアドレスが変更され得る拠点を含むVPNの管理を容易にすることを課題とする。
【課題を解決するための手段】
【0007】
本開示の一例は、管理サーバ、及び該管理サーバによって管理される複数のルータを備える情報処理システムであって、前記複数のルータの夫々は、該ルータのIPv6グローバルアドレスを設定するルータアドレス設定手段と、該ルータによって中継される通信を監視することで、該ルータ配下の端末のIPv6グローバルアドレスを取得する端末情報取得手段と、前記ルータアドレス設定手段によって設定された該ルータのIPv6グローバルアドレス、及び前記端末情報取得手段によって取得された前記端末のIPv6グローバルアドレスを、前記管理サーバに通知するネットワーク情報通知手段と、前記管理サーバによって管理されている他のルータのIPv6グローバルアドレス及び該他のルータ配下の端末のIPv6グローバルアドレスを含むネットワーク情報を、前記管理サーバから取得するネットワーク情報取得手段と、前記ネットワーク情報を用いて前記他のルータとの間にVPNを構築するVPN構築手段と、前記ネットワーク情報に従って前記ルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティング手段と、を備え、前記管理サーバは、前記複数のルータに係る情報を管理する情報管理手段と、前記複数のルータの夫々から、該ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスの通知を受け付ける通知受付手段と、前記通知受付手段によって通知を受けた、前記ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスを含む前記ネットワーク情報を、前記複数のルータに提供するネットワーク情報提供手段と、を備える、情報処理システムである。
【0008】
また、本開示の別の側面は、複数のルータを管理する管理サーバと通信可能なルータであって、該ルータのIPv6グローバルアドレスを設定するルータアドレス設定手段と、該ルータによって中継される通信を監視することで、該ルータ配下の端末のIPv6グローバルアドレスを取得する端末情報取得手段と、前記ルータアドレス設定手段によって設定された該ルータのIPv6グローバルアドレス、及び前記端末情報取得手段によって取得された前記端末のIPv6グローバルアドレスを、前記管理サーバに通知するネットワーク情報通知手段と、前記管理サーバによって管理されている他のルータのIPv6グローバルアドレス及び該他のルータ配下の端末のIPv6グローバルアドレスを含むネットワーク情報を、前記管理サーバから取得するネットワーク情報取得手段と、前記ネットワーク情報を用いて前記他のルータとの間にVPNを構築するVPN構築手段と、前記ネットワーク情報に従って前記ルータ配下の端末による通信に対するVPN処理及びルーティングを行うルーティング手段と、を備えるルータである。
【0009】
また、本開示の別の側面は、複数のルータを管理する管理サーバであって、前記複数のルータに係る情報を管理する情報管理手段と、前記複数のルータの夫々から、該ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスの通知を受け付ける通知受付手段と、前記通知受付手段によって通知を受けた、前記ルータのIPv6グローバルアドレス及び該ルータ配下の端末のIPv6グローバルアドレスを含む前記ネットワーク情報を、前記複数のルータに提供するネットワーク情報提供手段と、を備える管理サーバである。
【0010】
本開示は、情報処理装置、システム、コンピュータによって実行される方法またはコンピュータに実行させるプログラムとして把握することが可能である。また、本開示は、そのようなプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録したものとしても把握できる。ここで、コンピュータ等が読み取りコンピュータとは、データやプログラム等の情報を電気的、磁気的、光学的、機械的または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
【発明の効果】
【0011】
本開示によれば、グローバルアドレスが変更され得る拠点を含むVPNの管理を容易にすることが可能となる。
【図面の簡単な説明】
【0012】
【
図1】実施形態に係るシステムの構成を示す概略図である。
【
図2】実施形態に係るシステムのハードウェア構成を示す図である。
【
図3】実施形態に係るシステムの機能構成の概略を示す図である。
【
図4】実施形態に係るVPN管理処理の流れの概要を示すフローチャートである。
【
図5】実施形態に係るルーティング処理の流れの概要を示すフローチャートである。
【
図6】実施形態に係るネットワーク情報管理処理の流れの概要を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本開示に係る情報処理装置、方法およびプログラムの実施の形態を、図面に基づいて説明する。但し、以下に説明する実施の形態は、実施形態を例示するものであって、本開示に係る情報処理装置、方法およびプログラムを以下に説明する具体的構成に限定するものではない。実施にあたっては、実施の態様に応じた具体的構成が適宜採用され、また、種々の改良や変形が行われてよい。
【0014】
本実施形態では、本開示に係る情報処理装置、方法およびプログラムを、複数のルータが接続されることで、これらのルータ配下のクライアントが属するVPNを構成するシステムにおいて実施した場合の実施の形態について説明する。但し、本開示に係る情報処理装置、方法およびプログラムは、VPNの管理のための技術について広く用いることが可能であり、本開示の適用対象は、本実施形態において示した例に限定されない。
【0015】
<システムの構成>
図1は、本実施形態に係るシステム1の構成を示す概略図である。本実施形態に係るシステム1は、互いにVPN接続される複数のネットワーク2a、2b及び2cと、管理サーバ50とを備える。ネットワーク2a、2b及び2cの夫々は、複数の情報処理端末90(以下、「クライアント90」と称する)、及びクライアント90に係る通信を中継するためのVPNルータ20と、を備える。また、ネットワーク2a、2b及び2c内のクライアント90は、インターネットや広域ネットワークを介して遠隔地において接続された各種のサーバと、VPNルータ20を介して通信可能である。本実施形態において、VPNルータ20は、ネットワーク2a、2b及び2cにおいて、クライアント90とインターネットとの間に接続されることで、通過するパケットを取得し、設定されたポリシー及びルーティングテーブルに従ってパケットを処理する。
【0016】
図2は、本実施形態に係るVPNルータ20及び管理サーバ50のハードウェア構成を示す図である。VPNルータ20は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、EEPROM(Electrically Erasable and Programmable Read Only Memory)やHDD(Hard Disk Drive)等の記憶装置14、NIC(Network Interface Card)等の通信ユニット15、等を備えるコンピュータである。但し、VPNルータ20の具体的なハードウェア構成に関しては、実施の態様に応じて適宜省略や置換、追加が可能である。また、VPNルータ20は、単一の装置に限定されない。VPNルータ20は、所謂クラウドや分散コンピューティングの技術等を用いた、複数の装置によって実現されてよい。
【0017】
管理サーバ50は、CPU51、ROM52、RAM53、記憶装置54、通信ユニット55、等を備えるコンピュータである。但し、管理サーバ50の具体的なハードウェア構成に関しては、実施の態様に応じて適宜省略や置換、追加が可能である。また、管理サーバ50は、単一の装置に限定されない。管理サーバ50は、所謂クラウドや分散コンピューティングの技術等を用いた、複数の装置によって実現されてよい。
【0018】
図3は、本実施形態に係るVPNルータ20及び管理サーバ50の機能構成の概略を示す図である。VPNルータ20は、記憶装置14に記録されているプログラムが、RAM13に読み出され、CPU11によって実行されることで、ルータアドレス設定部21、プレフィックス通知部22、端末情報取得部23、ネットワーク情報通知部24、ネットワーク情報取得部25、VPN構築部26、監視部27、ルーティング部28及び名前解決部29を備える情報処理装置として機能する。なお、本実施形態では、VPNルータ20が備える各機能は、汎用プロセッサであるCPU11によって実行されるが、これらの機能の一部または全部は、1または複数の専用プロセッサによって実行されてもよい。また、これらの機能の一部または全部は、クラウド技術等を用いて、遠隔値に設置された装置や、分散設置された複数の装置によって実行されてもよい。
【0019】
ルータアドレス設定部21は、当該VPNルータ20に割り当てられたIPv6プレフィックスを用いて、当該VPNルータ20のIPv6グローバルアドレスを設定する。本実施形態では、IPv6プレフィックスには、ISP又は上位のルータから割り当てられたIPv6プレフィックスが用いられる。具体的には、ルータアドレス設定部21は、VPNルータ20の起動時等に、ISP等に対してRouter Solicitation(RS)を送信し、RSに対する応答としてISP等から送信されたRouter Advertisement(RA)を受信する。RAが受信されると、ルータアドレス設定部21は、受信されたRAに含まれる、ISP等から発行されたIPv6プレフィックスを用いて、VPNルータ20のIPv6グローバルアドレスを設定する。
【0020】
なお、ISP等から発行されたIPv6プレフィックスは、その他の手段を用いてVPNルータ20に通知されてもよい。例えば、Dynamic Host Configuration Protocol(DHCP)のPrefixDelegation(DHCPv6-PD)を用いる場合、ISP又は上位のルータは、Otherフラグ(Oフラグ)及びManagementフラグ(Mフラグ)が設定されたRAをVPNルータ20に対して送信し、ルータアドレス設定部21は、受信したRAにOフラグ及びMフラグが設定されている場合、ISP等に対してDHCPv6のリクエストを送信し、リクエストに対する応答としてISP等から送信されたPrefixDelegation(PD)を受信する。PDが受信されると、ルータアドレス設定部21は、受信されたPDに基づいてIPv6プレフィックスを決定し、決定されたIPv6プレフィックスを用いて、VPNルータ20のIPv6グローバルアドレスを設定する。
【0021】
また、ルータアドレス設定部21は、ISP又は上位のルータから新たなIPv6プレフィックスが割り当てられると、新たに割り当てられたIPv6プレフィックスを用いて当該VPNルータ20のIPv6グローバルアドレスを再設定する。即ち、本実施形態では、VPNルータ20のIPv6グローバルアドレスは固定アドレスではない。
【0022】
プレフィックス通知部22は、IPv6プレフィックスを当該VPNルータ20配下のクライアント90に通知することで、当該VPNルータ20配下のクライアント90に当該クライアント90のIPv6グローバルアドレスを設定させる。具体的には、プレフィックス通知部22は、クライアント90から送信されたRSを受信すると、クライアント用のIPv6プレフィックスを含むRAを、RSの送信元クライアント90に対して送信する。RAを受信したクライアント90は、VPNルータ20から発行されたクライアント用のIPv6プレフィックスを用いて、当該クライアント90のIPv6グローバルアドレスを設定する。ここで、クライアント用のIPv6プレフィックスには、ISP又は上位のルータから発行されたIPv6プレフィックスがそのまま用いられてもよいし、ISP等から発行されたIPv6プレフィックスにサブネットワーク用のアドレスを追加することでVPNルータ20によって生成されたIPv6プレフィックスが用いられてもよい。
【0023】
端末情報取得部23は、当該VPNルータ20によって中継される通信を監視することで、当該VPNルータ20配下のクライアント90のIPv6グローバルアドレス(例えば、「2x01::2/64」等)及び名前(例えば、「client01」等)を取得する。ここで、端末情報取得部23によって監視される通信には、クライアント90によって送受信される通常のアプリケーション通信の他、近隣探索(ND)のための通信、Link-local Multicast Name Resolution(LLMNR)、Bonjour、マルチキャストDNS(mDNS)、Avahi等が含まれる。
【0024】
ネットワーク情報通知部24は、ルータアドレス設定部21によって設定された当該VPNルータ20のIPv6グローバルアドレスと、端末情報取得部23によって取得されたクライアント90のIPv6グローバルアドレス及び名前の組合せとを含むネットワーク情報を管理サーバ50に通知する。ネットワーク情報通知部24は、これらの情報が更新される都度、管理サーバ50に対して、最新のネットワーク情報を通知する。管理サーバ50は、通知されたネットワーク情報を蓄積し更新することで、管理下の各VPNルータ20に係るネットワーク情報を最新の状態に管理する。
【0025】
ネットワーク情報取得部25は、管理サーバ50によって情報が管理されている他のVPNルータ20のIPv6グローバルアドレスと、当該他のVPNルータ20配下のクライアント90のIPv6グローバルアドレス及び名前の組合せとを含むネットワーク情報を、管理サーバ50から取得する。本実施形態において、ネットワーク情報取得部25は、他のVPNルータ20のネットワーク情報を、管理サーバ50に対して問い合わせることで、上記ネットワーク情報を取得する。問い合わせのタイミングは、例えば、監視部27によってVPN内の通信に不具合が生じたことが検知されたタイミングや、VPN接続された相手方VPNルータ20のIPv6グローバルアドレスの変更が検知されたタイミング、一定間隔、等である。このような方式が採用されることで、VPNルータ20側にファイアウォール等の管理サーバ50との間の通信を制限する構成が存在する場合にも、ファイアウォール等への通信許可設定等を行うことなく、ネットワーク情報を取得することが出来る。
【0026】
但し、ネットワーク情報の取得方法は、本実施形態において例示された、管理サーバ50に対して問い合わせを行うことで取得する所謂プル方式に限定されない。例えば、ネットワーク情報の取得方法には、管理サーバ50から各VPNルータ20に対してプッシュ通知がなされる方式が採用されてもよい。プッシュ方式が採用された場合には、管理サーバ50においてネットワーク情報の更新が検知されたタイミングで遅滞なく各VPNルータ20に対して更新されたネットワーク情報を通知することが出来る。
【0027】
VPN構築部26は、ネットワーク情報を用いて他のVPNルータ20との間にVPNを構築する。ここで、VPN構築のための処理の詳細は、従来技術を用いてよいため、説明を省略する。また、VPN構築部26は、VPN接続された相手方VPNルータ20のIPv6グローバルアドレスの変更が検知された場合に、管理サーバ50から得られた変更後のネットワーク情報を用いて、相手方VPNルータ20との間にVPNを再構築する。
【0028】
監視部27は、VPN構築部26によって構築されたVPN内の通信状況を監視する。上述の通り、本実施形態では、VPNルータ20のIPv6グローバルアドレスは固定アドレスではなく、ISP又は上位のルータより提供されたIPv6プレフィックスを用いてVPNルータ20のIPv6グローバルアドレスが設定されるため、ISP等によって提供されるIPv6プレフィックスが変更されると、VPNルータ20のIPv6グローバルアドレスが変更されてしまう。そして、VPN接続された相手方VPNルータ20のIPv6グローバルアドレスが変更されると、相手方のVPNルータ20にVPN通信が到達できなくなり、VPN通信に不具合が生じる。このため、本実施形態において、監視部27は、VPN構築部26によってVPN接続された相手方VPNルータ20のIPv6グローバルアドレスを監視する。監視部27によって相手方VPNルータ20のグローバルアドレスの変更が検知された場合、VPNルータ20は、ネットワーク情報取得部25による相手方VPNルータ20の最新のネットワーク情報の取得、及びVPN構築部26によるVPNの再構築を行う。
【0029】
ルーティング部28は、VPNルータ20配下のクライアント90によって送受信される通信に対するVPN処理及びルーティングを行う。ここで、ルーティング部28は、当該VPNルータ20に設定された通常のルーティング情報に加えて、ネットワーク情報取得部25によって取得されたネットワーク情報に基づいて設定されたルーティング情報及びVPNポリシー(VPNにIPSecを用いる場合、IPSecのポリシー)を参照して、パケットへのVPN処理(カプセル化又はカプセル解除)及びルーティングを行う。
【0030】
具体的には、ルーティング部28は、VPN構築部26によってVPNが構築されている状態において、当該VPNルータ20の配下にあるVPN内クライアントと、VPN接続先である他のVPNルータ20の配下にあるVPN内クライアントとの通信が、VPNルータ20間のVPN通信に乗るように、ルーティング情報及びVPNポリシーを設定し、これらのルーティング情報及びVPNポリシーに従ってクライアント間の通信に対するVPN処理(具体的には、カプセル化及びカプセル解除)及びルーティングを行う。例えば、ネットワーク2aとネットワーク2bとの間でVPNが構築されている場合、ネットワーク2aのVPNルータ20のルーティング部は、ネットワーク2a内のクライアント90からネットワーク2b内のクライアント90に対して送信されるパケットを、当該VPNポリシーに従ったカプセル化処理を施した上でカプセル化パケットをネットワーク2bのVPNルータ20に送信するルーティングを行う。そして、ネットワーク2bのVPNルータ20のルーティング部は、受信したパケットをカプセル解除し、ネットワーク2b内のクライアント90に対して送信するルーティングを行う。
【0031】
また、ルーティング部28は、当該VPNルータ20配下のクライアント90から送信された名前解決のための通信を受信した場合、当該通信に含まれる名前解決対象が、管理サーバ50のネットワーク情報提供部63から提供されたクライアント90のIPv6グローバルアドレスと当該クライアント90の名前との組合せ(以下、「名前解決情報」又は「エイリアス情報」と称する)に含まれるか否かを判定する。判定の結果、名前解決対象が管理サーバ50から提供された名前解決情報に含まれていると判定された場合、ルーティング部28は、当該通信を名前解決サーバに転送せず、名前解決部29に名前解決を実行させる。一方、名前解決対象が管理サーバ50から提供された名前解決情報に含まれないと判定された場合、ルーティング部28は、当該通信を名前解決サーバに転送する。
【0032】
名前解決部29は、当該VPNルータ20配下のクライアント90から送信された名前解決のための通信に含まれる名前解決対象が、管理サーバ50のネットワーク情報提供部63によって提供されたクライアント90のIPv6グローバルアドレスと当該クライアント90の名前との組合せ(名前解決情報)に含まれる場合に、この名前解決情報を参照して、当該VPNルータ20配下のクライアント90から送信された名前解決のための通信に対して応答する。
【0033】
管理サーバ50は、記憶装置54に記録されているプログラムが、RAM53に読み出され、CPU51によって実行されることで、情報管理部61、通知受付部62及びネットワーク情報提供部63を備える情報処理装置として機能する。なお、本実施形態では、管理サーバ50が備える各機能は、汎用プロセッサであるCPU51によって実行されるが、これらの機能の一部または全部は、1または複数の専用プロセッサによって実行されてもよい。また、これらの機能の一部または全部は、クラウド技術等を用いて、遠隔値に設置された装置や、分散設置された複数の装置によって実行されてもよい。
【0034】
情報管理部61は、複数のVPNルータ20に係る情報を管理する。具体的には、情報管理部61は、予め登録された、VPNを構築するVPNルータ20の情報を有しており、更に、登録されている各VPNルータ20から通知されるネットワーク情報を蓄積し更新することで、管理下の各VPNルータ20に係るネットワーク情報を最新の状態に管理する。
【0035】
通知受付部62は、複数のVPNルータ20の夫々から、当該VPNルータ20のIPv6グローバルアドレスと、当該VPNルータ20配下のクライアント90のIPv6グローバルアドレス及び名前の組合せとを含むネットワーク情報の通知を受け付ける。受け付けられたネットワーク情報は、情報管理部61によって管理される。
【0036】
ネットワーク情報提供部63は、VPNルータ20による問い合わせに応じて、ネットワーク情報を問い合わせ元のVPNルータ20に対して、通知受付部62によって通知を受けた、VPNルータ20のIPv6グローバルアドレスと、当該VPNルータ20配下のクライアント90のIPv6グローバルアドレス及び名前の組合せとを含むネットワーク情報を、複数のVPNルータ20に提供する。
【0037】
<処理の流れ>
次に、本実施形態に係るシステム1によって実行される処理の流れを、フローチャートを用いて説明する。なお、以下に説明するフローチャートに示された処理の具体的な内容および処理順序は、本開示を実施するための一例である。具体的な処理内容および処理順序は、本開示の実施の形態に応じて適宜選択されてよい。
【0038】
図4は、本実施形態に係るVPN管理処理の流れの概要を示すフローチャートである。本実施形態に係るVPN管理処理は、VPNルータ20においてVPN接続が自動実行されるか、又は管理者によるVPN接続の指示が入力されたことを契機として実行される。
【0039】
ステップS101からステップS105では、VPN接続の相手方VPNルータ20のネットワーク情報が取得される。VPNルータ20のネットワーク情報取得部25は、VPN接続の相手方VPNルータ20のネットワーク情報を、管理サーバ50に対して問い合わせる(ステップS101)。管理サーバ50のネットワーク情報提供部63は、問い合わせを受信すると(ステップS102)、情報管理部61から最新のネットワーク情報を読み出し(ステップS103)、問合せ元のVPNルータ20に対して提供する(ステップS104)。VPNルータ20のネットワーク情報取得部25は、管理サーバ50から送信されたネットワーク情報を受信することで、VPN接続の相手方VPNルータ20のネットワーク情報を取得する(ステップS105)。その後、処理はステップS106へ進む。
【0040】
ステップS106では、VPNが構築される。VPNルータ20のVPN構築部26は、ネットワーク情報を用いて他のVPNルータ20との間にVPNを構築する。具体的には、VPNルータ20のVPN構築部26は、ステップS105で取得されたネットワーク情報に含まれる相手方VPNルータ20のIPv6グローバルアドレスを通信相手としてVPN構築のための通信を行い、当該VPNルータ20配下のクライアント90と相手方VPNルータ20配下のクライアント90とが接続されたVPNを構築する。なお、VPN構築のための通信においては、相手方のVPNルータ20も、ステップS101からステップS105の処理を実行することで、当該VPNルータ20のネットワーク情報を得ている。VPNが構築されると、処理はステップS107へ進む。
【0041】
ステップS107からステップS109では、VPN通信の状況が監視される。監視部27は、ステップS106でVPN接続された相手方VPNルータ20のIPv6グローバルアドレスを監視する(ステップS107)。監視の結果、相手方VPNルータ20のグローバルアドレスの変更が検知された場合(ステップS108のYES)、VPNルータ20は、変更が検知された相手方VPNルータ20との間でのVPN接続を切断する(ステップS109)。そして、処理はステップS101へ戻る。即ち、監視の結果、相手方VPNルータ20のグローバルアドレスの変更が検知された場合、VPNルータ20は、相手方VPNルータ20の最新のネットワーク情報に従ってVPNを再構築する(ステップS101からステップS106)。本フローチャートに示された処理は、管理者によってVPNの切断指示が入力されたり、VPNルータ20の電源が落とされたりするまで繰り返し実行される。
【0042】
図5は、本実施形態に係るルーティング処理の流れの概要を示すフローチャートである。本実施形態に係るルーティング処理は、VPNルータ20によってパケットが受信される毎に実行される。
【0043】
ステップS201及びステップS202では、受信パケットの属性が判定される。ルーティング部28は、パケットを受信すると(ステップS201)、受信されたパケットのプロトコルや宛先、送信元等を参照し、予め設定されたポリシーやルーティング情報(ルーティングテーブル)に照会することでパケットの属性を判定する(ステップS202)。その後、処理はステップS203へ進み、判定されたパケットの属性に応じた処理が実行される。
【0044】
ステップS203及びステップS204では、VPN対象パケットに対するVPN処理及びルーティングが実行される。ステップS201で受信されたパケットが、VPN処理の対象である場合(ステップS203のYES)、ルーティング部28は、ルーティング情報及びVPNポリシーを参照して、パケットへのVPN処理及びルーティングを行う。具体的には、ステップS201で受信されたパケットの宛先が、VPN内で他のVPNルータ20配下にあるクライアント90としてルーティングテーブルに記載されている場合、ルーティング部28は、当該パケットをVPN対象通信と判定し、当該宛先クライアント90が属する相手方VPNルータ20へのVPNパケットとしてカプセル化を行い、カプセル化されたパケットを相手方VPNルータ20に対して転送する。また、ステップS201で受信されたパケットが、カプセル化された当該VPNルータ20宛のパケットである場合、ルーティング部28は、当該VPNパケットをカプセル解除し、取り出されたパケットを当該VPNルータ20配下のクライアント90に対して転送する。その後、本フローチャートに示された処理は終了する。
【0045】
一方、ステップS201で受信されたパケットが、VPN処理の対象でない場合(ステップS203のNO)、処理はステップS205へ進む。
【0046】
ステップS205及びステップS206では、名前解決パケットに対する処理が実行される。ステップS201で受信されたパケットが当該VPNルータ20配下のクライアント90から送信された名前解決パケットであり、且つ当該パケットに含まれる名前解決対象が、管理サーバ50のネットワーク情報提供部63から提供された名前解決情報に含まれる場合(ステップS205のYES)、ルーティング部28は、当該パケットをパケットに示されている宛先(例えば、名前解決サーバ)に転送しない。そして、名前解決部29は、名前解決情報を参照して、パケットの送信元クライアント90に対して、名前に対応するIPv6グローバルアドレス、又はIPv6グローバルアドレスに対応する名前を回答する(ステップS206)。即ち、本実施形態において、名前解決部29は、名前解決サーバに代わり、管理サーバ50から提供された名前解決情報に従ってVPN内の名前解決を実行する。名前解決が実行されると、その後本フローチャートに示された処理は終了する。
【0047】
一方、ステップS201で受信されたパケットが名前解決のためのパケットであるが、名前解決対象が管理サーバ50から提供された名前解決情報に含まれない場合(ステップS205のNO)、処理はステップS207へ進み、通常のルーティングが行われる。即ち、この場合、ルーティング部28は、名前解決のための当該パケットを、パケットに示されている宛先(例えば、名前解決サーバ)に転送する。また、ステップS201で受信されたパケットが名前解決のためのパケットでない場合も(ステップS205のNO)、処理はステップS207へ進み、通常のルーティングが行われる。
【0048】
ステップS207では、通常のルーティングが実行される。ステップS201で受信されたパケットが、VPN処理の対象でなく(ステップS203のNO)、且つ名前解決部29によって名前解決可能なパケットでもない(ステップS205のNO)場合、ルーティング部28は、通常のルーティングテーブルに従ってパケットをルーティングする。その後、本フローチャートに示された処理は終了する。
【0049】
図6は、本実施形態に係るネットワーク情報管理処理の流れの概要を示すフローチャートである。本実施形態に係るネットワーク情報管理処理は、VPNルータ20の起動中、定期的に実行される。
【0050】
ステップS301では、クライアント90の端末情報が取得される。VPNルータ20の端末情報取得部23は、VPNルータ20によって中継される通信を監視することで、VPNルータ20配下のクライアント90のIPv6グローバルアドレス及び名前を含む端末情報を取得する。ここで、端末情報取得部23は、既に端末情報を取得済みのクライアント90についても通信の監視を継続し、当該クライアント90のグローバルアドレス又は名前に変更があった場合には、取得済みの端末情報を更新する。その後、処理はステップS302へ進む。
【0051】
ステップS302からステップS304では、クライアント90の端末情報を含むネットワーク情報が管理サーバ50に通知され、管理サーバ50において管理されているネットワーク情報が最新の状態に管理される。VPNルータ20のネットワーク情報通知部24は、当該VPNルータ20のIPv6グローバルアドレスと、ステップS301で取得又は更新されたクライアント90のIPv6グローバルアドレス及び名前の組合せとを含むネットワーク情報を管理サーバ50に通知する(ステップS302)。管理サーバ50の通知受付部62は、VPNルータ20から、ネットワーク情報の通知を受け付ける(ステップS303)。そして、管理サーバ50の情報管理部61は、通知されたネットワーク情報を蓄積し更新することで、管理下の各VPNルータ20に係るネットワーク情報を最新の状態に管理する(ステップS304)。その後、処理はステップS305へ進む。
【0052】
ステップS305からステップS309では、VPN接続の相手方VPNルータ20のネットワーク情報が取得される。ステップS305からステップS309における具体的な処理は、
図4を参照して説明したVPN管理処理のステップS101からステップS105と概略同様であるため、説明を省略する。このようにすることで、クライアント90が再起動された等の理由で当該クライアント90の端末情報に変更があった場合でも、VPN内のクライアント90の端末情報が最新の状態に保たれ、VPNルータ20は、ルーティング処理(
図5を参照)等を最新のネットワーク情報に基づく名前解決情報を参照して実行することで、VPNにおけるクライアント90間の通信を維持することが出来る。その後、本フローチャートに示された処理は終了する。
【0053】
上記説明した実施形態によれば、IPv6グローバルアドレスが変更され得る拠点を含むVPNの管理が容易となる。
【符号の説明】
【0054】
1 システム
20 VPNルータ
50 管理サーバ
90 クライアント