JP2017017631A - パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法 - Google Patents
パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法 Download PDFInfo
- Publication number
- JP2017017631A JP2017017631A JP2015134732A JP2015134732A JP2017017631A JP 2017017631 A JP2017017631 A JP 2017017631A JP 2015134732 A JP2015134732 A JP 2015134732A JP 2015134732 A JP2015134732 A JP 2015134732A JP 2017017631 A JP2017017631 A JP 2017017631A
- Authority
- JP
- Japan
- Prior art keywords
- dhcp
- address
- packet
- router
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】パケット伝送装置の起動処理による端末の通信中断時間を短縮する。【解決手段】クライアント端末と、該クライアント端末にIPアドレスを割り当てるサーバとの間の通信から、クライアント識別情報と割当IPアドレスとを含むバインディング情報を記憶部に登録し、受信パケットの送信元IPアドレスが記憶部に登録されていない場合に、該受信パケットを廃棄し、起動時にバインディング情報が記憶されたクライアント端末からの受信パケットの送信元IPアドレスが該バインディング情報のIPアドレスと異なる場合に、サーバに、該受信パケットの送信元のクライアント端末への割当IPアドレスの通知要求を送信する、パケット伝送装置である。【選択図】図10A
Description
本発明は、パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法に関する。
IP(Internet Protocol)ネットワークでは、装置の識別にIPアドレスが用いられ
る。装置へのIPアドレスの割り当ては、静的又は動的に行われる。静的なIPアドレスの割り当ては、管理者が手動で各装置に設定することによって行われる。動的なIPアドレスの割り当てには、例えば、DHCP(Dynamic Host Configuration Protocol)が用
いられる。
る。装置へのIPアドレスの割り当ては、静的又は動的に行われる。静的なIPアドレスの割り当ては、管理者が手動で各装置に設定することによって行われる。動的なIPアドレスの割り当てには、例えば、DHCP(Dynamic Host Configuration Protocol)が用
いられる。
DHCPでは、DHCPサーバにアクセスしてIPアドレスを払い出してもらうことによって、DHCPクライアント端末はIPアドレスを取得する。DHCP等の動的なIPアドレスの割り当て方法を用いることによって、IPネットワークに接続することでIPアドレスが装置に割り当てられるため、装置1台1台にIPアドレスを設定する手間を省くことができる。
DHCPでは、メッセージのやり取りには、ブロードキャストアドレスが用いられる。そのため、基本的に、DHCPのサーバとクライアントとは、同じブロードキャストドメイン(サブネット)内に存在することが求められる。
DHCP Relayエージェントが導入されることによって、DHCPのサーバとクライアントとが、異なるブロードキャストドメインに存在する場合でも、DHCPクライアントはDHCPサーバからIPアドレスを取得することができる。DHCP Relayエージェントは、DHCPクライアントからDHCPメッセージを受信すると、予め登録されているDHCPサーバにDHCPメッセージを転送する、という機能を有する。
DHCP Relayエージェントが導入される場合には、DHCP RelayエージェントにDHCPスヌーピングとIPソースガードとの設定がなされることが多い。DHCPスヌーピングは、DHCPサーバとDHCPクライアントとの間のDHCPメッセージのやり取りをのぞき見する機能である。DHCPスヌーピングが設定されているDHCP Relayエージェントは、DHCPクライアントの識別情報と、該DHCPクライアントに割り当てられているIPアドレスとを含むバインディング情報を取得する。該バインディング情報は、DHCP Relayエージェントにおいて、バインディングテーブルに格納されて管理される。
IPソースガードは、DHCPスヌーピングによって作成されるバインディングテーブルを利用する機能である。IPソースガードが設定されると、DHCP Relayエージェントは、受信パケットの送信元IPアドレスがバインディングテーブルに登録されていないIPアドレスである場合には、該受信パケットを廃棄する。IPソースガードは、DHCP Relayエージェントの、DHCPサーバが接続されるポート以外のポートで有効にすることができる。IPソースガードによって、IPアドレスの成りすましのトラフィックをブロックすることができる。
しかしながら、DHCP Relayエージェントが導入された通信ネットワークシステムでは、以下のような問題が発生する場合がある。
図1は、DHCP Relayエージェントが導入されている通信ネットワークシステムにおいて発生する可能性のある問題の一例を説明するための図である。図1では、DHCPサーバP2とDHCPクライアントであるユーザ端末P3とは、異なるブロードキャストドメインに存在している。また、ブロードキャストドメインの境界に位置するルータP1は、DHCP Relayエージェントとして動作していることを前提とする。図1に示される例では、DHCPv6が用いられている。
また、DHCP Relayエージェントには、DHCPスヌーピングとIPソースガードとの設定が有効になっていることを前提とする。また、図1に示される例では、DHCPサーバP2によって既にユーザ端末P3にIPアドレスが払い出されている状態であることを前提とする。
S1では、ルータP1は、再起動処理を開始する。ルータP1は、例えば、輻輳が発生し、処理負荷が大きくなる場合や、ルータP1の動作が設計通りでない場合等に、管理者によって再起動される。ルータP1は、DHCP Relayエージェントであり、DHCPスヌーピングが有効である。そのため、ルータP1は、配下の各ユーザ端末P3のDHCPバインディング情報が登録されたDHCPバインディングテーブルを保持する。しかしながら、DHCPバインディングテーブルは、揮発性の記憶装置内に保持されるため、ルータP1の再起動によって、消失する。
S2では、ルータP1は、DHCPバインディングテーブルが消失したので、配下のユーザ端末P3に関するDHCPバインディング情報を取得するために、DHCPサーバP2にDHCP_Reconfigureの要求メッセージを送信する。DHCPサーバP2も、DHCPバインディング情報を管理している。DHCP_Reconfigureの要求メッセージは、サーバに対して、DHCPバインディング情報を含む最新の設定情報を要求する際に用いられるメッセージである。
S3では、DHCPサーバP2は、DHCP_Reconfigureの要求メッセージに対する応答として、該当のユーザ端末P3に割り当て中のIPアドレスを通知するDHCP_Reconfigureメッセージを送信する。DHCP_Reconfigureメッセージは、サーバがクライアントに、DHCPバインディング情報を含む最新の設定情報を通知するためのメッセージである。
DHCPサーバP2は、ユーザ端末P3に割り当て中のIPアドレス、すなわち、ユーザ端末P3のDHCPバインディング情報を記憶している。DHCPサーバP2は、ルータP1からのDHCP_Reconfigureの要求メッセージに対して、ユーザ端末P3の最新のDHCPバインディング情報をDHCP_Reconfigureメッセージによって通知する。
S4では、ルータP1は、DHCPサーバP2から受信したDHCP_Reconfi
gureメッセージを対象のユーザ端末P3に中継する。
gureメッセージを対象のユーザ端末P3に中継する。
S5では、ユーザ端末P3は、DHCP_Reconfigureメッセージに対して、DHCP_Renewメッセージを送信する。DHCP_Renewメッセージは、クライアントがサーバに、設定情報の更新を要求するためのメッセージである。なお、ユーザ端末P3は、現状の設定が異なる場合には、DHCP_Reconfigureメッセージ内のDHCPバインディング情報に、設定を更新する。
S6では、ルータP1は、ユーザ端末P3からDHCP_Renewメッセージを受信し、該メッセージに基づいて、DHCPバインディング情報を抽出し、DHCPバインディングテーブルに登録する。DHCPクライアントであるユーザ端末P3から送信されるDHCP_Renewメッセージでは、設定済みのユーザ端末P3のIPアドレスが用いられているからである。
S7では、ルータP1は、ユーザ端末P3からのDHCP_RenewメッセージをDHCPサーバP2に中継する。
S2〜S7の処理が、ルータP1の配下のユーザ端末P3の台数分繰り返し実行される。ルータP1にIPソースガードが設定されている場合には、割り当てられているIPアドレスがルータP1のDHCPバインディングテーブルに登録されるまで、ユーザ端末P3は通信を行えない。また、ユーザ端末P3の数が多いほど、ルータP1の中継処理に係る負荷も大きくなり、ユーザ端末P3のDHCPバインディング情報の登録の処理の進行速度に影響を与える可能性がある。そのため、ユーザ端末P3の数が多いほど、ルータP1の再起動による配下の通信サービス利用中のユーザ端末P3の通信中断時間が長くなる可能性がある。なお、DHCPv6に限定されず、DHCPv4においても、用いられるメッセージの種類が異なるものの、DHCP Relayエージェント、DHCPスヌーピング、IPソースガードが設定されるルータは同様の動作を行うため、同様の問題が生じる可能性がある。
本発明の一態様は、パケット伝送装置の起動処理による端末の通信中断時間を短縮可能なパケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法を提供することを目的とする。
本発明の態様の一つは、クライアント端末と、該クライアント端末にIPアドレスを割り当てるサーバと、パケット伝送装置を含む通信ネットワークシステムである。パケット伝送装置は、クライアント端末とサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、受信パケットの送信元IPアドレスが記憶部に登録されていない場合に、該受信パケットを廃棄する廃棄部と、起動時に記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが記憶部に記憶されたIPアドレスと異なる場合に、サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、を備える。
開示のパケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法によれば、パケット伝送装置の起動処理による端末の通信中断時間を短縮することができる。
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
<比較例>
比較例では、ルータが、DHCPバインディング情報をファイルとして不揮発性の記憶装置に記憶する。ルータは、再起動時に該ファイルを読み込んで、DHCPバインディング情報を揮発性の記憶装置内のバインディングテーブルに登録することによって、各ユーザ端末についてのDHCPバインディング情報の登録時間を短縮する。
比較例では、ルータが、DHCPバインディング情報をファイルとして不揮発性の記憶装置に記憶する。ルータは、再起動時に該ファイルを読み込んで、DHCPバインディング情報を揮発性の記憶装置内のバインディングテーブルに登録することによって、各ユーザ端末についてのDHCPバインディング情報の登録時間を短縮する。
しかしながら、DHCPバインディング情報は、定期的に更新されるので、ルータの再起動のタイミングによっては、ルータの不揮発性の記憶装置内のDHCPバインディング情報が最新でない可能性がある。DHCPバインディング情報は、例えば、DHCP_Renewメッセージがクライアント端末から送信される周期で更新される。
例えば、ユーザ端末に割り当てられるIPアドレスが変更になり、該ユーザ端末とDHCPサーバとのDHCPメッセージのやり取りから、ルータの揮発性の記憶装置に格納されるDHCPバインディング情報が更新されたとする。該DHCPバインディング情報の更新が不揮発性の記憶装置内のDHCPバインディング情報に反映されるまでの間に、ルータの再起動が開始される場合には、不揮発性の記憶装置内のDHCPバインディング情報は更新前のものとなる。また、該当のユーザ端末について、再起動後のルータの保持するDHCPバインディング情報のIPアドレスと、実際のIPアドレスの割り当てとが異なることとなる。この場合には、該当のユーザ端末は、ルータのDHCPバインディングテーブル内のIPアドレスとは異なるIPアドレスを用いることとなり、ルータのIPソースガードの機能によって、該当のユーザ端末からのパケットはルータによって廃棄され
ることとなる。
ることとなる。
そのため、比較例では、ルータは、再起動後、不揮発性の記憶装置から読み込んだDHCPバインディング情報と、DHCPサーバが保持する最新のDHCPバインディング情報と、の整合性を確認する。具体的には、ルータは、再起動後、全ユーザ端末について、DHCP_Reconfigureの要求メッセージを送信する。以降、単に、最新のDHCPバインディング情報、と称する場合には、DHCPサーバが保持するDHCPバインディング情報を示すこととする。
図2A及び図2Bは、比較例における処理のシーケンスの一例を示す図である。図2A及び図2Bでは、通信ネットワークシステムには、ルータD1と、DHCPサーバD2と、ルータD1の配下のユーザ端末#1、#2、#3、#4と、が存在している。ルータD1は、DHCPバインディング情報をファイルとして不揮発性の記憶装置に記憶していることとする。
S11では、ルータD1は、再起動処理を開始する。S12では、ルータD1は、不揮発性の記憶装置からDHCPバインディング情報を読み出し、揮発性の記憶装置内のDHCPバインディングテーブルに登録する。
ユーザ端末#1は、S12の時点でルータD1に登録されているDHCPバインディング情報と最新のDHCPバインディング情報とに差分があり、通信サービスを利用していない状態であるとする。ユーザ端末#2は、S12の時点でルータD1に登録されているDHCPバインディング情報と最新のバインディング情報とに差分がなく、通信サービスを利用していない状態であるとする。ユーザ端末#3は、S12の時点でルータD1に登録されているDHCPバインディング情報と最新のDHCPバインディング情報とに差分がなく、通信サービスを利用している状態であるとする。ユーザ端末#4は、S12の時点でルータD1に登録されているDHCPバインディング情報と最新のDHCPバインディング情報とに差分があり、通信サービスを利用している状態であるとする。
S12の時点で、ルータD1に登録されているDHCPバインディング情報と最新のDHCPバイディング情報とに差分のないユーザ端末#3については、利用中の通信サービスが復旧する。
S13では、ルータD1は、現時点で登録されているDHCPバインディング情報が最新のDHCPバインディング情報と整合性が取れているか不明であるので、ユーザ端末#1〜#4について、DHCP_Reconfigureの要求メッセージをDHCPサーバD2に送信する。
S14では、DHCPサーバD2から、ユーザ端末#1〜#4それぞれについて、DHCP_Reconfigureメッセージが送信され、ルータD1によってそれぞれユーザ端末#1〜#4に中継される。
S15では、ユーザ端末#1〜#4それぞれから、DHCP_Renewメッセージが送信される。ルータD1は、DHCPスヌーピングの機能により、ユーザ端末#1〜#4それぞれについて、中継するDHCP_RenewメッセージからDHCPバインディング情報を更新する。これによって、ルータD1に記憶されていたDHCPバインディング情報と最新のDHCPバインディング情報とで、ユーザ端末#1及び#4のDHCPバインディング情報の整合性が取れる。この時点で、ユーザ端末#4について、利用中の通信サービスが復旧する。
S16では、ルータD1は、ユーザ端末#1〜#4それぞれについて、DHCP_RenewメッセージをDHCPサーバD2に転送する。
S13において、ルータD1がDHCP_Reconfigureの要求メッセージを送信するユーザ端末の順番に所定のルールはないため、どのようなユーザ端末の順番でDHCP_Reconfigureの要求メッセージが送信されるのかは、確定的ではない。例えば、ユーザ端末#1、#2、#3、#4の順番で、ルータD1がDHCP_Reconfigureの要求メッセージを送信する場合には、通信サービス利用中のユーザ端末#4よりも通信サービス未利用のユーザ端末#1及び#2の方がDHCPバインディング情報の整合性が確認される。この場合には、通信サービス利用中のユーザ端末#4のバインディング情報の整合性の確認が後回しにされ、通信サービス利用中のユーザ端末#4の通信サービスの復旧が遅くなる可能性がある。
また、ユーザ端末#3については、ルータD1の不揮発性の記憶装置に保持されていたDHCPバインディング情報と最新のDHCPバインディング情報とに差分はない。そのため、ルータD1がDHCPバインディング情報を不揮発性の記憶装置から読み出して登録することによって、ユーザ端末#3の通信サービスは復旧される。すなわち、ユーザ端末#3については、ルータD1によるDHCP_Reconfigureの要求メッセージの送信がなくとも通信サービスを行うことができ、不要なDHCP_Reconfigureの要求メッセージが送信されていることになる。
<第1実施形態>
第1実施形態では、ルータは、DHCPバインディング情報を不揮発性の記憶装置に記憶し、再起動時に、揮発性の記憶装置内のDHCPバインディングテーブルに登録する。ルータは、揮発性の記憶装置内へのDHCPバインディング情報の登録後、所定時間の間、DHCPサーバへのDHCP_Reconfigureの要求メッセージの送信を停止する。ルータは、該所定時間の間、パケットを受信した場合には、該受信パケットの送信元のクライアントを通信サービス利用中のクライアントとみなし、該クライアントについては、優先的に、DHCP_Reconfigureの要求メッセージをDHCPサーバに送信する。
第1実施形態では、ルータは、DHCPバインディング情報を不揮発性の記憶装置に記憶し、再起動時に、揮発性の記憶装置内のDHCPバインディングテーブルに登録する。ルータは、揮発性の記憶装置内へのDHCPバインディング情報の登録後、所定時間の間、DHCPサーバへのDHCP_Reconfigureの要求メッセージの送信を停止する。ルータは、該所定時間の間、パケットを受信した場合には、該受信パケットの送信元のクライアントを通信サービス利用中のクライアントとみなし、該クライアントについては、優先的に、DHCP_Reconfigureの要求メッセージをDHCPサーバに送信する。
また、ルータは、受信パケットの送信元のクライアントのIPアドレスと、揮発性の記憶装置内のDHCPバインディングテーブル内の該クライアントのIPアドレスと、を比較する。両IPアドレスが一致する場合には、ルータは、DHCPサーバにDHCP_Reconfigureの要求メッセージを送信しない。両IPアドレスが一致しない場合には、ルータは、DHCPサーバに、DHCP_Reconfigureの要求メッセージを送信する。これによって、ルータは、余計なDHCP_Reconfigureの要求メッセージの送信を行わない。
図3は、第1実施形態に係る通信ネットワークシステム100のシステム構成の一例を示す図である。通信ネットワークシステム100は、ルータ1、DHCPサーバ2、複数のユーザ端末3を含む。ユーザ端末3は、DHCPクライアントである。以降、ユーザ端末3のことをDHCPクライアントと称することもある。
DHCPサーバ2は、複数のユーザ端末3とは異なるサブネットに存在する。ルータ1とDHCPサーバ2とは、同じサブネットに接続する。ただし、ルータ1とDHCPサーバ2とは、異なるサブネットに接続していてもよい。
ルータ1は、複数のユーザ端末3のそれぞれと同じサブネットに接続している。なお、複数のユーザ端末3は、すべて同じサブネットに存在していてもよいし、それぞれが異な
るサブネットに存在していてもよい。第1実施形態では、複数のユーザ端末3は、それぞれ、異なるVLAN(Virtual LAN)に存在しており、ルータ1は、物理又は論理インタ
フェースで各VLANを接続していることとする。ルータ1は、「パケット伝送装置」の一例である。ユーザ端末3、DHCPクライアントは、「クライアント端末」の一例である。DHCPサーバ2は、「サーバ」の一例である。
るサブネットに存在していてもよい。第1実施形態では、複数のユーザ端末3は、それぞれ、異なるVLAN(Virtual LAN)に存在しており、ルータ1は、物理又は論理インタ
フェースで各VLANを接続していることとする。ルータ1は、「パケット伝送装置」の一例である。ユーザ端末3、DHCPクライアントは、「クライアント端末」の一例である。DHCPサーバ2は、「サーバ」の一例である。
<装置構成>
図4は、第1実施形態に係るルータ1のハードウェア構成の一例を示す図である。ルータ1は、プロセッサカード110と、パケットブレード120とを備える。プロセッサカード110は、例えば、TCP/IPモデルのレイヤ2以上の処理を行う。パケットブレード120は、例えば、TCP/IPモデルのレイヤ1の処理を行う。
図4は、第1実施形態に係るルータ1のハードウェア構成の一例を示す図である。ルータ1は、プロセッサカード110と、パケットブレード120とを備える。プロセッサカード110は、例えば、TCP/IPモデルのレイヤ2以上の処理を行う。パケットブレード120は、例えば、TCP/IPモデルのレイヤ1の処理を行う。
プロセッサカード110は、例えば、CPU(Central Processing Unit)101、メ
モリ102、ディスクコントローラ103、ディスク104、NPU(Network Processing Unit)105を備える。また、これらはバスにより互いに電気的に接続されている。
モリ102、ディスクコントローラ103、ディスク104、NPU(Network Processing Unit)105を備える。また、これらはバスにより互いに電気的に接続されている。
ディスク104は、様々なプログラムや、各プログラムの実行に際してCPU 101が使用するデータを格納する。ディスク104は、例えば、EPROM(Erasable Programmable ROM)、フラッシュメモリ、又はハードディスクドライブ(Hard Disk Drive)等の不揮発性の記憶装置である。ディスク104は、例えば、オペレーティングシステム(OS)、DHCP Relayエージェントプログラム、その他様々なアプリケーションプログラムを保持する。DHCP Relayエージェントプログラムは、ルータ1をDHCP Relayエージェントとして動作させるためのプログラムである。ディスク104は、DHCPバインディング情報を含むファイル107を格納する。
ディスクコントローラ103は、ディスク104に対するデータの書き込み及び読み出しを制御する。
メモリ102は、CPU 101に、ディスク104に格納されているプログラムをロードする記憶領域および作業領域を提供したり、バッファとして用いられたりする。メモリ102は、例えば、RAM(Random Access Memory)のような揮発性の半導体メモリを含む。メモリ102は、「記憶部」の一例である。
CPU 101は、ディスク104に保持されたOSや様々なアプリケーションプログラムをメモリ102にロードして実行することによって、様々な処理を実行する。CPU
101は、1つに限られず、複数備えられてもよい。
101は、1つに限られず、複数備えられてもよい。
NPU 105は、ネットワーク処理を行うプロセッサである。具体的には、NPU 105は、ルーティング、MAC(Media Access Control)処理等を行う。
パケットブレード120は、ネットワークコントローラ121、NIC(Network Interface Card)122を含む。NIC 122は、ネットワークとの情報の入出力を行うインタフェースである。NIC 122は、複数のユーザ端末3が存在するサブネットに接続するものと、DHCPサーバ2が存在するネットワークに接続するものと、の少なくとも2つが備えられる。
ネットワークコントローラ121は、例えば、TCP/IPモデルのレイヤ1の処理、すなわち、物理処理を行う。具体的には、NIC 122に外部から入力される電気信号をフレームの形に変換したり、逆に、フレームを電気信号に変換してNIC 122に出力したりする。
なお、図4に示されるルータ1のハードウェア構成は、一例であり、上記に限られず、実施の形態に応じて適宜構成要素の省略や置換、追加が可能である。例えば、ルータ1は、可搬記録媒体駆動装置を備え、可搬記録媒体に記録されたプログラムを実行してもよい。可搬記録媒体は、例えば、SDカード、miniSDカード、microSDカード、USB(Universal Serial Bus)フラッシュメモリ、CD(Compact Disc)、DVD(Digital Versatile Disc)、Blu−ray(登録商標) Disc、又はフラッシュメモリカードのような記録媒体である。
DHCPサーバ2は、例えば、専用又は汎用のコンピュータであって、CPU、メモリ、ディスク、ネットワークインタフェース等を備える。ユーザ端末3は、例えば、PC(Personal Computer)、スマートフォン、タブレット端末等である。ユーザ端末3は、C
PU、メモリ、ディスク、ネットワークインタフェース、ディスプレイ、タッチパネルやキーボード等の入力装置を備える。
PU、メモリ、ディスク、ネットワークインタフェース、ディスプレイ、タッチパネルやキーボード等の入力装置を備える。
図5は、ルータ1の機能構成の一例を示す図である。ルータ1は、機能構成として、DHCP制御部11と、転送制御部12と、を有する。DHCP制御部11は、CPU 101がDHCP Relayエージェントプログラムを実行することによって達成される機能構成である。転送制御部12は、パケットブレード120に相当する。
DHCP制御部11は、DHCP Relayエージェント部13、DHCPスヌーピング部14、IPソースガード部15、DHCPバインディング制御部16、DHCPバインディングテーブル17、Reconfigureチェックテーブル18を含む。DHCPバインディングテーブル17及びReconfigureチェックテーブル18は、メモリ102の記憶領域に格納されている。
DHCP Relayエージェント部13は、DHCP Relayエージェントとして、DHCPメッセージの中継処理を行う。例えば、DHCPv6では、DHCP Relayエージェント部13は、DHCPクライアントとDHCPサーバ2との間のDHCPメッセージの中継の際に、該DHCPメッセージの宛先及び送信元IPアドレスの書き換えを行う。中継処理が行われたDHCPメッセージは、転送制御部120に出力され、転送制御部120によってネットワークに送出される。
DHCPスヌーピング部14は、受信されたDHCPメッセージを覗き見て、DHCPバインディング情報を取得し、DHCPバインディングテーブル17に登録する。DHCPスヌーピング部14が覗き見る対象のDHCPメッセージは、例えば、クライアントが送信するDHCPメッセージの一つであるDHCP_Renewメッセージである。
DHCP_Renewメッセージには、例えば、DHCPクライアントのMACアドレス、該DHCPクライアントに割り当てられているIPアドレス、DHCPクライアントが属するVLANのVLAN ID等が含まれている。ただし、DHCPスヌーピング部14が覗き見る対象のDHCPメッセージは、DHCP_Renewメッセージに限定されない。DHCPクライアントのMACアドレス、DHCPクライアントに割り当てられたIPアドレス、DHCPクライアントが属するVLANのVLAN ID等を含むDHCPメッセージであればよい。
DHCPスヌーピング部14は、受信したDHCPメッセージに基づいて、クライアント識別情報と、該DHCPクライアントに払い出されたIPアドレスと、を取得する。クライアント識別情報は、例えば、MACアドレス、受信ポートとVLAN IDとの組み合わせ、等の、クライアントを一意に識別可能な情報である。DHCPスヌーピング部1
4は、該DHCPバインディング情報をメモリ102内のDHCPバインディングテーブル17に格納する。
4は、該DHCPバインディング情報をメモリ102内のDHCPバインディングテーブル17に格納する。
DHCPバインディングテーブル17に、すでに、同じクライアント識別情報を含むDHCPバインディング情報が格納されている場合には、DHCPスヌーピング部14は、新しいDHCPバインディング情報で上書きする。これによって、DHCPバインディングテーブル17が更新される。DHCPスヌーピング部14は、「登録部」の一例である。
IPソースガード部15は、パケットを受信した場合に、DHCPバインディングテーブル17を参照し、受信パケットの送信元IPアドレスがDHCPバインディングテーブル17に登録されているか否かを判定する。受信パケットの送信元IPアドレスがDHCPバインディングテーブル17に登録されていない場合には、IPソースガード部15は、該受信パケットを破棄する。受信パケットの送信元IPアドレスがDHCPバインディングテーブル17に登録されている場合には、IPソースガード部15は、該受信パケットを転送部19に出力する。IPソースガード部15は、「廃棄部」の一例である。
DHCPバインディング制御部16は、例えば、DHCPスヌーピング部14によって、メモリ102内のDHCPバインディングテーブル17のDHCPバインディング情報が更新される場合に、同じ情報を用いて、ディスク104内のファイル107内のDHCPバインディング情報を更新する。DHCPバインディング情報の更新周期は、例えば、クライアントがDHCP_Renewメッセージ等を送信する周期と同じであり、数時間、一日、又は、一週間に一回という周期である。
DHCPバインディング制御部16は、ルータ1が再起動する際に、ディスク104のファイル107からDHCPバインディング情報を読み出し、メモリ102内のDHCPバインディングテーブル17とReconfigureチェックテーブル18とに登録する。
DHCPバインディング制御部16は、再起動完了後から所定時間経過するまでの間に受信するパケットの送信元のユーザ端末3を通信サービス利用中のクライアントとみなす。DHCPバインディング制御部16は、受信パケットの送信元のクライアントについて、DHCPサーバ2にDHCP_Reconfigureの要求メッセージを送信する。DHCPバインディング制御部16は、「制御部」の一例である。DHCP_Reconfigureの要求メッセージは、「割り当て中のIPアドレスの通知要求」の一例である。
ただし、受信パケットの送信元IPアドレスがメモリ102内のReconfigureチェックテーブル18に登録されている場合には、DHCPバインディング制御部16は、DHCPサーバ2にDHCP_Reconfigureの要求メッセージを送信しない。この場合には、DHCPバインディング制御部16は、IPソースガード部15に受信パケットを出力する。該受信パケットの送信元IPアドレスは、DHCPバインディングテーブル17に登録されているので、IPソースガード部15は、該受信パケットの転送を許可する。
ルータ1の再起動完了後から所定時間経過後は、DHCPバインディング制御部16は、DHCP_Reconfigureの要求メッセージを送信していないクライアントについて、DHCP_Reconfigureの要求メッセージをDHCPサーバ2に送信する。DHCPバインディング制御部16は、DHCP_Reconfigureの要求メッセージを送信したか否かを、後述のReconfigureチェックテーブル18に
よって管理する。
よって管理する。
なお、DHCPバインディング制御部16が動作している間は、DHCPバインディング制御部16の処理は、IPソースガード部15に優先して行われることとする。
転送制御部12は、転送部19を含む。転送部19は、ネットワークコントローラ121に相当する。転送部19は、NIC 122とDHCP制御部11との間のパケットの転送を行う。
図6は、Reconfigureチェックテーブル18の一例である。Reconfigureチェックテーブル18は、メモリ102の記憶領域に格納される。Reconfigureチェックテーブル18のエントリは、DHCPバインディング情報とReconfigure Stateとの項目を含む。DHCPバインディング情報は、さらに、クライアント識別情報とIPアドレスとの項目を含む。
図6に示される例では、クライアント識別情報として、クライアントが接続するルータ1のポート番号と、クライアントが属するVLAN IDとが用いられている。第1実施形態では、ユーザ端末#1〜#4はそれぞれ異なるVLANに属していることが想定されているため、ポート番号とVLAN IDとで、ユーザ端末を一意に識別可能である。ただし、クライアント識別情報は、MACアドレスが用いられてもよい。IPアドレスの項目には、クライアント識別情報が示すクライアントに割り当てられたIPアドレスが格納される。
Reconfigure Stateには、「空白」、「1」、「2」のいずれかの値が入る。Reconfigure Stateが「空白」の場合には、該当のDHCPバインディング情報のDHCPクライアントについて、DHCP_Reconfigureの要求メッセージがDHCPサーバ2に送信されていないことが示される。以降、DHCPバインディング情報について、DHCP_Reconfigureの要求メッセージがDHCPサーバ2に送信され、最新のDHCPバインディング情報との整合性が確認されるまでの処理を、DHCP整合性確認処理と称する。すなわち、Reconfigure
Stateの項目が「空白」であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が未実施であることを示す。
Stateの項目が「空白」であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が未実施であることを示す。
Reconfigure Stateの値が「1」であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が実施中であることを示す。より具体的には、該当のDHCPバインディング情報について、DHCPサーバ2にDHCP_Reconfigureの要求メッセージが送信されており、該当のクライアントからのDHCP_Renewメッセージは受信されていない状態である。
Reconfigure Stateの値が「2」であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が完了したことを示す。すなわち、Reconfigure Stateの値が「2」であることは、該当のクライアントについて、ルータ1が保持するDHCPバインディング情報と最新のDHCPバインディング情報との整合性が取れている状態であることを示す。
Reconfigureチェックテーブル18内のDHCPバインディング情報は、DHCPバインディングテーブル17と同じ構造である。そのため、DHCPバインディング制御部16は、再起動時、ディスク104内のDHCPバインディング情報のメモリ102内のDHCPバインディングテーブル17への登録とともに、Reconfigureチェックテーブル18へも登録するようにしてもよい。又は、DHCPバインディング
制御部16は、DHCPバインディングテーブル17へのDHCPバインディング情報の登録後に、DHCPバインディングテーブル17をコピーして、Reconfigureチェックテーブル18を作成してもよい。又は、DHCPバインディング制御部16は、DHCPバインディングテーブル17に、Reconfigure Stateの項目を追加して、Reconfigureチェックテーブル18として取り扱ってもよい。
制御部16は、DHCPバインディングテーブル17へのDHCPバインディング情報の登録後に、DHCPバインディングテーブル17をコピーして、Reconfigureチェックテーブル18を作成してもよい。又は、DHCPバインディング制御部16は、DHCPバインディングテーブル17に、Reconfigure Stateの項目を追加して、Reconfigureチェックテーブル18として取り扱ってもよい。
なお、DHCPバインディングテーブル17の更新は、DHCPスヌーピング部14によって行われる。DHCPバインディング制御部16は、DHCPバインディングテーブル17を監視し、DHCPバインディングテーブル17が更新された場合には、Reconfigureチェックテーブル18に該更新を反映させる。
図7は、Reconfigureチェックテーブル18のReconfigure Stateの値の遷移の一例を示す図である。Reconfigure Stateの値は、DHCP整合性確認処理の進行具合を示す。
Reconfigure Stateの初期値は、空白である。Reconfigure Stateの値が空白であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が未実施であることを示す。
Reconfigure Stateの値が1であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が実施中であることを示す。Reconfigure Stateの値が、空白から1に遷移するのは、DHCPサーバ2に対して、該当のDHCPバインディング情報についてのDHCP_Reconfigureの要求メッセージが送信された場合である。
DHCP_Reconfigureの要求メッセージが送信されるのは、以下の2つの場合がある。一つ目は、再起動完了から所定時間経過までの間に受信されたパケットであって、該受信パケットの送信元IPアドレスが、Reconfigureチェックテーブル18の該当のDHCPバインディング情報のIPアドレスに一致しない場合である。二つ目は、再起動完了から所定時間経過後もReconfigure Stateの値が空白である場合である。所定時間は、例えば、10分等で、管理者によって任意に決定される。
Reconfure Stateの値が2であることは、該当のDHCPバインディング情報について、DHCP整合性確認処理が実施済みであることを示す。Reconfigure Staeteの値が、1から2に遷移するのは、該当のDHCPバインディング情報に対応するクライアントからDHCP_Renewメッセージが受信され、該当のDHCPバインディング情報が更新された場合である。
Reconfigure Stateの値は、空白から2に遷移することもある。Reconfigure Stateの値が空白から2に遷移するのは、再起動完了後から所定時間経過までの間に受信されたパケットの送信元IPアドレスが、Reconfigureチェックテーブル18の該当DHCPバインディング情報のIPアドレスと一致する場合である。この場合には、該当受信パケットの送信元であるユーザ端末3のDHCPバインディング情報と最新のDHCPバインディング情報との整合性が取れている。そのため、DHCPサーバ2に対して、該当のDHCPバインディング情報についてDHCP整合性確認処理は実施されない。
図7に示されるように、DHCP整合性確認処理の進行状況がReconfigure
Stateの値で示されることによって、DHCPバインディング制御部16は、各D
HCPバインディング情報の整合性の確認状況を把握することができる。
Stateの値で示されることによって、DHCPバインディング制御部16は、各D
HCPバインディング情報の整合性の確認状況を把握することができる。
<処理の流れ>
図8A及び図8Bは、DHCPバインディング制御部16のルータ1の再起動時の処理のフローチャートの一例である。なお、第1実施形態において、再起動とは、ルータ1が工場出荷時の設定以外の設定で起動されることを示す。より具体的には、第1実施形態において、再起動とは、ディスク104にルータ1の設定ファイルが記憶されている状態で、起動することを示す。
図8A及び図8Bは、DHCPバインディング制御部16のルータ1の再起動時の処理のフローチャートの一例である。なお、第1実施形態において、再起動とは、ルータ1が工場出荷時の設定以外の設定で起動されることを示す。より具体的には、第1実施形態において、再起動とは、ディスク104にルータ1の設定ファイルが記憶されている状態で、起動することを示す。
図8A及び図8Bに示される処理は、ルータ1が起動した場合に開始される。なお、図8A及び図8Bの処理の主体は、実際には、DHCP Relayエージェントプログラムを実行するCPU 101であるが、便宜上、DHCPバインディング制御部16を主体として説明する。以降のフローチャートについても同様である。
OP1では、DHCPバインディング制御部16は、ディスク104内にDHCPバインディング情報を含むファイル107が記憶されているか否かを判定する。ディスク104内にDHCPバインディング情報を含むファイル107が記憶されている場合には(OP1:YES)、処理がOP2に進む。ディスク104内にDHCPバインディング情報を含むファイル107が記憶されていない場合には(OP1:NO)、図8Aに示される処理が終了する。
OP2では、DHCPバインディング制御部16は、ディスク104内のファイル107からDHCPバインディング情報を読み出し、メモリ102内のDHCPバインディングテーブル17に登録する。次に処理がOP3に進む。
OP3では、DHCPバインディング制御部16は、再起動完了後から所定時間経過したか否かを判定する。再起動完了後から所定時間経過していない場合には(OP3:NO)、処理がOP4に進む。再起動完了後から所定時間経過している場合には(OP3:YES)、処理がOP11に進む。
OP4からOP10は、再起動完了から所定時間経過するまでの処理である。OP4では、DHCPバインディング制御部16は、ユーザ端末3からのパケットを受信する。次に処理がOP5に進む。
OP5では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18内の受信パケットに該当するDHCPバインディング情報に対応するReconfigure Stateの値を参照する。該当のReconfigure Stateの値が空白である場合には、処理がOP6に進む。該当のReconfigure Stateの値が1又は2である場合には、処理がOP3に進む。
なお、該当のReconfigure Stateの値が1である場合には、該当のユーザ端末3についてDHCP整合性確認処理が実施中であるため、OP4における受信パケットは、ルータ1にバッファされ、処理の待機状態となる。DHCP整合性確認処理が完了し、Reconfigure Stateの値が2になると、OP4における受信パケットについて、通常の転送処理が行われる。通常の転送処理とは、IPソースガード部15によるDHCPバインディンテーブル17を用いたフィルタリング処理の後、転送部19によってネットワークに出力される処理である。
該当のReconfigure Stateの値が2である場合には、該当のユーザ端末3についてDHCP整合性確認処理が実施済みであるため、OP4における受信パケッ
トについて、通常の転送処理が行われる。
トについて、通常の転送処理が行われる。
OP6では、DHCPバインディング制御部16は、受信パケットの送信元IPアドレスと、Reconfigureチェックテーブル18内の受信パケットに該当するDHCPバインディング情報のIPアドレスと、が一致するか否かを判定する。両IPアドレスが一致する場合には(OP6:YES)、処理がOP10に進む。両IPアドレスが一致しない場合には(OP6:NO)、処理がOP7に進む。
OP7では、DHCPバインディング制御部16は、該当のDHCPバインディング情報について、DHCPサーバ2にDHCP_Reconfigureの要求メッセージを送信する。次に処理がOP8に進む。
OP8では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18の該当のReconfigure Stateの項目に「1」を入力する。次に処理がOP9に進む。
OP9では、DHCPバインディング制御部16は、該当のユーザ端末3からDHCP_Renewメッセージの受信を契機に、DHCPスヌーピング部14によって、DHCPバインディングテーブル17の該当DHCPバインディング情報のIPアドレスが更新されたことを検知する。DHCPバインディング制御部16は、DHCPバインディングテーブル17の更新をReconfigureチェックテーブル18に反映させる。次に処理がOP10に進む。
OP10では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18の該当のReconfigure Stateの項目に「2」を入力する。これによって、該当のDHCPバインディング情報についてのDHCP整合性確認処理が完了する。次に処理がOP3に進む。
図8BのOP11からOP15は、再起動完了から所定時間経過した後の処理である。OP11では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18の全てのReconfigure Stateの項目に「2」が格納されているか否かを判定する。
Reconfigureチェックテーブル18の全てのReconfigure Stateの項目に「2」が格納されている場合には(OP11:YES)、図8Bに示される処理が終了する。すべてのDHCPバインディング情報についてDHCP整合性確認処理が完了しているためである。
Reconfigureチェックテーブル18の全てのReconfigure Stateの項目に「2」が格納されていない場合には(OP11:NO)、処理がOP12に進む。
OP12では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18のReconfigure Stateの値が空白であるDHCPバインディング情報について、DHCP_Reconfigureの要求メッセージを送信する。次に処理がOP13に進む。
OP13では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18の該当のDHCPバインディング情報のReconfigure Stateの項目に「1」を入力する。次に処理がOP14に進む。
OP14では、DHCPバインディング制御部16は、該当のユーザ端末3からDHCP_Renewメッセージの受信を契機に、DHCPスヌーピング部14によって、DHCPバインディングテーブル17の該当DHCPバインディング情報のIPアドレスが更新されたことを検知する。DHCPバインディング制御部16は、DHCPバインディングテーブル17の更新をReconfigureチェックテーブル18に反映させる。次に処理がOP15に進む。
OP15では、DHCPバインディング制御部16は、Reconfigureチェックテーブル18の該当のReconfigure Stateの項目に「2」を入力する。これによって、該当のDHCPバインディング情報についてのDHCP整合性確認処理が完了する。その後、図8Bに示される処理が終了する。
なお、図8A及び図8BのOP3において、再起動完了から所定時間経過しているか否かが判定される場合の再起動完了とは、例えば、ディスク104内のDHCPバインディング情報のメモリ102内のDHCPバインディングテーブル17への登録完了である。ただし、これに限定されない。
図9は、IPソースガード部15の処理のフローチャートの一例である。図9に示される処理は、ルータ1の起動とともに開始され、ルータ1の稼働中は繰り返し実行される。ただし、IPソースガードが有効に設定されていることを条件とする。図9に示される処理の主体は、実際には、DHCP Relayエージェントプログラムを実行するCPU
101であるが、便宜上、IPソースガード部15を主体として説明される。
101であるが、便宜上、IPソースガード部15を主体として説明される。
OP21では、IPソースガード部15は、パケットを受信する。次に処理がOP22に進む。
OP22では、IPソースガード部15は、受信パケットの送信元のクライアント識別情報に対応するDHCPバインディング情報がDHCPバインディングテーブル17に含まれているか否かを判定する。受信パケットの送信元のクライアント識別情報に対応するDHCPバインディング情報がDHCPバインディングテーブル17に含まれている場合には(OP22:YES)、処理がOP23に進む。受信パケットの送信元のクライアント識別情報に対応するDHCPバインディング情報がDHCPバインディングテーブル17に含まれていない場合には(OP22:NO)、処理がOP25に進む。
OP23では、IPソースガード部15は、受信パケットの送信元IPアドレスが、該受信パケットの送信元のクライアント識別情報に対応するDHCPバインディング情報のIPアドレスと一致するか否かを判定する。両IPアドレスが一致する場合には(OP23:YES)、処理がOP24に進む。両IPアドレスが一致しない場合には(OP23:NO)、処理がOP25に進む。
OP24では、受信パケットの送信元IPアドレスがDHCPバインディング情報に含まれるIPアドレスと一致しているので、IPソースガード部15は、受信パケットの転送を決定し、転送部19に出力する。受信パケットは、転送部19によって転送される。その後、図9に示される処理が終了する。
OP25では、受信パケットに該当するDHCPバインディング情報がない、又は、受信パケットの送信元IPアドレスが該当のDHCPバインディング情報のIPアドレスと一致しないので、IPソースガード部15は、入力パケットを廃棄する。その後、図9に示される処理が終了する。
なお、DHCPの各種メッセージについては、IPソースガード部15の処理の前に、DHCP Relayエージェント部13による転送処理が行われる。そのため、DHCPの各種メッセージは、実質的には、IPソースガード部15の処理対象にはならない。
<具体例>
図10A、図10B、図10C、及び図10Dは、通信ネットワークシステム100における具体例の一つにおける処理のシーケンスの一例を示す図である。図10A〜図10Dでは、ルータ1の再起動後の処理の流れについて説明される。
図10A、図10B、図10C、及び図10Dは、通信ネットワークシステム100における具体例の一つにおける処理のシーケンスの一例を示す図である。図10A〜図10Dでは、ルータ1の再起動後の処理の流れについて説明される。
S21では、ルータ1は再起動処理を開始する。S22では、ルータ1は、ディスク104内のDHCPバインディング情報をメモリ102内のDHCPバインディングテーブル17に登録する(図8A、OP2)。
S22の時点で、ユーザ端末#1は、ルータ1に登録されたDHCPバインディング情報と最新のDHCPバインディング情報とに差分があり、通信サービスは利用していないとする。ユーザ端末#2は、ルータ1に登録されたDHCPバインディング情報と最新のDHCPバインディング情報とに差分がなく、通信サービスは利用していないとする。ユーザ端末#3は、ルータ1に登録されたDHCPバインディング情報と最新のDHCPバインディング情報とに差分がなく、通信サービスの利用中であるとする。ユーザ端末#4は、ルータ1に登録されたDHCPバインディング情報と最新のDHCPバインディング情報とに差分があり、通信サービスの利用中であるとする。
S23では、通信サービス利用中のユーザ端末#3が、通信サービスのパケットを送信する。ルータ1は、ユーザ端末#3からのパケットを受信する(図8A、OP4)。ユーザ端末#3からのパケットの送信元IPアドレスは、Reconfigureチェックテーブル18内のDHCPバインディング情報のIPアドレスと一致する(図8A、OP6:YES)。そのため、ルータ1は、Reconfigureチェックテーブル18のユーザ端末#3のReconfigure Stateに「2」を入力する(図8A、OP10)。
ユーザ端末#3からの受信パケットの送信元IPアドレスは、DHCPバインディングテーブル17内に登録されているので(図9、OP22:YES、OP23:YES)、ルータ1は、該受信パケットを宛先に転送する(図9、OP24)。
S24では、通信サービス利用中のユーザ端末#4が、通信サービスのパケットを送信する。ルータ1は、ユーザ端末#4からのパケットを受信する(図8A、OP4)。
ユーザ端末#4からのパケットの送信元IPアドレスは、Reconfigureチェックテーブル18内のDHCPバインディング情報のIPアドレスと一致しない(図8A、OP6:NO)。S25では、ルータ1は、ユーザ端末#4のDHCPバインディング情報について、DHCP_Reconfigureの要求メッセージを送信し(図8A、OP7)、ユーザ端末#4のReconfigure Stateに「1」を入力する(図8A、OP8)。ユーザ端末#4からのパケットは、一旦、バッファされる。
図10BのS26では、DHCPサーバ2は、ルータ1からのDHCP_Reconfigureの要求メッセージに対して、DHCP_Reconfigureメッセージを送信する。S27では、ルータ1は、DHCP_Reconfigureメッセージをユーザ端末#4に中継する。
S28では、ユーザ端末#4は、DHCP_Reconfigureメッセージに対する応答として、DHCP_Renewメッセージを送信する。
S29では、ルータ1は、ユーザ端末#4が送信したDHCP_Renewメッセージを受信し、該DHCP_Renewメッセージの送信元IPアドレスで、ユーザ端末#4のDHCPバインディング情報のIPアドレスを更新する(図8A、OP9)。また、ルータ1は、ユーザ端末#4のバインディング情報に対応するReconfigure Stateの値を「1」から「2」に更新する(図8A、OP10)。
S24においてユーザ端末#4から送信され、ルータ1にバッファされていたパケットは、S29におけるDHCPバインディング情報の更新を契機に、転送処理が開始される。バッファされていたパケットの送信元IPアドレスは、DHCPバインディングテーブル17に登録されたため(図9、OP22:YES、OP23:YES)、バッファされていたパケットは、ルータ1によって宛先に転送される(図9、OP24)。
S30では、ルータ1は、DHCP_RenewメッセージをDHCPサーバ2に中継する。
図10CのS31では、ルータ1は、再起動完了から所定時間経過したことを検知する(図8A、OP3:YES)。ユーザ端末#1、#2は、通信サービス利用中ではないため、再起動完了から所定時間経過するまでの間に、ユーザ端末#1、#2からの通信サービスのパケットは送信されず、Reconfigure Stateは空白のままである。
S32、S33のそれぞれでは、ルータ1は、Reconfigure Stateの値が空白であるユーザ端末#1、#2について、DHCPサーバ2に対して、DHCP_Reconfigureの要求メッセージを送信する(図8B、OP12)。
S34では、ルータ1は、ユーザ端末#1、#2のReconfigure Stateの値に「1」を入力する(図8B、OP13)。
S35、S36のそれぞれでは、DHCPサーバ2は、ユーザ端末#1、#2に対して、DHCP_Reconfigureメッセージを送信する。
図10DのS37、S38のそれぞれでは、ルータ1が、DHCPサーバ2からのDHCP_Reconfigureメッセージを、ユーザ端末#1、#2に中継する。S39、S40では、それぞれ、ユーザ端末#1、#2は、DHCP_Reconfigureメッセージに対する応答として、DHCP_Renewメッセージを送信する。
S41では、ルータ1は、ユーザ端末#1、#2それぞれが送信したDHCP_Renewメッセージを受信し、該DHCP_Renewメッセージの送信元IPアドレスで、ユーザ端末#1、#2のDHCPバインディング情報のIPアドレスを更新する(図8B、OP14)。なお、ユーザ端末#2は、ルータ1に登録されているDHCPバインディング情報のIPアドレスと最新のDHCPバインディング情報とに差分がないので、更新後も同じIPアドレスとなる。
また、S41では、ルータ1は、ユーザ端末#1、#2それぞれのDHCPバインディング情報に対応するReconfigure Stateの値を「1」から「2」に更新する(図8B、OP15)。
S42、S43のそれぞれでは、ルータ1は、DHCP_RenewメッセージをDHCPサーバ2に中継する。
<第1実施形態の作用効果>
図10A〜図10Dでは、ユーザ端末#1〜#4の中で最初に、通信サービス利用中で、且つ、ルータ1に登録されているDHCPバインディング情報と最新のDHCPバインディング情報とに差分のあるユーザ端末#4について、DHCP整合性確認処理が行われる。一方、通信サービス利用中でないユーザ端末#1、#2については、ルータ1の再起動完了から所定時間経過後に行われる。これによって、ルータ1の起動処理による通信サービス利用中のユーザ端末3の通信切断から復旧までの時間をより短縮することができる。
図10A〜図10Dでは、ユーザ端末#1〜#4の中で最初に、通信サービス利用中で、且つ、ルータ1に登録されているDHCPバインディング情報と最新のDHCPバインディング情報とに差分のあるユーザ端末#4について、DHCP整合性確認処理が行われる。一方、通信サービス利用中でないユーザ端末#1、#2については、ルータ1の再起動完了から所定時間経過後に行われる。これによって、ルータ1の起動処理による通信サービス利用中のユーザ端末3の通信切断から復旧までの時間をより短縮することができる。
また、通信サービス利用中であり、且つ、ルータ1に登録されているDHCPバインディング情報と最新のDHCPバインディング情報とに差分のないユーザ端末#3については、DHCP整合性確認処理は実施されない。これによって、余計なDHCP整合性確認処理が実施されないことにより、DHCP_ReconfigureメッセージやDHCP_Renewメッセージの中継及びアドレス変換等のルータ1に係る負荷を削減することができる。ルータ1に係る負荷を削減することによって、ルータ1の再起動による通信サービス利用中のユーザ端末3の通信切断から復旧までの時間をより短縮することができる。
<その他>
第1実施形態では、ルータ1の再起動時に、上述のDHCP整合性確認処理が行われることが説明された。第1実施形態では、ルータ1の再起動とは、工場出荷時の状態からの起動ではないことを示す。そのため、第1実施形態で説明された技術の適用は、稼働中のルータ1の電源が切断された後に自動的に起動する場合に限定されない。
第1実施形態では、ルータ1の再起動時に、上述のDHCP整合性確認処理が行われることが説明された。第1実施形態では、ルータ1の再起動とは、工場出荷時の状態からの起動ではないことを示す。そのため、第1実施形態で説明された技術の適用は、稼働中のルータ1の電源が切断された後に自動的に起動する場合に限定されない。
例えば、予めルータ1のディスク104にDHCPバインディング情報を含むファイル107が保存されている状態で、ルータ1の電源が投入されて、ルータ1が起動する場合にも、第1実施形態で説明された技術を適用可能である。第1実施形態によれば、例えば、すでにユーザ端末3がIPアドレスをDHCPで取得しており、該ユーザ端末3を接続するルータ1が別のルータ1に交換されるような場合に、ユーザ端末3の通信復旧までの時間を短縮することができる。
また、第1実施形態では、ルータ1が工場出荷時の状態から起動した場合には、ディスク104にDHCPバインディング情報が保存されていないため、DHCP整合性確認処理は実施されない(図8A、OP1:NO)。そのため、第1実施形態は、ルータ1が工場出荷時の状態から起動する場合にも適用可能である。
第1実施形態では、ルータ1がDHCP Relayエージェントとして動作する場合について説明されたが、第1実施形態で説明された技術の適用先はこれに限定されない。
第1実施形態では、動的にIPアドレスを割り当てるプロトコルとして、DHCPv6を例に説明されたが、第1実施形態で説明された技術の適用は、DHCPv6を導入する通信ネットワークシステムに限定されない。例えば、DHCPv4を導入する通信ネットワークシステムにも、第1実施形態で説明された技術を適用可能である。
<記録媒体>
コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる
。コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる
。コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる非一時的な記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD−ROM、CD−R/W、DVD、ブルーレイディスク、DAT、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスク、ROM(リードオンリーメモリ)等がある。さらに、SSD(Solid State Drive)は、コンピュータ等から取り外し可能な記録媒体としても、コ
ンピュータ等に固定された記録媒体としても利用可能である。
ンピュータ等に固定された記録媒体としても利用可能である。
<付記>
上記第1実施形態は、以下の付記を開示する。
(付記1)
クライアント端末と、該クライアント端末にIPアドレスを割り当てるサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄する廃棄部と、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、
を備えるパケット伝送装置。
(付記2)
前記制御部は、起動完了から所定時間経過までに、前記記憶部に登録されているクライアント端末のうち、パケットを受信しなかったクライアント端末に割り当て中のIPアドレスの通知要求を前記サーバに送信する、
付記1に記載のパケット伝送装置。
(付記3)
前記制御部は、前記クライアント端末に割り当て中のIPアドレスの通知要求の送信、及び、該通知要求に対する前記サーバからの通知に対する前記クライアント端末からの応答の中継を記録する、
付記1又は2に記載のパケット伝送装置。
(付記4)
前記記憶部に登録されている、前記クライアント識別情報と前記クライアント端末に割り当てられたIPアドレスとを記憶する不揮発性の第2の記憶部をさらに備え、
前記記憶部は揮発性であり、
前記制御部は、起動時に前記第2の記憶部から前記クライアント識別情報と前記クライアント端末に割り当てられたIPアドレスとを前記記憶部に読み出す、
付記1から3のいずれか1つに記載のパケット伝送装置。
(付記5)
クライアント端末と、
前記クライアント端末にIPアドレスを割り当てるサーバと、
前記クライアント端末と前記サーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信
パケットを廃棄する廃棄部と、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、
を備えるパケット伝送装置と、
を含む通信ネットワークシステム。
(付記6)
コンピュータが、
クライアント端末と、該クライアントにIPアドレスを割り当てるサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録し、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄し、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する、
アドレス割当確認方法。
上記第1実施形態は、以下の付記を開示する。
(付記1)
クライアント端末と、該クライアント端末にIPアドレスを割り当てるサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄する廃棄部と、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、
を備えるパケット伝送装置。
(付記2)
前記制御部は、起動完了から所定時間経過までに、前記記憶部に登録されているクライアント端末のうち、パケットを受信しなかったクライアント端末に割り当て中のIPアドレスの通知要求を前記サーバに送信する、
付記1に記載のパケット伝送装置。
(付記3)
前記制御部は、前記クライアント端末に割り当て中のIPアドレスの通知要求の送信、及び、該通知要求に対する前記サーバからの通知に対する前記クライアント端末からの応答の中継を記録する、
付記1又は2に記載のパケット伝送装置。
(付記4)
前記記憶部に登録されている、前記クライアント識別情報と前記クライアント端末に割り当てられたIPアドレスとを記憶する不揮発性の第2の記憶部をさらに備え、
前記記憶部は揮発性であり、
前記制御部は、起動時に前記第2の記憶部から前記クライアント識別情報と前記クライアント端末に割り当てられたIPアドレスとを前記記憶部に読み出す、
付記1から3のいずれか1つに記載のパケット伝送装置。
(付記5)
クライアント端末と、
前記クライアント端末にIPアドレスを割り当てるサーバと、
前記クライアント端末と前記サーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信
パケットを廃棄する廃棄部と、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、
を備えるパケット伝送装置と、
を含む通信ネットワークシステム。
(付記6)
コンピュータが、
クライアント端末と、該クライアントにIPアドレスを割り当てるサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録し、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄し、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する、
アドレス割当確認方法。
1 ルータ
2 DHCPサーバ
3 ユーザ端末
11 DHCP制御部
12 転送制御部
13 DHCP Relayエージェント部
14 DHCPスヌーピング部
15 IPソースガード部
16 DHCPバインディング制御部
17 DHCPバインディングテーブル
18 Reconfigureチェックテーブル
19 転送部
101 CPU
102 メモリ
103 ディスクコントローラ
104 ディスク
2 DHCPサーバ
3 ユーザ端末
11 DHCP制御部
12 転送制御部
13 DHCP Relayエージェント部
14 DHCPスヌーピング部
15 IPソースガード部
16 DHCPバインディング制御部
17 DHCPバインディングテーブル
18 Reconfigureチェックテーブル
19 転送部
101 CPU
102 メモリ
103 ディスクコントローラ
104 ディスク
Claims (4)
- クライアント端末と、該クライアント端末にIPアドレスを割り当てるサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄する廃棄部と、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、
を備えるパケット伝送装置。 - 前記制御部は、起動完了から所定時間経過までに、前記記憶部に登録されているクライアント端末のうち、パケットを受信しなかったクライアント端末に割り当て中のIPアドレスの通知要求を前記サーバに送信する、
請求項1に記載のパケット伝送装置。 - クライアント端末と、
前記クライアント端末にIPアドレスを割り当てるサーバと、
前記クライアント端末と前記サーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録する登録部と、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄する廃棄部と、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する制御部と、
を備えるパケット伝送装置と、
を含む通信ネットワークシステム。 - コンピュータが、
クライアント端末と、該クライアント端末にIPアドレスを割り当てるサーバとの間でやり取りされるパケットに基づいて、クライアント識別情報と該クライアント端末に割り当てられたIPアドレスとを記憶部に登録し、
受信パケットの送信元IPアドレスが前記記憶部に登録されていない場合に、該受信パケットを廃棄し、
起動時に前記記憶部に記憶されたクライアント識別情報に合致するパケットを受信し、該受信パケットの送信元IPアドレスが前記記憶部に記憶されたIPアドレスと異なる場合に、前記サーバに、該受信パケットの送信元のクライアント端末に割り当て中のIPアドレスの通知要求を送信する、
アドレス割当確認方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015134732A JP2017017631A (ja) | 2015-07-03 | 2015-07-03 | パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015134732A JP2017017631A (ja) | 2015-07-03 | 2015-07-03 | パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017017631A true JP2017017631A (ja) | 2017-01-19 |
Family
ID=57829403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015134732A Pending JP2017017631A (ja) | 2015-07-03 | 2015-07-03 | パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017017631A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018525907A (ja) * | 2015-08-24 | 2018-09-06 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | 端末に関連付けられているソースアドレスの検証 |
WO2022176020A1 (ja) * | 2021-02-16 | 2022-08-25 | 日本電信電話株式会社 | 通信制御装置、通信制御方法および通信制御プログラム |
-
2015
- 2015-07-03 JP JP2015134732A patent/JP2017017631A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018525907A (ja) * | 2015-08-24 | 2018-09-06 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | 端末に関連付けられているソースアドレスの検証 |
WO2022176020A1 (ja) * | 2021-02-16 | 2022-08-25 | 日本電信電話株式会社 | 通信制御装置、通信制御方法および通信制御プログラム |
US12021830B2 (en) | 2021-02-16 | 2024-06-25 | Nippon Telegraph And Telephone Corporation | Communication control device, communication control method, and communication control program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2214383B1 (en) | Automatically releasing resources reserved for subscriber devices within a broadband access network | |
US9032477B2 (en) | Automatic software update on network devices | |
US8433779B2 (en) | Computer system for allocating IP address to communication apparatus in computer subsystem newly added and method for newly adding computer subsystem to computer system | |
US8887237B2 (en) | Multimode authentication | |
CN104767649A (zh) | 部署裸金属服务器的方法及装置 | |
US8400943B2 (en) | IPv6 addressing over non-IPv6 systems | |
KR100953676B1 (ko) | 이더넷 네트워크 인터페이스 카드를 에뮬레이션하기 위한 구조 | |
WO2015054882A1 (zh) | 网络设备通信方法及网络设备 | |
JP2006094526A (ja) | Ipcのためのipアドレス管理方法 | |
WO2005083959A1 (ja) | ネットワークアクセスルータ、ネットワークアクセス方法、プログラム、及び記録媒体 | |
JP2013090089A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
US20150134853A1 (en) | External address space compression | |
EP3018870B1 (en) | Method for issuing static route and ultimate provider edge | |
CN109076022B (zh) | 网络地址转换装置、设置请求装置、通信系统、通信方法和存储程序的存储介质 | |
WO2015190079A1 (ja) | 計算機システム、遠隔デバイスの接続管理方法及びプログラム記録媒体 | |
JP2017017631A (ja) | パケット伝送装置、通信ネットワークシステム、及び、アドレス割当確認方法 | |
JP6445408B2 (ja) | 通信システムおよび設定方法 | |
JP2008204110A (ja) | サーバ装置、サーバ装置の制御方法およびサーバシステム | |
JP2006148813A (ja) | 分析装置管理システム、分析装置管理サーバ用プログラム及び分析装置 | |
WO2011117959A1 (ja) | 通信装置、通信装置の制御方法、プログラム | |
JP2017069861A (ja) | リモート接続支援システム、リモート接続支援方法およびリモート接続支援サーバ | |
JP2000316002A (ja) | 動的ホストコンフィグレーションサーバ及び動的ホストコンフィグレーション方法 | |
JP6662114B2 (ja) | アドレス設定方法、アドレス設定プログラム及び情報処理装置 | |
WO2016145740A1 (zh) | 一种局域网的网络参数配置方法及装置 | |
CN107295113B (zh) | 一种网络配置的方法、交换机和服务器 |