(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-08
(45)【発行日】2022-01-12
(54)【発明の名称】IPv6 CEルータのインターフェース設定プログラム、インターフェース設定方法、およびインターフェース設定プログラムを内蔵するIPv6 CEルータ
(51)【国際特許分類】
H04L 61/5014 20220101AFI20220104BHJP
【FI】
H04L61/5014
(21)【出願番号】P 2020100618
(22)【出願日】2020-06-10
【審査請求日】2020-06-10
(73)【特許権者】
【識別番号】393010318
【氏名又は名称】エレコム株式会社
(74)【代理人】
【識別番号】110000844
【氏名又は名称】特許業務法人 クレイア特許事務所
(72)【発明者】
【氏名】島田 純平
【審査官】佐々木 洋
(56)【参考文献】
【文献】韓国公開特許第10-2006-0044243(KR,A)
【文献】特表2018-509120(JP,A)
【文献】特開2013-126209(JP,A)
【文献】米国特許出願公開第2018/0361880(US,A1)
【文献】北村 和夫 Kazuo KITAMURA ほか,"DHCPv6-PDプロトコル拡張によるIPv6ルータの自動設定方法 Auto-Configuration for IPv6 Routers by the Extended DHCPv6-PD",電子情報通信学会論文誌 (J88-B) 第7号 THE IEICE TRANSACTIONS ON COMMUNICATIONS (JAPANESE EDITION),日本,社団法人電子情報通信学会 THE INSTITUTE OF ELECTRONICS,INFORMATION AND COMMUNICATION ENGINEERS,2005年07月01日,第J88-B巻,pp.1227-1236
【文献】高橋 健太郎,"ゼロから理解を深めよう レッツ・チャレンジ!IPv6 Part2 IPv4と比較しながら学ぶIPv6通信のしくみ",日経NETWORK 第75号 ,日本,日経BP社 Nikkei Business Publications,Inc.,2006年06月22日,pp.56-64
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-12/955
(57)【特許請求の範囲】
【請求項1】
ISP(Internet Service Provider)ルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるIPv6 CEルータのインターフェース設定プログラムであって、前記インターフェース設定プログラムは
前記ISPルータ、または前記ISPルータと接続されるDHCPv6-IA_NAサーバに、プレフィックスまたはIPアドレスの配布について問い合わせするとともに、前記ISPルータと接続されるDHCPv6-PDサーバにプレフィックスの委任について問い合わせする問い合わせ処理と、
前記ISPルータまたは前記DHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布され、かつ、前記DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第1のインターフェース設定処理と、
前記ISPルータまたは前記DHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布され、かつ、前記DHCPv6-PDサーバからプレフィックスが委任されない場合に実行される第2のインターフェース設定処理と、
前記ISPルータおよび前記DHCPv6-IA_NAサーバのどちらからもプレフィックスまたはIPアドレスが配布されず、かつ、前記DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第3のインターフェース設定処理と、を含み、
前記第1のインターフェース設定処理では、
前記WAN側インターフェースのIPアドレスを、前記ISPルータまたは前記DHCPv6-IA_NAサーバから配布されたプレフィックスまたはIPアドレスにもとづいて設定し、
前記DHCPv6-PDサーバから委任されたプレフィックスが1つであって、前記WAN側インターフェースのプレフィックスと同一である場合は、前記LAN側インターフェースのプレフィックスを前記WAN側インターフェースのプレフィックスと同一に設定するとともにNDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
前記DHCPv6-PDサーバから委任されたプレフィックスが複数であって、複数のプレフィックスのうちの1つが前記WAN側インターフェースのプレフィックスと同一である場合は、前記LAN側インターフェースのプレフィックスを前記複数のプレフィックスのうちの前記WAN側インターフェースのプレフィックスと異なる値に設定し、
前記DHCPv6-PDサーバから委任されたプレフィックスが前記WAN側インターフェースのプレフィックスと全く異なる場合は、前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスの中から選択された値に設定し、
前記第2のインターフェース設定処理では、前記LAN側インターフェースのプレフィックスを前記WAN側インターフェースのプレフィックスと同一に設定するとともに、NDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
前記第3のインターフェース設定処理では、
前記DHCPv6-PDサーバから委任されたプレフィックスのビット数が60以上64以下の場合は前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスから1つを選択して設定し、前記WAN側インターフェースにはIPアドレスを設定せず、
前記DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合は、前記WAN側インターフェースのプレフィックスを前記委任されたプレフィックスのうちの先頭の値に設定し、前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスのうちの前記WAN側インターフェースのプレフィックスと異なる値に設定する、インターフェース設定プログラム。
【請求項2】
前記第1のインターフェース設定処理のうち、前記WAN側インターフェースのIPアドレスを設定する処理において、前記ISPルータからプレフィックスが配布された場合には、前記WAN側インターフェースのIPアドレスを前記ISPルータから配布されたプレフィックスにもとづいて設定する、請求項1に記載のインターフェース設定プログラム。
【請求項3】
前記第1のインターフェース設定処理のうち、前記DHCPv6-PDサーバから委任されたプレフィックスが複数であって、複数のプレフィックスのうちの1つが前記WAN側インターフェースのプレフィックスと同一である場合において、
前記DHCPv6-PDサーバから委任されたプレフィックスのビット数が60以上63以下の場合は、前記LAN側インターフェースのプレフィックスのMSB側から61ビット目から64ビット目のいずれかを前記WAN側インターフェースのプレフィックスと異なる値に設定し、
前記DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合は、前記LAN側インターフェースのプレフィックスのMSB側から57ビット目から60ビット目のいずれかを前記WAN側インターフェースのプレフィックスと異なる値に設定する、請求項1または2に記載のインターフェース設定プログラム。
【請求項4】
前記第1のインターフェース設定処理のうち、前記DHCPv6-PDサーバから委任されたプレフィックスが前記WAN側インターフェースのプレフィックスと全く異なる場合において、前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスのうちの先頭の値に設定する、請求項1から
3のいずれか1項に記載のインターフェース設定プログラム。
【請求項5】
ISP(Internet Service Provider)ルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるIPv6 CEルータのインターフェース設定方法であって、前記インターフェース設定方法は
前記ISPルータ、または前記ISPルータと接続されるDHCPv6-IA_NAサーバに、プレフィックスまたはIPアドレスの配布について問い合わせするとともに、前記ISPルータと接続されるDHCPv6-PDサーバにプレフィックスの委任について問い合わせする問い合わせ工程と、
前記ISPルータまたは前記DHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布され、かつ、前記DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第1のインターフェース設定工程と、
前記ISPルータまたは前記DHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布され、かつ、前記DHCPv6-PDサーバからプレフィックスが委任されない場合に実行される第2のインターフェース設定工程と、
前記ISPルータおよび前記DHCPv6-IA_NAサーバのどちらからもプレフィックスまたはIPアドレスが配布されず、かつ、前記DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第3のインターフェース設定工程と、を含み、
前記第1のインターフェース設定工程では、
前記WAN側インターフェースのIPアドレスを、前記ISPルータまたは前記DHCPv6-IA_NAサーバから配布されたプレフィックスまたはIPアドレスにもとづいて設定し、
前記DHCPv6-PDサーバから委任されたプレフィックスが1つであって、前記WAN側インターフェースのプレフィックスと同一である場合は、前記LAN側インターフェースのプレフィックスを前記WAN側インターフェースのプレフィックスと同一に設定するとともにNDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
前記DHCPv6-PDサーバから委任されたプレフィックスが複数であって、複数のプレフィックスのうちの1つが前記WAN側インターフェースのプレフィックスと同一である場合は、前記LAN側インターフェースのプレフィックスを前記複数のプレフィックスのうちの前記WAN側インターフェースのプレフィックスと異なる値に設定し、
前記DHCPv6-PDサーバから委任されたプレフィックスが前記WAN側インターフェースのプレフィックスと全く異なる場合は、前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスの中から選択された値に設定し、
前記第2のインターフェース設定工程では、前記LAN側インターフェースのプレフィックスを前記WAN側インターフェースのプレフィックスと同一に設定するとともに、NDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
前記第3のインターフェース設定工程では、
前記DHCPv6-PDサーバから委任されたプレフィックスのビット数が60以上64以下の場合は前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスから1つを選択して設定し、前記WAN側インターフェースにはIPアドレスを設定せず、
前記DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合は、前記WAN側インターフェースのプレフィックスを前記委任されたプレフィックスのうちの先頭の値に設定し、前記LAN側インターフェースのプレフィックスを前記委任されたプレフィックスのうちの前記WAN側インターフェースのプレフィックスと異なる値に設定する、インターフェース設定方法。
【請求項6】
ISPルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるIPv6 CEルータであって、
前記IPv6 CEルータは、さらに、CPU、記憶装置、電源、およびバスを備え、
前記記憶装置に請求項1から4のいずれか1項に記載のインターフェース設定プログラムが内蔵される、IPv6 CEルータ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、IPv6 CEルータのインターフェース設定プログラム、インターフェース設定方法、およびインターフェース設定プログラムを内蔵するIPv6 CEルータに関する。
なおCE(Customer Edge)ルータとは、ISP(Internet Service Provider)ルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるルータを意味する。
【背景技術】
【0002】
IPv6のアドレス管理方法に関しては、以下の発明が出願されている。
【0003】
例えば、特許文献1(特開2012-156670号公報)には、IPアドレスを用いて通信を行う装置におけるIPアドレス管理方法であって、複数の手法でIPアドレスを取得する工程と、前記取得した複数のIPアドレスが同一であった場合に、当該複数のIPアドレスを、それぞれ、前記手法が識別可能に記憶すると共に、前記手法について予め定められた優先順位に従って前記複数のIPアドレスの中から前記通信に使用される有効なIPアドレスを決定して、当該IPアドレスを前記通信に使用されるように設定する工程と、前記設定されたIPアドレスが消滅した場合に、当該消滅したIPアドレスを除く前記記憶したIPアドレスの中から、前記優先順位に従って前記有効なIPアドレスを決定して、当該IPアドレスを前記通信に使用されるように設定する工程を有することを特徴とするIPアドレス管理方法が開示されている。
【0004】
また、特許文献2(特表2017-517161号公報)には、メッシュネットワークにおいてデータパケットをアドレッシングする方法であってネットワーク宛先に伝送するべきパケットを、ルータデバイスで受信することと、前記ネットワーク宛先が前記メッシュネットワーク上の宛先であるかどうかを判断することと、マルチキャストアドレッシングを用いて、前記メッシュネットワークを介してアドレスクエリを送信し、前記ネットワーク宛先と関連付けられたルーティングロケータ(RLOC)を見出すことと、前記パケットに対する宛先アドレスのためのルーティング可能なネットワークアドレスを与えるよう前記RLOCを用いて、前記パケットを転送することと、を含む、メッシュネットワークにおいてデータパケットをアドレッシングする方法が開示されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2012-156670号公報
【文献】特表2017-517161号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
IPv6では、IPv4と異なり、ネットワークインターフェースに対して、IPアドレスを自動設定するための仕組みが考慮され、設計されている。
WAN側インターフェースでISP(Internet Service Provider)に接続され、LAN側インターフェースでホストに接続されるCEルータの場合にも、WAN側インターフェースに対してはIPv6の仕組みに基づいてIPアドレスを自動設定することが可能である。具体的には、ISPルータからのRouter Advertisementメッセージ、もしくはDHCPv6-IA_NAサーバからのAdvertiseメッセージにもとづいて、WAN側インターフェースのIPアドレスは自動設定することができる。しかし、CEルータのLAN側インターフェースに対してはIPアドレスを自動設定するための仕組みがなかった。
DHCPv6-PDサーバはこの、LAN側インターフェースのIPアドレスのプレフィックスを委任するために新たに作成された仕組みであり、CEルータはDHCPv6-PDサーバからのAdvertiseメッセージにもとづいて、LAN側インターフェースで用いるプレフィックスを自動設定することができる。しかし、CEルータのLAN側インターフェースのIPアドレスの設定に関しては以下の課題がある。
1)自動設定されたWAN側インターフェースのプレフィックスと委任されたLAN側インターフェースのプレフィックス範囲とが重なっている場合がある。WAN側インターフェースのプレフィックスとLAN側インターフェースのプレフィックス範囲とが重なっているとは、以下の意味である。WAN側インターフェースのプレフィックスは/64、すなわちIPアドレスのMSBから64ビット目までのすべてが指定されている。一方、LAN側インターフェースのプレフィックスは、例えば/60、すなわちIPアドレスのMSBから60ビット目までが指定されている場合がある。そして、WAN側インターフェースのプレフィックスとLAN側インターフェースのプレフィックス範囲とが重なっているとは、WAN側インターフェースのプレフィックスとLAN側インターフェースのプレフィックスの共通のビット、すなわちIPアドレスのMSBから60ビット目までが同一であることを意味する。
そして、WAN側インターフェースのプレフィックスとLAN側インターフェースのプレフィックス範囲とが重なっている場合には、LAN側インターフェースのプレフィックスのうちの指定されていないビット、すなわち、上記の例でいえば61ビット目から64ビット目までのビットの値をWAN側インターフェースのプレフィックスと異ならせることによって、LAN側インターフェースのプレフィックスをWAN側インターフェースのプレフィックスと異ならせることが必要である。
2)しかし、LAN側インターフェースに委任されるプレフィックスが/64でしかもWAN側インターフェースのプレフィックスと同一である場合は、LAN側インターフェースのプレフィックスとWAN側インターフェースのプレフィックスとを異ならせることができない。この場合はCEルータがNDProxyによって、LAN側ネットワークとWAN側ネットワークとの間の通信を中継しなければならない。
3)また、ISPルータの側にDHCPv6-PDサーバが存在しない場合もある。この場合、CEルータはWAN側インターフェースに割り当てられたプレフィックスをLAN側インターフェースにも使用することになるが、この場合にもCEルータは、NDProxyを行う必要がある。
4)逆に、ISPルータからRAによってWAN側インターフェースのプレフィックスが得られず、かつ、DHCPv6-IA_NAサーバからもWAN側インターフェースのIPアドレスが配布されない場合もある。この場合、WAN側インターフェースのプレフィックスをDHCPv6-PDサーバから委任されたLAN側インターフェースのプレフィックス範囲の中から選択して設定することができるが、ISP(Internet Sevice Provider)の仕様によっては、WAN側インターフェースのプレフィックスの値が指定されているため、LAN側インターフェースのプレフィックスをWAN側インターフェースと重複しないように設定する必要がある。
しかし、従来は、これら1)から4)の課題に対応し、いろいろなネットワーク環境においてIPv6 CEルータのWAN側インターフェースおよびLAN側インターフェースのIPアドレスを自動的に設定する方法、およびプログラムはなかった。
【0007】
特許文献1に記載の発明はIPアドレスを用いて通信を行う装置におけるIPアドレス管理方法の発明であるが、IPv6 CEルータのようにWAN側とLAN側のインターフェースをそなえた通信装置に対するIPアドレスの管理方法は記載されていない。
【0008】
特許文献2に記載の発明はメッシュネットワークのためのアドレッシングおよびルーティング技術の発明であり、本発明が課題とするIPv6 CEルータのWAN側とLAN側のIPv6アドレス管理については記載されていない。
【0009】
本発明の主な目的は、DHCPv6-IA_NAサーバの有無、DHCPv6-PDサーバの有無など、WAN側のネットワーク環境によらず、IPv6 CEルータのインターフェースを自動的に設定する、インターフェース設定方法、およびインターフェース設定プログラムを配布することにある。
本発明のその他の目的は、DHCPv6-IA_NAサーバの有無、DHCPv6-PDサーバの有無など、WAN側のネットワーク環境によらず、IPv6 CEルータのインターフェースを自動的に設定する、インターフェース設定プログラムを内蔵するIPv6 CEルータを配布することにある。
【課題を解決するための手段】
【0010】
(1)
一局面に従うIPv6 CEルータのインターフェース設定プログラムは、ISP(Internet Service Provider)ルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるIPv6 CEルータのインターフェース設定プログラムであって、
ISPルータ、またはISPルータと接続されるDHCPv6-IA_NAサーバに、プレフィックスまたはIPアドレスの配布について問い合わせするとともに、ISPルータと接続されるDHCPv6-PDサーバにプレフィックスの委任について問い合わせする問い合わせ処理と、
ISPルータまたはDHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布され、かつ、DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第1のインターフェース設定処理と、
ISPルータまたはDHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布され、かつ、DHCPv6-PDサーバからプレフィックスが委任されない場合に実行される第2のインターフェース設定処理と、
ISPルータおよびDHCPv6-IA_NAサーバのどちらからもプレフィックスまたはIPアドレスが配布されず、かつ、DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第3のインターフェース設定処理と、を含み、
第1のインターフェース設定処理では、
WAN側インターフェースのIPアドレスを、ISPルータ、またはDHCPv6-IA_NAサーバから配布されたプレフィックスまたはIPアドレスにもとづいて設定し、
DHCPv6-PDサーバから委任されたプレフィックスが1つであって、WAN側インターフェースのプレフィックスと同一である場合は、LAN側インターフェースのプレフィックスをWAN側インターフェースのプレフィックスと同一に設定するとともにNDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
DHCPv6-PDサーバから委任されたプレフィックスが複数であって、複数のプレフィックスのうちの1つがWAN側インターフェースのプレフィックスと同一である場合は、LAN側インターフェースのプレフィックスを複数のプレフィックスのうちのWAN側インターフェースのプレフィックスと異なる値に設定し、
DHCPv6-PDサーバから委任されたプレフィックスがWAN側インターフェースのプレフィックスと全く異なる場合は、LAN側インターフェースのプレフィックスを委任されたプレフィックスの中から選択された値に設定し、
第2のインターフェース設定処理では、LAN側インターフェースのプレフィックスをWAN側インターフェースのプレフィックスと同一に設定するとともに、NDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
第3のインターフェース設定処理では、
DHCPv6-PDサーバから委任されたプレフィックスのビット数が60以上64以下の場合はLAN側インターフェースのプレフィックスを委任されたプレフィックスから1つを選択して設定し、WAN側インターフェースにはIPアドレスを設定せず、
DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合は、WAN側インターフェースのプレフィックスを委任されたプレフィックスのうちの先頭の値に設定し、LAN側インターフェースのプレフィックスを委任されたプレフィックスのうちのWAN側インターフェースのプレフィックスと異なる値に設定する。
【0011】
IPv6のCEルータはISPルータ、DHCPv6-IA_NAサーバ、およびDHCPv6-PDサーバから情報を得て、自らのWAN側インターフェースおよびLAN側インターフェースのIPアドレスの設定、および、必要な場合にはNDProxyの起動を行う。
IPアドレスの設定は、基本的には、WAN側インターフェースについてはISPルータおよびDHCPv6-IA_NAサーバからの情報に基づいて行い、LAN側インターフェースについてはDHCPv6-PDサーバからの情報に基づいて行う。しかし、ISPルータおよびDHCPv6-IA_NAサーバとDHCPv6-PDサーバとは必ずしも連携して動作しているわけではないため、配布または委任されるプレフィックスが重複している場合がある。一局面に従うインターフェース設定プログラムでは、調整することで重複を避けることができる場合は調整をし、重複を避けることができない場合はNDProxyを起動して、WAN側ネットワークとLAN側ネットワークとの通信を中継する。
【0012】
また、ISPルータ、DHCPv6-IA_NAサーバ、およびDHCPv6-PDサーバに情報を問い合わせしても、ISPルータおよびDHCPv6-IA_NAサーバとDHCPv6-PDサーバとのうちの一方から情報が得られない場合もある。このような場合、一局面に従うインターフェース設定プログラムでは、DHCPv6-PDサーバからプレフィックスが得られない場合はLAN側インターフェースのプレフィックスをWAN側インターフェースのプレフィックスと同一に設定するとともにNDProxyを起動し、また、ISPルータおよびDHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが配布されない場合は、LAN側インターフェースに委任されたプレフィックスの中から選択してWAN側インターフェースのプレフィックスを設定する。
このようなネットワーク環境の変化に対応して、IPv6 CEルータの設定をすることは、CEルータを利用する一般的な利用者には不可能であることから、CEルータに、一局面に従うIPv6 CEルータのインターフェース設定プログラムを搭載することの効果は大きい。
【0013】
(2)
第2の発明にかかるインターフェース設定プログラムは、一局面に従うインターフェース設定プログラムにおいて、第1のインターフェース設定処理のうち、WAN側インターフェースのIPアドレスを設定する処理において、ISPルータからプレフィックスが配布された場合には、WAN側インターフェースのIPアドレスをISPルータから配布されたプレフィックスにもとづいて設定する。
【0014】
この場合、ISPルータから配布されるプレフィックスがDHCPv6-IA_NAサーバから配布されるIPアドレスよりも優先されることになる。この理由は以下のとおりである。DHCPv6-IA_NAサーバから配布されたアドレスはすべて管理されており、ISPルータの実装によっては管理外の送信元アドレスのパケットは破棄される可能性もある。これは、DHCPv6-IA_NAサーバによるIPアドレス配布は、CEルータではなく、直接ホストにIPアドレスを配布することを目的としているためである。
第2の発明にかかるインターフェース設定プログラムでは、ISPルータから配布されるプレフィックスを優先することによって、DHCPv6-IA_NAサーバの管理外のパケットが破棄されるリスクを低くしている。
【0015】
(3)
第3の発明にかかるインターフェース設定プログラムは、一局面から第2の発明にかかるインターフェース設定プログラムにおいて、第1のインターフェース設定処理のうち、DHCPv6-PDサーバから委任されたプレフィックスが複数であって、複数のプレフィックスのうちの1つがWAN側インターフェースのプレフィックスと同一である場合において、
DHCPv6-PDサーバから委任されたプレフィックスのビット数が60以上63以下の場合は、LAN側インターフェースのプレフィックスのMSB側から61ビット目から64ビット目のいずれかをWAN側インターフェースのプレフィックスと異なる値に設定し、
DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合は、LAN側インターフェースのプレフィックスのMSB側から57ビット目から60ビット目のいずれかをWAN側インターフェースのプレフィックスと異なる値に設定する。
【0016】
DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合に、LAN側インターフェースのプレフィックスのMSB側から57ビット目から60ビット目のいずれかをWAN側インターフェースのプレフィックスと異なる値に設定するのは、57ビット目から60ビット目のいずれかを異なる値に設定することによって、CEルータをDHCPv6-PDサーバとして動作させる場合に、/60、すなわち61ビット目から64ビット目までを指定しない形でプレフィックスを委任するためである。
【0017】
(4)
第4の発明にかかるインターフェース設定プログラムは、一局面から第3の発明にかかるインターフェース設定プログラムにおいて、第1のインターフェース設定処理のうち、DHCPv6-PDサーバから委任されたプレフィックスがWAN側インターフェースのプレフィックスと全く異なる場合において、LAN側インターフェースのプレフィックスを委任されたプレフィックスのうちの先頭の値に設定する。
【0018】
この場合、委任されたプレフィックスのビット数が少ない、すなわち、プレフィックスの自由度が大きいままでLAN側インターフェースのプレフィックスを設定できる。
【0019】
(5)
他の局面に従うインターフェース設定方法は、ISP(Internet Service Provider)ルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるIPv6 CEルータのインターフェース設定方法であって、インターフェース設定方法は、
ISPルータ、またはISPルータと接続されるDHCPv6-IA_NAサーバに、プレフィックスまたはIPアドレスの提供について問い合わせするとともに、ISPルータと接続されるDHCPv6-PDサーバにプレフィックスの委任について問い合わせする問い合わせ工程と、
ISPルータまたはDHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが提供され、かつ、DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第1のインターフェース設定工程と、
ISPルータまたはDHCPv6-IA_NAサーバからプレフィックスまたはIPアドレスが提供され、かつ、DHCPv6-PDサーバからプレフィックスが委任されない場合に実行される第2のインターフェース設定工程と、
ISPルータ、およびDHCPv6-IA_NAサーバのどちらからもプレフィックスまたはIPアドレスが提供されず、かつ、DHCPv6-PDサーバからプレフィックスが委任された場合に実行される第3のインターフェース設定工程と、を含み、
第1のインターフェース設定工程では、
WAN側インターフェースのIPアドレスを、ISPルータまたはDHCPv6-IA_NAサーバから提供されたプレフィックスまたはIPアドレスにもとづいて設定し、
DHCPv6-PDサーバから委任されたプレフィックスが1つであって、WAN側インターフェースのプレフィックスと同一である場合は、LAN側インターフェースのプレフィックスをWAN側インターフェースのプレフィックスと同一に設定するとともにNDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
DHCPv6-PDサーバから委任されたプレフィックスが複数であって、複数のプレフィックスのうちの1つがWAN側インターフェースのプレフィックスと同一である場合は、LAN側インターフェースのプレフィックスを複数のプレフィックスのうちのWAN側インターフェースのプレフィックスと異なる値に設定し、
DHCPv6-PDサーバから委任されたプレフィックスがWAN側インターフェースのプレフィックスと全く異なる場合は、LAN側インターフェースのプレフィックスを委任されたプレフィックスから選択された値に設定し、
第2のインターフェース設定工程では、LAN側インターフェースのプレフィックスをWAN側インターフェースのプレフィックスと同一に設定するとともに、NDProxyを起動してWAN側ネットワークとLAN側ネットワークとの通信を中継し、
第3のインターフェース設定工程では、
DHCPv6-PDサーバから委任されたプレフィックスのビット数が60以上64以下の場合はLAN側インターフェースのプレフィックスを委任されたプレフィックスの中から1つを選択して設定し、WAN側インターフェースにはIPアドレスを設定せず、
DHCPv6-PDサーバから委任されたプレフィックスのビット数が59以下の場合は、WAN側インターフェースのプレフィックスを委任されたプレフィックスのうちの先頭の値に設定し、LAN側インターフェースのプレフィックスを委任されたプレフィックスのうちのWAN側インターフェースのプレフィックスと異なる値に設定する。
【0020】
他の局面に従うインターフェース設定方法は、一局面に従うインターフェース設定プログラムに対応する方法の発明である。
【0021】
(6)
さらに他の局面に従うIPv6 CEルータは、ISPルータと接続されるWAN側インターフェースと、1または複数のホストと接続されるLAN側インターフェースとを備えるIPv6 CEルータであって、IPv6 CEルータは、さらに、CPU、記憶装置、電源、およびバスを備え、記憶装置に、一局面から第4の発明にかかるインターフェース設定プログラムが内蔵されている。
【0022】
この場合、利用者がIPv6 CEルータの電源を入れる、またはIPv6 CEルータをリセットすることによって、内蔵されたインターフェース設定プログラムが起動し、IPv6 CEルータのWAN側インターフェースおよびLAN側インターフェースのIPアドレスの設定を、さらに、必要な場合はNDProxyの起動を自動で行うことができる。
【図面の簡単な説明】
【0023】
【
図1】IPv6 CEルータおよびその周辺のネットワークを示す模式図である。
【
図2】IPv6 CEルータの模式的ブロック図である。
【
図3】IPv6 CEルータのインターフェース自動設定プログラムのフローチャートである。
【発明を実施するための形態】
【0024】
以下、図面を参照しつつ、本発明の実施形態について説明する。以下の説明では、同一の部品には同一の符号を付す。また、同符号の場合には、それらの名称および機能も同一である。したがって、それらについての詳細な説明は繰り返さないものとする。
【0025】
[実施形態]
図1はIPv6 CEルータ300およびその周辺のネットワークを示す模式図であり、
図2はIPv6 CEルータ300の模式的ブロック図であり、
図3はIPv6 CEルータ300のインターフェース自動設定プログラムのフローチャートである。
【0026】
(IPv6 CEルータ300およびその周辺のネットワークの構成)
図1に示すように、IPv6 CEルータ300はLAN側ネットワーク120とWAN側ネットワーク240とを接続するルータであり、LAN側インターフェース100とWAN側インターフェース200を備える。
LAN側インターフェース100はLAN側ネットワーク120を経由して1または複数のLAN側ホスト110に接続されている。LAN側ホスト110は例えばパーソナルコンピュータ、プリンタなどである。
WAN側インターフェース200はWAN側ネットワーク240を経由してISP(Internet Service Provider)ルータ210に接続され、さらに、ISPルータ210を経由してDHCPv6-IA_NAサーバ220、DHCPv6-PDサーバ230、およびインターネット250に接続される。なお、DHCPv6-IA_NAサーバ220およびDHCPv6-PDサーバ230はISPルータ210に内蔵されている場合もある。また、DHCPv6-IA_NAサーバ220およびDHCPv6-PDサーバ230はそのうちの一方、あるいは両方が存在しない場合もある。
【0027】
(IPv6 CEルータ300の構成)
図2に示すように、IPv6 CEルータ300は、LAN側インターフェース100とWAN側インターフェース200に加えて、CPU310、記憶装置320、電源330、およびバス340を備えている。本発明のインターフェース自動設定プログラムは記憶装置320に保存され、CPU310で実行される。
【0028】
(IPv6インターフェースにおけるIPアドレス自動設定方法)
IPv4の場合と異なり、IPv6では、初めからインターフェースに対するIPアドレス自動設定の仕組みが盛り込まれている。
RA(Router Advertisement)の場合、インターフェースが、リンクローカルIPv6アドレスを設定のうえ、Router Solicitationメッセージを発信すると、ルータからRouter Advertisementメッセージが返信され、そこにIPアドレスの上位ビットに相当するプレフィックスが含まれている。したがって、IPv6インターフェースは、プレフィックスに自らのMACアドレス等からインターフェース識別子を生成し、プレフィックスと組み合わせることで自らのIPアドレスを自動設定することができる。
また、IPv4と同様に、IPv6においてもDHCPサーバからIPアドレスを受け取ることもできる。インターフェースがAll_DHCP_Relay_Agents_and_Serversマルチキャスト宛にSolicitメッセージを発信すると、DHCPv6-IA_NAサーバ220からAdvertiseメッセージが返信され、IPv6のアドレスを自動設定することができる。
【0029】
(IPv6 CEルータ300におけるIPアドレス設定の課題)
IPv6 CEルータ300は、LAN側インターフェース100とWAN側インターフェース200を備えている。このうち、WAN側インターフェース200はISPルータ210に対するホストに相当し、ISPルータ210から配布されるRouter Advertisementメッセージのプレフィックスと自ら生成するインターフェース識別子を組み合わせてIPv6アドレスを生成するか、または、DHCPv6-IA_NAサーバ220から配布されるAdvertiseメッセージのIPv6アドレスを利用することができる。
一方、IPv6 CEルータ300のLAN側インターフェース100は、1または複数のLAN側ホスト110に対してRouter Advertisementメッセージを送信し、LAN側ネットワーク120で用いることのできるプレフィックスを配布する必要があるが、RAあるいはWAN側のDHCPサーバからのAdvertiseメッセージにはLAN側ネットワーク120で用いることのできるプレフィックスは含まれていない。
この、CEルータ300のLAN側ネットワーク120のプレフィックスを委任することを目的として、新たにDHCPv6-PDサーバに関する規定が制定された。DHCPv6-PDサーバの規定によれば、ISPルータ210に接続された(または内蔵された)DHCPv6-PDサーバ230にSolicitメッセージを発信すると、DHCPv6-PDサーバ230からAdvertiseメッセージが返信され、そこに含まれる情報から、LAN側ネットワーク120で用いることのできるプレフィックスを決定することができる。
【0030】
この、ISPルータ210によるRA、またはDHCPv6-IA_NAサーバ220によるWAN側IPアドレスの決定と、DHCPv6-PDサーバ230によるプレフィックスの決定とにより、一見、CEルータ300のIPアドレスなどのインターフェース設定は問題ないと思われるが、しかし、以下のような課題がある。
1)ISPルータ210、またはDHCPv6-IA_NAサーバ220により配布されるWAN側インターフェース200のIPアドレスのプレフィックスとDHCPv6-PDサーバ230により委任されるLAN側インターフェース100のIPアドレスのプレフィックス範囲とが重なっている場合がある。この場合、LAN側インターフェース100のプレフィックスをWAN側インターフェース200のプレフィックスと同一とならないように調整する必要がある。
2)さらに、DHCPv6-PDサーバ230により委任されるLAN側インターフェース100のプレフィックスが/64、すなわち、64ビット全部を指定されている場合には、LAN側インターフェース100のプレフィックスを調整することができないため、WAN側インターフェース200のプレフィックスとLAN側インターフェース100のプレフィックスが同一になってしまう。この場合、ISPルータ210はLAN側ネットワーク120に接続されているLAN側ホスト110のプレフィックスが自分のインターフェースのプレフィックスと同じであるため、LAN側ホスト110に直接パケットを転送しようとするが、実際には途中にCEルータ300があるため、通信できない。CEルータ300は、この問題を解決するために、ISPルータ210から送られるパケットをLAN側ネットワーク120に中継する、すなわち、NDProxy(Neighbor Discovery Proxy)を行う必要がある。
3)また、ISPルータ210の側にDHCPv6-PDサーバ230が存在しない場合もある。この場合、CEルータ300はWAN側インターフェース200に割り当てられたプレフィックスをLAN側インターフェース100にも使用することになるが、この場合にもCEルータ300は、NDProxyを行う必要がある。
4)逆に、ISPルータ210からRAによってWAN側インターフェース200のプレフィックスが得られず、かつ、DHCPv6-IA_NAサーバ220からもWAN側インターフェース200のIPアドレスが配布されない場合もある。この場合、WAN側インターフェース200のプレフィックスをDHCPv6-PDサーバ230から委任されたLAN側インターフェース100のプレフィックス範囲の中から選択して設定することはできるが、ISP(Internet Sevice Provider)の仕様によっては、WAN側インターフェース200のプレフィックスが制限されているため、LAN側インターフェース100のプレフィックスをWAN側と重複しないように調整する必要がある。
【0031】
以上のような課題に対して、CEルータ300の利用者が、WAN側のISPルータ210、DHCPv6-IA_NAサーバ220、およびDHCPv6-PDサーバ230の応答を確認して、CEルータ300の設定を個別に調整することは、非常に困難であり、実質的には不可能である。
本発明は、このような課題に対して、WAN側のISPルータ210、DHCPv6-IA_NAサーバ220、およびDHCPv6-PDサーバ230の応答を確認してCEルータ300設定を自動で行うインターフェース設定方法、およびインターフェース自動設定プログラムの発明である。
【0032】
(IPv6 CEルータ300のインターフェース設定プログラム、および設定方法のフローチャート)
図3のフローチャートに基づき、本発明のインターフェース自動設定プログラムについて説明する。
利用者が、CEルータ300の電源を投入する、もしくはCEルータ300をリセットすると、本発明のインターフェース自動設定プログラムが起動する。
まず、CEルータ300はリンクローカルIPv6アドレスを設定した後、Router Solicitationメッセージを発信する(ステップS1)。
次に、CEルータ300はDHCPv6-IA_NA Solicitメッセージを発信する(ステップS2)。
次に、CEルータ300はDHCPv6-PD Solicitメッセージを発信する(ステップS3)。
次に、Router Solicitationメッセージに対するRouter Advisementメッセージでのプレフィックス配布の有無を確認する(ステップS4)。
Router Advisementメッセージでプレフィックスが配布された場合は、プレフィックスと自ら生成するインターフェース識別子とを組み合わせてWAN側インターフェース200のIPアドレスとして設定する(ステップS5)。
Router Advisementメッセージでプレフィックスが配布されなかった場合は、DHCPv6-IA_NA Solicitメッセージに対するDHCPv6-IA_NA ReplyメッセージでのIPアドレス配布の有無を確認する(ステップS6)。
DHCPv6-IA_NA AdvertiseメッセージでIPアドレスが配布された場合はそれをWAN側インターフェース200のIPアドレスとして設定する(ステップS7)。
なお、本実施形態では、Router Advisementメッセージでプレフィックスが配布されなかった場合にのみ、DHCPv6-IA_NA ReplyメッセージにもとづいてIPアドレスが設定されるが、DHCPv6-IA_NA ReplyメッセージでIPアドレスが配布されなかった場合にのみ、Router AdvisementメッセージのプレフィックスにもとづいてWAN側インターフェース200のIPアドレスが設定されるようにしてもよい。
【0033】
ステップS5またはステップS7でWAN側インターフェース200のIPアドレスが設定された場合、以下のようにしてLAN側インターフェース100のIPアドレスを設定する。
DHCPv6-PD Solicitメッセージに対するDHCPv6-PD Advertiseメッセージを確認する(ステップS8)。
DHCPv6-PD AdvertiseメッセージでLAN側インターフェース100のプレフィックスが委任されない場合は、LAN側インターフェース100のプレフィックスをWAN側インターフェース200のプレフィックスと同じ値とする(ステップS9)。
この場合、ISPルータ210からLAN側ホスト110への通信が遮断されるため、NDProxyを起動する(ステップS10)。
【0034】
ステップS8においてDHCPv6-PD AdvertiseメッセージでLAN側インターフェース100のプレフィックスが委任されている場合は、以下のようにしてLAN側インターフェース100のプレフィックスを設定する。
まず、DHCPv6-PD Advertiseメッセージで委任されたプレフィックス範囲がWAN側インターフェース200のプレフィックスと重なっているかどうかを確認する(ステップS11)。なお、重なっているとは、例えば委任されたプレフィックスが/60、すなわち、IPアドレスのMSBから60ビット目までが指定されていた場合、MSBから60ビット目までの値がWAN側インターフェース200のプレフィックスと等しいことを意味する。
委任されたプレフィックス範囲がWAN側インターフェース200のプレフィックスと重なっていない場合は、LAN側インターフェース100のプレフィックスは委任されたプレフィックス範囲で自由に選択できるので、委任されたプレフィックス範囲の先頭の値をLAN側インターフェース100のプレフィックスとする(ステップS12)。
【0035】
委任されたプレフィックス範囲がWAN側インターフェース200のプレフィックスと重なっており、しかも委任されたプレフィックスが/64の場合(ステップS13)は、WAN側インターフェース200のプレフィックスをそのままLAN側インターフェース100のプレフィックスとする(ステップS14)。
この場合、ISPルータ210からLAN側ホスト110への通信が遮断されるため、NDProxyを起動する(ステップS15)。
【0036】
ステップS13において、委任されたプレフィックスが/64でない場合はLAN側インターフェース100のプレフィックスは選択の自由度があるため、LAN側インターフェース100のプレフィックスをWAN側インターフェース200のプレフィックスと重ならないように設定する。具体的には、委任されたプレフィックスが/60-63、すなわちプレフィックスのビット数が60-63であって、IPアドレスのMSB側から60ビット目ないし63ビット目までが指定されている場合(ステップS16)は、MSB側から61ビット目ないし64ビット目をWAN側インターフェース200のプレフィックスと異ならせる(ステップS17)。なお、IPv6のプレフィックスは/64、すなわち64ビットであり、委任されたプレフィックスが/60-63であるということは、複数のプレフィックスが委任されたことを意味する。
【0037】
また、委任されたプレフィックスが/-59、すなわちIPアドレスのMSB側から59ビット目以上までしか指定されていない場合(ステップS16)は、MSB側から57ビット目ないし60ビット目をWAN側インターフェース200のプレフィックスと異ならせる(ステップS18)。
【0038】
DHCPv6-IA_NA ReplyメッセージでIPアドレスが配布されず、かつ、Router Solicitationメッセージに対するRouter Advisementメッセージでもプレフィックスが配布されない場合(ステップS6)は、以下のようにして、WAN側インターフェース200およびLAN側インターフェース100のIPアドレスを設定する。
DHCPv6-PD Solicitメッセージに対するDHCPv6-PD Advertiseメッセージを確認する(ステップS19)。DHCPv6-PD AdvertiseメッセージでLAN側インターフェース100のプレフィックスが委任されない場合は、IPv6回線でない等、特殊なケースに相当するため、本プログラムはWAN側インターフェース200およびLAN側インターフェース100のIPアドレスを設定しないまま終了する。
【0039】
DHCPv6-PD AdvertiseメッセージでLAN側インターフェース100のプレフィックスが委任された場合で、しかも委任されたプレフィックスがIPアドレスのMSB側から60ビット目ないし64ビット目まで指定されている場合(ステップS20)は、LAN側インターフェース100に委任されたプレフィックスを使用してIPアドレスを設定する(ステップS21)。この場合、WAN側インターフェース200にはIPアドレスの割り当ては不要である。これは、LAN側ホスト110からインターネット250に送信する場合の送信元IPアドレスは、LAN側ホスト110のIPv6グローバルユニキャストアドレスであり、また、CEルータ300からインターネット250に送信する場合も、LAN側インターフェース100のIPアドレスを送信元アドレスとして用いることができるためである。
【0040】
また、委任されたプレフィックスが/-59、すなわちIPアドレスのMSB側から59ビット目以下までしか指定されていない場合(ステップS20)は、ISPがNGN(Neext Generation Network)である可能性がある。NGNでは、IPv4パケットをIPv6パケットの中にカプセル化することにより、IPv6のみのネットワークを通過させるプロトコルであるMAP-E(Mapping of Address and Port Encapsulation)のために、委任されたプレフィックス範囲の先頭をWAN側インターフェース200のIPアドレスとして使用する(ステップS22)ことから、委任されたプレフィックス範囲のうちの先頭以外のプレフィックスをLAN側インターフェース100のIPアドレスのプレフィックスに設定する(ステップS23)。
【0041】
現在はIPv4からIPv6への移行期であり、MAP-EなどIPv4とIPv6の共存のための仕組みも追加されて、IPv6のネットワーク環境は複雑さを増している。このため、これまでは、様々なネットワーク環境においてWAN側インターフェース200およびLAN側インターフェース100のIPアドレス他の設定を自動で行うことのできるCEルータ300はなかった。
これに対して、本発明のインターフェース設定プログラムは、利用者がCEルータ300の電源を投入した場合、もしくはCEルータ300をリセットした場合、プログラムが起動され、DHCP-IA_NA Replyメッセージの応答、Router Advisementの応答、およびDHCPv6-PD Advertiseの応答などに対応して、WAN側インターフェース200およびLAN側インターフェース100のIPアドレス他の設定をすべて自動的に行うことができる。
【0042】
(用語の説明)
ISP(Internet Service Provider)ルータ:インターネットサービスプロバイダが設置するルータで、CEルータのWAN側と接続されている。CEルータにIPv6のプレフィックスを配布する。
CE(Customer Edge)ルータ:家庭内ネットワークをISPルータと接続するルータで、WAN側インターフェースはISPルータと接続され、LAN側インターフェースは家庭内ネットワークと接続されている。
DHCPv6-IA_NAサーバ:CEルータに対して、IPv6の一時的でないアドレスを配布する(Identity Association for Non-temporary Address)。
DHCPv6-PD(Prefix Delegation)サーバ:CEルータに対して、IPv6のプレフィックスを委任する。
IPv6アドレス:64ビットのプレフィックスと64ビットのインターフェース識別子で構成される。ISPルータから配布されるプレフィックス(/64)は64ビットのすべてが指定されているが、DHCPv6-PDサーバから委任されるプレフィックスは64ビットすべてが指定されていない場合があり、例えば/62であれば、MSBから63ビット目と64ビット目は指定されていないため、4種類のプレフィックスが委任されていることになる。
NDProxy:CEルータ上でNDP(Neighbor Discovery Protocol)のパケットを中継(Proxy)する機能のことである。これにより、WAN側インターフェースとLAN側インターフェースのプレフィックスが同じ場合でも、WAN側からLAN側への通信が可能になる。
【0043】
本発明において、ISPルータ210が『ISPルータ』に相当し、WAN側インターフェース200が『WAN側インターフェース』に相当し、LAN側ホスト110が『ホスト』に相当し、LAN側インターフェース100が『LAN側インターフェース』に相当し、CEルータ300が『CEルータ』に相当し、DHCPv6-IA_NAサーバ220が『DHCPv6-IA_NAサーバ』に相当し、DHCPv6-PDサーバ230が『DHCPv6-PDサーバ』に相当し、CPU310が『CPU』に相当し、記憶装置320が『記憶装置』に相当し、電源330が『電源』に相当し、バス340が『バス』に相当し、ステップS1-S3が『問い合わせ処理、問い合わせ工程』に相当し、ステップS4-S7およびステップS11-S18が『第1のインターフェース設定処理、第1のインターフェース設定工程』に相当し、ステップS8-S10が『第2のインターフェース設定処理、第2のインターフェース設定工程』に相当し、ステップS19-S23が『第3のインターフェース設定処理、第3のインターフェース設定工程』に相当し、WAN側ネットワーク240が『WAN側ネットワーク』に相当し、LAN側ネットワーク120が『LAN側ネットワーク』に相当する。
【0044】
本発明の好ましい一実施形態は上記の通りであるが、本発明はそれだけに制限されない。本発明の精神と範囲から逸脱することのない様々な実施形態が他になされることは理解されよう。さらに、本実施形態において、本発明の構成による作用および効果を述べているが、これら作用および効果は、一例であり、本発明を限定するものではない。
【符号の説明】
【0045】
100 LAN側インターフェース
110 LAN側ホスト
120 LAN側ネットワーク
200 WAN側インターフェース
210 ISPルータ
220 DHCPv6-IA_NAサーバ
230 DHCPv6-PDサーバ
240 WAN側ネットワーク
250 インターネット
300 CEルータ
310 CPU
320 記憶装置
330 電源
340 バス
400 CEルータ周辺ネットワーク