(57)【特許請求の範囲】
【請求項１】
ＩＰネットワーク内のＩＰアドレスの重複を検出するＩＰアドレス重複検出方法において、
前記ＩＰネットワーク内の調査対象ＩＰアドレスに対する複数の要求ＩＰパケットを該ＩＰネットワーク外から送出する要求ＩＰパケット送出ステップと、
前記要求ＩＰパケットに対する応答ＩＰパケットのＩＰヘッダ内の識別子の値を監視することにより、前記調査対象ＩＰアドレスの重複発生の有無を判定するＩＰアドレス重複判定ステップと、
を備えることを特徴とするＩＰアドレス重複検出方法。
【請求項２】
請求項１に記載のＩＰアドレス重複検出方法において、
前記要求ＩＰパケット送出ステップに先立って、前記ＩＰネットワークのネットワーク境界にある中継装置において前記調査対象ＩＰアドレスに対するＡＲＰキャッシュがクリアされていることを確認するＡＲＰキャッシュクリア確認ステップを備えることを特徴とするＩＰアドレス重複検出方法。
【請求項３】
請求項１に記載のＩＰアドレス重複検出方法において、
前記要求ＩＰパケット送出ステップは、複数の要求ＩＰパケットを前記ＩＰネットワーク内の調査対象ＩＰアドレスに対して連続して送信しながら、前記ＩＰネットワークのネットワーク境界にある中継装置のＡＲＰキャッシュをクリアするコマンドを送出するものであることを特徴とするＩＰアドレス重複検出方法。
【請求項４】
請求項２又は請求項３に記載のＩＰアドレス重複検出方法において、
前記ＩＰアドレス重複判定ステップは、前記応答ＩＰパケットのＩＰヘッダ内の識別子の値の最大値と最小値の差分と閾値を比較することにより、前記調査対象ＩＰアドレスの重複発生の有無を判定することを特徴とするＩＰアドレス重複検出方法。
【請求項５】
ＩＰネットワーク外から該ＩＰネットワーク内のＩＰアドレスの重複を検出するＩＰアドレス重複検出装置において、
複数の要求ＩＰパケットを前記ＩＰネットワーク内の調査対象ＩＰアドレスに対して送出する要求ＩＰパケット送出手段と、
前記要求ＩＰパケットに対する応答ＩＰパケットのＩＰヘッダ内の識別子の値を監視する応答ＩＰパケットモニタ手段と、
前記応答ＩＰパケットモニタ手段による前記応答ＩＰパケットのＩＰヘッダ内の識別子の値に基づいて調査対象ＩＰアドレスの重複発生の有無を判定するＩＰアドレス重複発生有無解析手段と、
を備えることを特徴とするＩＰアドレス重複検出装置。
【請求項６】
コンピュータを請求項１乃至請求項４のいずれか１項に記載のＩＰアドレス重複検出方法の前記各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ネットワーク運用監視の技術分野に属するものであり、特に、ＩＰネットワーク内のＩＰアドレスの重複を検出する手法および装置に関するものである。
【背景技術】
【０００２】
昨今、ＩＰネットワークの普及により、ネットワークにあまり詳しくない人までもがＩＰアドレスの設定等を行うケースが増加しており、そのため既に同一ネットワーク内で利用されているＩＰアドレスを設定してしまうＩＰアドレス重複が頻繁に発生している。ＩＰアドレス重複を起こした各ノードに対しては、ＡＲＰ(Address Resolution Protocol)によるMAC(Media Access Control)アドレス解決状況により、通信が間欠的に途絶するような状況に陥る。
【０００３】
同一ネットワーク内からであれば、ＡＲＰなどにより、ＩＰアドレス重複は容易に検出でき、一部のパーソナルコンピュータ等ではＩＰアドレス重複を検出する機能が標準的に実装されているものもある。しかしながら、自ネットワーク以外のＩＰアドレス重複を他ネットワークから検出することは困難であった。
【０００４】
このような背景から、ネットワーク境界の中継装置(ルータや所謂レイヤ３スイッチ（以下、L3スイッチ）)には変更を加えずに、上述のような自ネットワーク以外のＩＰアドレス重複を他ネットワークから検出する機能を実現する手段が求められていた。そして、このような要望に応えるための技術として、例えば下記特許文献１に開示された技術が知られていた。
【０００５】
特許文献１に記載された従来技術では、図１に示すように、中継装置のＡＲＰキャッシュがクリアされていることを確認（ステップＳ１）した後、調査対象ＩＰアドレスに対して、サービス要求(telnet、ftp、pop、dns、www等)を２回実施し（ステップＳ２、Ｓ３）、第１のサービス応答と第２のサービス応答を受信する（ステップＳ４、Ｓ５）。
そして、２回のサービス応答の比較（ステップＳ６）により、応答が同じであればＩＰアドレス重複なしとし（ステップＳ７）、応答が異なればＩＰアドレス重複ありとして（ステップＳ８）、ＩＰアドレス重複を検出していた。
【０００６】
中継装置については、ＡＲＰキャッシュがクリアされている時にサービス要求を受信すると、最初のＡＲＰ応答で解決されたノードにサービス要求を転送するものと、ＡＲＰキャッシュを解決／保持するのみで、サービス要求を転送しないものがある。
【０００７】
図２Ａは、ＡＲＰキャッシュがクリアされている時にサービス要求を受信すると、最初のＡＲＰ応答で解決されたノードにサービス要求を転送する中継装置が用いられている場合の、上述の従来例によるＩＰアドレスの重複検出動作例を説明する図である。図２Ａの例では、ノードＡとノードＢのＩＰアドレスが共にＩＰ＿ＡＢで重複しており、調査対象ＩＰアドレスがＩＰ＿ＡＢである。
【０００８】
図２Ａに示すように、まずＩＰアドレス重複検出装置が、中継装置ＲにＩＰ＿ＡＢに対するキャッシュクリアの確認を行う。次にＩＰアドレス重複検出装置はＩＰ＿ＡＢを宛先とする第１のサービス要求を送信する。
【０００９】
中継装置Ｒが第１のサービス要求を受信する時点では、ＡＲＰキャッシュにはＩＰ＿ＡＢに対するＭＡＣアドレスは保持されていないので、中継装置ＲはＡＲＰ要求をブロードキャストする。
【００１０】
図２Ａの例ではノードＡからのＡＲＰ応答が先に中継装置Ｒに到達するので、その時点ではＡＲＰキャッシュにはＩＰ＿ＡＢに対してノードＡのＭＡＣアドレスが保持される。そして、ＩＰ＿ＡＢを宛先とする第１のサービス要求がネットワークに転送され、ノードＡから第１のサービス応答がＩＰアドレス重複検出装置に返される。
【００１１】
一方、ノードＢからのＡＲＰ応答が遅れて中継装置Ｒに到達すると、その時点でＡＲＰキャッシュにはＩＰ＿ＡＢに対してノードＢのＭＡＣアドレスが保持される。そこでＩＰアドレス重複検出装置がＩＰ＿ＡＢを宛先とする第２のサービス要求を送信すると第２のサービス要求はノードＢで受信され、ノードＢから第２のサービス応答がＩＰアドレス重複検出装置に返される。
【００１２】
図２Ｂは、ＡＲＰキャッシュがクリアされている時にサービス要求を受信すると、ＡＲＰキャッシュを解決／保持するのみで、サービス要求を転送しない中継装置が用いられている場合の、上述の従来例によるＩＰアドレスの重複検出動作例を説明する図である。図２Ｂの例でも図２Ａの場合と同様に、ノードＡとノードＢのＩＰアドレスがＩＰ＿ＡＢで重複しており、調査対象ＩＰアドレスがＩＰ＿ＡＢである。
【００１３】
図２Ｂに示すように、まずＩＰアドレス重複検出装置が、中継装置ＲにＩＰ＿ＡＢに対するキャッシュクリアの確認を行う。次にＩＰアドレス重複検出装置はＩＰ＿ＡＢを宛先とする第１のサービス要求を送信する。中継装置Ｒが第１のサービス要求を受信する時点では、ＡＲＰキャッシュにはＩＰ＿ＡＢに対するＭＡＣアドレスは保持されていないので、中継装置ＲはＡＲＰ要求をブロードキャストする。図２Ｂの例ではノードＡからのＡＲＰ応答が先に中継装置Ｒに到達するので、その時点ではＡＲＰキャッシュにはＩＰ＿ＡＢに対してノードＡのＭＡＣアドレスが保持される。
【００１４】
ここまでの動作は、図２Ａに示すものと同じである。しかし、図２Ｂに示す中継装置Ｒは第１のサービス要求をネットワーク内に転送することなく破棄する。
やがてノードＢからＡＲＰ応答が遅れて中継装置Ｒに到達すると、その時点でＡＲＰキャッシュにはＩＰ＿ＡＢに対してノードＢのＭＡＣアドレスが保持される。そこでＩＰアドレス重複検出装置がＩＰ＿ＡＢを宛先とする第２のサービス要求を送信すると第２のサービス要求はノードＢで受信され、ノードＢから第２のサービス応答がＩＰアドレス重複検出装置に返される。
【００１５】
したがって、調査対象ＩＰアドレスが属するネットワーク境界にある中継装置Ｒが図２Ｂに示すタイプのものであると、第１のサービス応答はＩＰアドレス重複検出装置に返ってこないので、ＩＰアドレスの重複検出を行うことができない。
【特許文献１】特許第３７９４４２４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
上述の説明から明らかなとおり、特許文献１に開示された方法（従来技術）を利用するためには、調査対象とするＩＰアドレスをもつノードや中継装置に対して、以下の適用条件が必要である。
【００１７】
適用条件１：調査対象とするＩＰアドレスをもつノードにおいて、特定サービス(telnet、ftp、pop、dns、www等)が動作していること。
適用条件２：調査対象とするＩＰアドレスが重複している場合、該調査対象ＩＰアドレスが属するネットワークとの境界にある中継装置(ルータやL3スイッチ)の該調査対象ＩＰアドレスに対するＡＲＰキャッシュ有無により、キャッシュ有りであればそのノードへ、キャッシュ無しであれば、最初にＡＲＰ応答した方に、サービス要求の転送先を切り替えること。
【００１８】
この適用条件を満たさない場合、従来技術が使えず、遠隔ネットワークからはＩＰアドレス重複の発生有無を判断できなかった。結局、調査対象ＩＰアドレスが属するネットワークに出向いて調査する必要があり、時間とコストがかかっており、適用条件の拡大が課題となる。
【００１９】
本方法、装置及びプログラムは、上記課題を解決し、上記適用条件１、あるいはさらに適用条件２を満たさない場合にでも、遠隔ネットワークからＩＰアドレスの重複を検出可能とするものである。
【課題を解決するための手段】
【００２０】
本方法、装置及びプログラムの一つの態様によれば、応答ＩＰパケットの送出ノードの識別に、サービスレベルの情報ではなく、ＩＰヘッダ内の識別子フィールドの値を利用する。複数の要求ＩＰパケットを調査対象ＩＰアドレスに対して送出し、応答ＩＰパケットのＩＰヘッダ内の識別子フィールドの値を監視し、ＩＰアドレス重複発生の有無を判定する。
【００２１】
本方法、装置及びプログラムの別の態様によれば、調査対象ＩＰアドレスに対して要求ＩＰパケットを連続送信しながら、調査対象ＩＰアドレスが属するネットワーク境界にある中継装置(ルータやL3スイッチ)の調査対象IPアドレスに対するARPキャッシュをクリアするコマンドを発行し、応答ＩＰパケットのＩＰヘッダ内の識別子フィールドの値を監視し、ＩＰアドレス重複発生の有無を判定する。
【発明の効果】
【００２２】
本方法、装置及びプログラムの一つの態様によれば、調査対象のＩＰアドレスを有するノードが特定のサービスを提供していなくてもＩＰアドレスの重複検出を行うことができ、適用条件１が緩和される。
【００２３】
本方法、装置及びプログラムの別の態様によれば、ARPキャッシュがクリアされると、前記中継装置は、調査対象ＩＰアドレスに対するＭＡＣアドレスを解決するためにＡＲＰ要求パケットを送出するが、要求ＩＰパケットを連続受信し続けているノードは、ＡＲＰ応答パケットを返すタイミングにばらつきが生じ、中継装置へのＡＲＰ応答の到達順序をばらつかせることができる。
【００２４】
すると中継装置において、ARP要求パケットに対するARP応答パケットが複数返信された場合、全ての応答パケットを受信した安定状態では、最後(あるいは最初)に受信したARP応答パケット内のMACアドレスをARPキャッシュするため、ARP応答の到着順序がばらつけば、ARPキャッシュされるMACアドレスを変更でき、要求ＩＰパケットの転送先を切り替えることができる
このように、中継装置がＡＲＰキャッシュを解決／保持するのみで、サービス要求を転送しないものであっても、ＩＰアドレスに重複が発生していればＡＲＰキャッシュされるＭＡＣアドレスが変更される。したがって、要求ＩＰパケットの転送先を切り替えることができるので、応答ＩＰパケットのＩＰヘッダ内の識別子の値を監視し、ＩＰアドレス重複発生の有無を判定することができる。そのため、さらに適用条件２を緩和することができる。  
【発明を実施するための最良の形態】
【００２５】
最初に本発明の前提となるＩＰヘッダ内の識別子フィールドについて説明する。
図３は、ＩＰヘッダのフォーマット図である。識別子フィールド［ＩＤ］は、図に示すように、４バイト、すなわち３２ビット目から２バイトのエリアを占めている。
【００２６】
その他の先頭の４ビット［ＶＥＲ］はＩＰパケットを構成したインターネットプロトコル（ＩＰ）のバージョン番号である。次の４ビット［ＩＨＬ］はヘッダ長であり、３２ビットを１単位として表す。次の８ビット［ＴＯＳ］はサービスタイプである。次のデータグラム長はＩＰパケット全体のパケット長である。
【００２７】
識別子フィールドの次のフラグ［Ｆ］とフラグメントオフセットはそれぞれ３ビットと１３ビットで、フラグメント化に関する情報を表す。
次の３２ビットは、生存時間［ＴＴＬ］８ビット、プロトコル［ＰＲＯＴ］８ビット及びヘッダチェックサム１６ビットである。
【００２８】
次の３２ビットは、ＩＰパケットの送信元のＩＰアドレスである始点アドレスであり、その次の３２ビットがＩＰパケットの宛先ＩＰアドレスである終点アドレスである。
最後の部分はオプションであり、ヘッダ長を３２ビット単位とするために、必要に応じてパディングが付加される。
【００２９】
上述のように、ＩＰヘッダ内の識別子フィールドは、１６ビットの大きさをもち、その値は各ノード毎に独立で、各ノードからＩＰパケットを送出するたびにインクリメントされる性質がある。そのため、調査対象ＩＰアドレスが重複していない場合、単一ノードから応答ＩＰパケットが送出されることから、応答ＩＰヘッダ内の識別子フィールド値をモニタした場合、単調に増加するだけで、短時間の応答では、最大値と最小値の差が大きくなることはない。
【００３０】
しかしながら、調査対象ＩＰアドレスが重複している場合、複数ノードからの応答ＩＰパケットが送出され、各ノードがある瞬間に保持する識別子フィールド値はノード毎に開きがあることから、応答ＩＰヘッダ内の識別子フィールド値をモニタした場合、短時間での応答であっても、最大値と最小値の差が大きくなる。この違いを利用すると、応答パケットのＩＰヘッダ内の識別子フィールド値をモニタするだけで、応答パケットの送出ノードが単一かどうかを識別できる。
【００３１】
図４は本発明の実施例１の概要を説明するフロー図である。
図に示すように、ステップＳ４０で複数の要求ＩＰパケットを調査対象ＩＰアドレスに対して送出する。次にステップＳ４２で応答ＩＰパケットのＩＰヘッダ内の識別子フィールドの値をモニタし、ＩＰアドレスの重複発生の有無を判定する。
【００３２】
図５は実施例１の構成例を示す図である。
図に示すように、ＩＰアドレス重複検出装置１０が中継装置８１によりネットワーク８に接続され、調査対象のＩＰアドレスが属するネットワーク９が中継装置８２によりネットワーク８に接続されている。中継装置８２が、調査対象ＩＰアドレスが属するネットワーク境界にある中継装置である。中継装置８１、８２は、Ｌ３動作機器であり、ルータまたはＬ３スイッチである。
【００３３】
ＩＰアドレス重複検出装置１０は、要求ＩＰパケット送出手段２０、応答ＩＰパケットモニタ手段３０及びＩＰアドレス重複発生有無解析手段４０を含む。
図６は、本発明の実施例２の概要を説明するフロー図である。
【００３４】
図に示すように、ステップＳ６０において、調査対象ＩＰアドレスが属するネットワーク境界にある中継装置の調査対象ＩＰアドレスに対するＡＲＰキャッシュがクリアされていることを確認する。次にステップＳ６２で複数の要求ＩＰパケットを調査対象ＩＰアドレスに対して送出し、ステップＳ６３で応答ＩＰパケットのＩＰヘッダ内の識別子フィールドの値をモニタしてＩＰアドレスの重複発生の有無を判定する。
【００３５】
図７は実施例２の構成例を示す図である。図５に示す実施例１の構成例と比べると、図５に示すＩＰアドレス重複検出装置１０に対して、図７に示すＩＰアドレス重複検出装置１１は、ＡＲＰキャッシュクリア確認手段５０を備える点で異なる。
【００３６】
図８は、本発明の実施例３の概要を説明するフロー図である。
図に示すように、ステップＳ８０において、調査対象ＩＰアドレスに対して要求ＩＰパケットを連続送信しながら、調査対象ＩＰアドレスが属するネットワーク境界にある中継装置の調査対象ＩＰアドレスに対するＡＲＰキャッシュをクリアするコマンドを送出する。次にステップＳ８２で応答ＩＰパケットのＩＰヘッダ内の識別子フィールドの値をモニタしてＩＰアドレスの重複発生の有無を判定する。
【００３７】
図９は実施例３の構成例を示す図である。図５に示す実施例１の構成例と比べると、図５に示すＩＰアドレス重複検出装置１０に対して、図９に示すＩＰアドレス重複検出装置１２は、ＡＲＰキャッシュクリアコマンド送出手段６０を備える点で異なる。
【００３８】
次に、実施例１〜３を具体例によりさらに詳細に説明する
図１０は、実施例１〜３におけるネットワーク構成の具体例を共通に示す図である。図中のＩＰアドレス重複検出装置１３には、実施例２のＡＲＰキャッシュクリア確認手段５０あるいは実施例３のＡＲＰキャッシュクリアコマンド送出手段６０を表すものとして、ＡＲＰキャッシュクリア確認／コマンド送出手段７０が記載されている。
【００３９】
また図示のように、調査対象のＩＰアドレスが属するネットワーク９にはノードＡ９１、ノードＢ９３及びノードＣ９５が含まれ、それぞれＬ２動作機器であるスイッチ９２、スイッチ９４及びスイッチ９６を介してネットワーク境界の中継装置（Ｒ−１）８２に接続されている。
【００４０】
そして、ノードＡとノードＢのＩＰアドレスはともにＩＰ＿ＡＢで重複しており、ノードＣのＩＰアドレスはＩＰ＿Ｃで重複していないとする。また、調査時点に各ノードで保持する識別子フィールドの値は、ノードＡが３００００、ノードＢが１００００、ノードＣが４００００であるとする。調査対象ＩＰアドレスとして、ＩＰ＿ＡＢあるいはＩＰ＿Ｃを利用する場合における例を以下で説明する。
【００４１】
なお、以下の例では、中継装置のＡＲＰキャッシュクリアの確認、および、クリア要求手段として、SNMP(Simple Network Management Protocol)を利用して説明しているが、他の手段(telnet等)を利用してもよい。また、要求ＩＰパケットとして、ICMP(Internet Control Message Protocol)のエコーリクエストであるPing要求を利用しているが、他の要求ＩＰパケット(NetBIOS: Network Basic Input Output System等)を利用してもよい。
【００４２】
図１１は、図１０に示すネットワーク構成例における実施例１のＩＰアドレス重複検出動作を説明する図である。ネットワーク境界にある中継装置であるＲ−１では、ＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュは管理されていないものとする。また、適用条件２は満たすものとする。
【００４３】
ＩＰアドレス重複検出装置は、最初のステップで、太線の矢印で示すように、重複検出対象であるＩＰ＿ＡＢ宛のＰｉｎｇ要求を送信する。中継装置Ｒ−１ではＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュは管理されていないので、矢印で示すように、中継装置Ｒ−１はネットワーク９内のノードＡ、ノードＢ及びノードＣにＡＲＰ要求をブロードキャストする。
【００４４】
図の点線の矢印で示すように、ノードＡからのＡＲＰ応答が中継装置Ｒ−１で受信されると、先のＩＰ＿ＡＢ宛のＰｉｎｇ要求は、太線の矢印で示すように、ノードＡに転送される。すると、ノードＡはＩＰアドレス重複検出装置に、太い点線の矢印で示すように、Ｐｉｎｇ応答を返す。このときのＰｉｎｇ応答のＩＰヘッダ内の識別子フィールドの値は３０００４であったとする。
【００４５】
また、図の点線の矢印で示すように、ノードＢからのＡＲＰ応答が遅れて中継装置Ｒ−１で受信される。これにより、ＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュは、ノードＢのＭＡＣアドレスに書き換えられる。
【００４６】
次にＩＰアドレス重複検出装置は、再び重複検出対象であるＩＰ＿ＡＢ宛のＰｉｎｇ要求を送信する。すると中継装置Ｒ−１ではＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュとしてノードＢのＭＡＣアドレスが管理されているので、今回のＩＰ＿ＡＢ宛のＰｉｎｇ要求はノードＢに転送される。すると、ノードＢはＩＰアドレス重複検出装置にＰｉｎｇ応答を返す。このときのＰｉｎｇ応答のＩＰヘッダ内の識別子フィールドの値は１０００１であったとする。
【００４７】
ＩＰアドレス重複検出装置は、複数のＰｉｎｇ応答のＩＰヘッダ内の識別子フィールドの値の最大値と最小値の差を求め、それを閾値と比較する。閾値を１０００とすると、図１１の例の場合、識別子フィールドの値の最大値が３０００４、最小値は１０００１であるから、３０００４−１０００１＝２０００３≧１０００となり、ＩＰ＿ＡＢでＩＰアドレスが重複していると判定される。
【００４８】
図１２は、図１１に例示したＩＰアドレス重複検出動作を実行するＩＰアドレス重複検出装置の処理フローを説明する図である。
図に示すように、ステップＳ１２００において、調査対象ＩＰアドレスに対して要求ＩＰパケット（Ｐｉｎｇ要求）を複数送信する。
【００４９】
次にステップＳ１２０２において、複数の応答ＩＰパケット（Ｐｉｎｇ応答）をキャプチャする。
次にステップＳ１２０４に進み、ステップＳ１２０２でキャプチャした複数の応答ＩＰパケットのＩＰヘッダ内の識別子フィールド値の差が閾値以上開いているか判定し、開いていればステップＳ１２０６に進んでＩＰアドレスの重複ありとして処理を終了し、識別子フィールド値の差が閾値以上開いていなければ、ステップＳ１２０８においてＩＰアドレス重複なしとして処理を終了する。
【００５０】
図１３は、図１０に示すネットワーク構成例における実施例２のＩＰアドレス重複検出動作を説明する図である。ネットワーク境界にある中継装置であるＲ−１で、ＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュが管理されているか不定とする。また、適用条件２は満たすものとする。
【００５１】
ＩＰアドレス重複検出装置は、最初のステップで、一番太い線の矢印で示すように、重複検出対象であるＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュクリア確認コマンドを中継装置Ｒ−１に送信する。あるいは、キャッシュクリアコマンドを送信することでキ
ャッシュクリアを確認する。その結果、中継装置Ｒ−１ではＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュは管理されていないので、矢印で示すように、中継装置Ｒ−１はネットワーク９内のノードＡ、ノードＢ及びノードＣにＡＲＰ要求をブロードキャストする。
【００５２】
以下、実施例１の場合と同様に、ＩＰアドレス重複検出装置は、図の太線の矢印で示すように、ＩＰ＿ＡＢ宛のＰｉｎｇ要求を送信する。図に点線の矢印で示すように、先のＡＲＰ要求のブロードキャストによりノードＡからのＡＲＰ応答が中継装置Ｒ−１で受信されると、ＩＰ＿ＡＢ宛のＰｉｎｇ要求はノードＡに転送される。すると、ノードＡはＩＰアドレス重複検出装置に、太い点線の矢印で示すように、Ｐｉｎｇ応答を返す。このときのＰｉｎｇ応答のＩＰヘッダ内の識別子フィールドの値は３０００４であったとする。
【００５３】
また、図に示すように、ノードＢからのＡＲＰ応答が遅れて中継装置Ｒ−１で受信される。これにより、ＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュは、ノードＢのＭＡＣアドレスに書き換えられる。
【００５４】
次にＩＰアドレス重複検出装置は、再び重複検出対象であるＩＰ＿ＡＢ宛のＰｉｎｇ要求を送信する。すると中継装置Ｒ−１ではＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュとしてノードＢのＭＡＣアドレスが管理されているので、今回のＩＰ＿ＡＢ宛のＰｉｎｇ要求はノードＢに転送される。すると、ノードＢはＩＰアドレス重複検出装置にＰｉｎｇ応答を返す。このときのＰｉｎｇ応答のＩＰヘッダ内の識別子フィールドの値は１０００１であったとする。
【００５５】
ＩＰアドレス重複検出装置は、複数のＰｉｎｇ応答のＩＰヘッダ内の識別子フィールドの値の最大値と最小値の差を求め、それを閾値と比較する。閾値を１０００とすると、図１１の例の場合、識別子フィールドの値の最大値が３０００４、最小値は１０００１であるから、３０００４−１０００１＝２０００３≧１０００となり、ＩＰ＿ＡＢでＩＰアドレスが重複していると判定される。
【００５６】
図１４は、図１３に例示したＩＰアドレス重複検出動作を実行するＩＰアドレス重複検出装置の処理フローを説明する図である。
図に示すように、ステップＳ１４００において、ネットワーク境界にある中継装置の調査対象ＩＰアドレスに対するＡＲＰキャッシュがクリアされていることを確認する。
【００５７】
次にステップＳ１４０２〜ステップＳ１４１０の処理に進むが、これらの処理は図１２に示す実施例１のステップＳ１２００〜ステップＳ１２０８の処理と同じであるので、説明を省略する。
【００５８】
図１５は、図１０に示すネットワーク構成例における実施例３のＩＰアドレス重複検出動作を説明する図である。ネットワーク境界にある中継装置Ｒ−１で、調査対象ＩＰアドレスＩＰ＿ＡＢに対するＡＲＰキャッシュとして、ノードＢのＭＡＣアドレスが管理され、ＩＰアドレス重複判定に利用する閾値として１０００が設定されているとする。なお、ノードＢのＭＡＣアドレスが管理されているということは、通常状態では、ＩＰ＿ＡＢに対するＡＲＰ要求に対して、ノードＢからの応答が最後にＲ−１に到達することを暗に含む。
【００５９】
ＩＰアドレス重複検出装置は、太線の矢印で示すように、最初のステップで調査対象アドレスＩＰ＿ＡＢに対して要求ＩＰパケットとしてＰｉｎｇ要求を連続送信する。これらのＰｉｎｇ要求はＩＰ＿ＡＢに対するＡＲＰキャッシュにしたがいノードＢに転送され、太い点線の矢印で示すように、ノードＢよりＰｉｎｇ応答を複数受信する。ここでは、Ｐ
ｉｎｇ応答の送信ノードはノードＢであるため、Ｐｉｎｇ応答のＩＰヘッダ内の識別子フィールド値は１００００から少しインクリメントされ、それぞれ、１０００１、１０００２、１０００３であったとする。
【００６０】
次にＩＰアドレス重複検出装置は、一番太い線の矢印で示すように、中継装置Ｒ−１に対してＡＲＰキャッシュクリアコマンドを送信する。具体的には、中継装置Ｒ−１に対して、対応するipNetToMediaTypeのMIB(Management Information Base)の値をinvalid(値としては2)に設定するためのSNMP_Setコマンドを送信する。これにより、中継装置Ｒ−１でのＩＰ＿ＡＢに対するＡＲＰキャッシュがクリアされる。
【００６１】
一方、ＩＰアドレス重複検出装置は、調査対象アドレスＩＰ＿ＡＢに対して、要求ＩＰパケットとしてＰｉｎｇ要求を連続送信し続けるが、ＩＰ＿ＡＢに対するＡＲＰキャッシュがクリアされており、中継装置Ｒ−１はＩＰ＿ＡＢに対するMACアドレス解決を図るため、矢印で示すように、ＩＰ＿ＡＢに対してＡＲＰ要求を図１０に示すネットワーク９にブロードキャストする。
【００６２】
このＡＲＰ要求に対して、ノードＡとノードＢが応答するが、図示のとおりノードＢは先にＰｉｎｇ要求を受信し続けており、点線の矢印で示すように、ノードＢからのＡＲＰ応答が、ノードＡからのＡＲＰ応答よりも先に、中継装置Ｒ−１に到達したとする。この場合、中継装置Ｒ−１では、ＩＰ＿ＡＢに対するＡＲＰキャッシュとして、後から応答したノードＡのMACアドレスが管理され、以降のＰｉｎｇ要求の連続送信は、ＩＰ＿ＡＢに対するＡＲＰキャッシュに従いノードＡに転送され、ノードＡよりＰｉｎｇ応答を複数受信する。
【００６３】
ここでは、Ｐｉｎｇ応答の送信ノードはノードＡであるため、Ｐｉｎｇ応答のＩＰヘッダ内の識別子フィールド値は３００００から少しインクリメントされ、それぞれ、３０００４、３０００７であったとする。なお、各ノードが他のＩＰ通信を行っていることがあるため、識別子フィールド値は必ずしも1ずつインクリメントされるとは限らない。
【００６４】
ＩＰアドレス重複検出装置は、重複検出動作開始後に受信した全Ｐｉｎｇ応答のＩＰヘッダ内の識別子フィールド値の最大値が３０００７、最小値が１０００１であったことを割り出し、その差２０００６が閾値１０００以上であるため、ＩＰ＿ＡＢでIPアドレスが重複していると判定する。
【００６５】
図１６も、図１５と同様に図１０に示すネットワーク構成例における実施例３のＩＰアドレス重複検出動作を説明する図である。各矢印の意味は図１５の場合と同様である。ただし図１５に示す場合と異なり、調査対象ＩＰアドレスはＩＰ＿Ｃである。ネットワーク境界にある中継装置Ｒ−１で、調査対象ＩＰアドレスＩＰ＿Ｃに対するＡＲＰキャッシュとして、ノードＣのＭＡＣアドレスが管理され、ＩＰアドレス重複判定に利用する閾値として１０００が設定されているとする。
【００６６】
ＩＰアドレス重複検出装置は、最初のステップで調査対象アドレスＩＰ＿Ｃに対して要求ＩＰパケットとしてＰｉｎｇ要求を連続送信する。これらのＰｉｎｇ要求はＩＰ＿Ｃに対するＡＲＰキャッシュにしたがいノードＣに転送され、ノードＣよりＰｉｎｇ応答を複数受信する。ここでは、Ｐｉｎｇ応答の送信ノードはノードＣであるため、Ｐｉｎｇ応答のＩＰヘッダ内の識別子フィールド値は４００００から少しインクリメントされ、それぞれ、４０００１、４０００２、４０００３であったとする。
【００６７】
図１５に示す場合と同様に、ＩＰアドレス重複検出装置は、次に中継装置Ｒ−１に対してＡＲＰキャッシュをクリアするため、中継装置Ｒ−１に対して対応するipNetToMediaTy
peのMIBの値をinvalid(値としては2)に設定するためのSNMP_Setコマンドを送信する。これにより、中継装置Ｒ−１でのＩＰ＿Ｃに対するＡＲＰキャッシュがクリアされる。
【００６８】
一方、ＩＰアドレス重複検出装置は、調査対象アドレスＩＰ＿Ｃに対して、要求ＩＰパケットとしてＰｉｎｇ要求を連続送信し続けるが、ＩＰ＿Ｃに対するＡＲＰキャッシュがクリアされており、中継装置Ｒ−１はＩＰ＿Ｃに対するMACアドレス解決を図るため、ＩＰ＿Ｃに対してＡＲＰ要求を図１０に示すネットワーク９にブロードキャストする。
【００６９】
このＡＲＰ要求に対して、ノードＣが応答し、中継装置Ｒ−１では、ＩＰ＿Ｃに対するＡＲＰキャッシュとして、ノードＣのMACアドレスが管理され、以降のＰｉｎｇ要求の連続送信は、ＩＰ＿Ｃに対するＡＲＰキャッシュに従いノードＣに転送される。したがって、ＩＰアドレス重複検出装置は、引き続きノードＣよりＰｉｎｇ応答を複数受信する。
【００７０】
ここでは、Ｐｉｎｇ応答の送信ノードはノードＣであるため、Ｐｉｎｇ応答のＩＰヘッダ内の識別子フィールド値はＡＲＰキャッシュをクリアする前の最終Ｐｉｎｇ応答に含まれた４０００３から少しインクリメントされ、それぞれ、４０００７、４００１０であったとする。
【００７１】
ＩＰアドレス重複検出装置は、重複検出動作開始後に受信した全Ｐｉｎｇ応答のＩＰヘッダ内の識別子フィールド値の最大値が４００１０、最小値が４０００１であったことを割り出し、その差９が閾値１０００未満であるため、ＩＰ＿ＣでＩＰアドレスは重複していないと判定する。
【００７２】
図１７は、図１５及び図１６に例示したＩＰアドレス重複検出動作を実行するＩＰアドレス重複検出装置の処理フローを説明する図である。
図に示すように、ステップＳ１７００において、調査対象ＩＰアドレスに対して要求ＩＰパケットを連続送信しながら、調査対象ＩＰアドレスが属するネットワーク境界にある中継装置の調査対象ＩＰアドレスに対するＡＲＰキャッシュをクリアするコマンドを送出する。
【００７３】
次にステップＳ１７０２〜ステップＳ１７０８の処理に進むが、これらの処理は図１２に示す実施例１のステップＳ１２０２〜ステップＳ１２０８の処理と同じであるので、説明を省略する。
【００７４】
以上、本発明に係るＩＰアドレス重複検出についての実施例１〜３による基本的な手順について説明した。しかし、重複しているＩＰアドレスに対する調査であっても、調査のタイミングによっては、中継装置Ｒ−１のＡＲＰキャッシュが入れ替わらなかったり、識別子フィールド値に有意な差が現れなかったりすることもあり得る。そこで、各実施例１〜３において、ＩＰアドレス重複調査を何度かリトライすることで総合的に判断することが有効である。
【００７５】
図１８は、ＩＰアドレス重複調査を何度かリトライする実施例４の処理フロー例を説明する図である。
図に示すように、ステップＳ１８００において、実施例１〜３のいずれかの手順により、調査対象のＩＰアドレスに対してＩＰアドレスの重複発生有無の調査を実行する。次にステップＳ１８０２に進み、ステップＳ１８００でＩＰアドレスの重複を検知したか判定し、ＩＰアドレスの重複を検知したのであればステップＳ１８０４に移行してＩＰアドレスの重複有りと判定し、ＩＰアドレスの重複を検知していなければ、ステップＳ１８０６に進み、指定回数ステップＳ１８００のＩＰアドレス重複発生の有無を調査したか判定する。
【００７６】
ＩＰアドレス重複発生有無の調査を指定回数実行していなければステップＳ１８００に戻り、指定回数実行していれば、ステップＳ１８０８においてＩＰアドレス重複なしとして処理を終了する。
【００７７】
実施例４においてリトライ回数を何回と指定するかは、ＩＰアドレス重複検出の処理負担と検出精度のトレードオフにより決定される。
以上説明した実施例１〜４では、調査対象ＩＰアドレスを指定して調査するものであったが、あるネットワーク内の全IPアドレスを調査したい場合がある。
【００７８】
図１９は、調査対象ネットワークに含まれる全てのＩＰアドレスの重複発生の有無を調査する実施例５の処理フロー例を説明する図である。
図に示すように、ステップＳ１９００において、調査対象ネットワークのアドレスから、調査対象ネットワークに含まれる全てのＩＰアドレスを抽出する。
【００７９】
例えば、調査対象ネットワークのアドレスとして、192.168.10.0/24が設定されたとする。すると、該調査対象ネットワークに含まれる全ＩＰアドレスとして、192.168.10.1〜192.168.10.254の254個のＩＰアドレスを抽出する。
【００８０】
次に、ステップＳ１９０２において、抽出した全ＩＰアドレス各々に対して、実施例１〜４のいずれかの手順に従ってＩＰアドレス重複発生有無の調査を実行する。
先の例で言えば、抽出した254個の各ＩＰアドレスに対して、実施例１〜４のいずれかの手順に従ってＩＰアドレス重複発生有無の調査を実行する。
【００８１】
次に実施例６について説明する。実施例１〜５は、あるタイミングで一度だけ調査を実行するものであるが、ＩＰアドレス重複発生有無の調査の利用法として、ＩＰアドレス重複発生時に早期に検出できるよう、常時監視したい場合がある。本実施例６は、ＩＰアドレス重複発生有無を常時監視するものである。
【００８２】
図２０は、実施例６の処理フロー例を説明する図である。
図に示すように、ステップＳ２０００において、実施例１〜５のいずれかの手順により、調査対象のＩＰアドレスあるいはネットワークに対してＩＰアドレスの重複発生有無の調査を実行する。そして、ステップＳ２００２において、ステップＳ２０００の実行から指定時間が経過したか判定して指定時間経過していれば、ステップＳ２０００の処理を繰り返す。監視周期として、例えば300秒が設定されたとすると、監視周期300秒が経過した場合、再度ステップＳ２０００から実行する。
【００８３】
以上、詳細に説明したところから明らかなとおり、本発明のＩＰアドレス重複検出装置の機能がコンピュータプログラムにより実現されることは明らかである。
したがって、コンピュータを本発明のＩＰアドレス重複検出装置として機能させるプログラムあるいは本発明の方法による手順をコンピュータに実行させるプログラム、及び該プログラムを記憶したコンピュータ読み取り可能な記憶媒体は、本発明の実施の形態に含まれる。
【００８４】
（付記１）
ＩＰネットワーク内のＩＰアドレスの重複を検出するＩＰアドレス重複検出方法において、
前記ＩＰネットワーク内の調査対象ＩＰアドレスに対する複数の要求ＩＰパケットを該ＩＰネットワーク外から送出する要求ＩＰパケット送出ステップと、
前記要求ＩＰパケットに対する応答ＩＰパケットのＩＰヘッダ内の識別子の値を監視することにより、前記調査対象ＩＰアドレスの重複発生の有無を判定するＩＰアドレス重複
判定ステップと、
を備えることを特徴とするＩＰアドレス重複検出方法。
（付記２）
付記１に記載のＩＰアドレス重複検出方法において、
前記要求ＩＰパケット送出ステップに先立って、前記ＩＰネットワークのネットワーク境界にある中継装置において前記調査対象ＩＰアドレスに対するＡＲＰキャッシュがクリアされていることを確認するＡＲＰキャッシュクリア確認ステップを備えることを特徴とするＩＰアドレス重複検出方法。
（付記３）
付記１に記載のＩＰアドレス重複検出方法において、
前記要求ＩＰパケット送出ステップは、複数の要求ＩＰパケットを前記ＩＰネットワーク内の調査対象ＩＰアドレスに対して連続して送信しながら、前記ＩＰネットワークのネットワーク境界にある中継装置のＡＲＰキャッシュをクリアするコマンドを送出するものであることを特徴とするＩＰアドレス重複検出方法。
（付記４）
付記２又は付記３に記載のＩＰアドレス重複検出方法において、
前記ＩＰアドレス重複判定ステップは、前記応答ＩＰパケットのＩＰヘッダ内の識別子の値の最大値と最小値の差分と閾値を比較することにより、前記調査対象ＩＰアドレスの重複発生の有無を判定することを特徴とするＩＰアドレス重複検出方法。
（付記５）
付記１に記載のＩＰアドレス重複検出方法において、
前記ＩＰアドレス重複判定ステップで前記調査対象ＩＰアドレスの重複発生が無いと判定した場合、前記要求ＩＰパケット送出ステップに戻ってＩＰアドレス重複判定ステップまでのステップを所定回数繰り返し、全ての前記ＩＰアドレス重複判定ステップで前記調査対象ＩＰアドレスの重複発生が無いと判定した場合に前記調査対象ＩＰアドレスの重複発生が無いと検出することを特徴とするＩＰアドレス重複検出方法。
（付記６）
ＩＰネットワーク外から該ＩＰネットワーク内のＩＰアドレスの重複を検出するＩＰアドレス重複検出方法において、
前記ＩＰネットワークのアドレスから該ＩＰネットワークに含まれる全てのＩＰアドレスを抽出し、
抽出した全てのＩＰアドレスに対して付記１又は付記５に記載のＩＰアドレス重複検出方法を実行することを特徴とするＩＰアドレス重複検出方法。
（付記７）
ＩＰネットワーク外から該ＩＰネットワーク内のＩＰアドレスの重複を検出するＩＰアドレス重複検出方法において、
付記１又は付記５に記載のＩＰアドレス重複検出方法を指定された時間経過ごとに実行することを特徴とするＩＰアドレス重複検出方法。
（付記８）
ＩＰネットワーク外から該ＩＰネットワーク内のＩＰアドレスの重複を検出するＩＰアドレス重複検出装置において、
複数の要求ＩＰパケットを前記ＩＰネットワーク内の調査対象ＩＰアドレスに対して送出する要求ＩＰパケット送出手段と、
前記要求ＩＰパケットに対する応答ＩＰパケットのＩＰヘッダ内の識別子の値を監視する応答ＩＰパケットモニタ手段と、
前記応答ＩＰパケットモニタ手段による前記応答ＩＰパケットのＩＰヘッダ内の識別子の値に基づいて調査対象ＩＰアドレスの重複発生の有無を判定するＩＰアドレス重複発生有無解析手段と、
を備えることを特徴とするＩＰアドレス重複検出装置。
（付記９）
付記８に記載のＩＰアドレス重複検出装置において、
前記要求ＩＰパケット送出手段による要求ＩＰパケット送出に先立って、前記ＩＰネットワークのネットワーク境界にある中継装置において前記調査対象ＩＰアドレスに対するＡＲＰキャッシュがクリアされていることを確認するＡＲＰキャッシュクリア確認手段を備えることを特徴とするＩＰアドレス重複検出装置。
（付記１０）
付記８に記載のＩＰアドレス重複検出装置において、
前記要求ＩＰパケット送出手段は、複数の要求ＩＰパケットを前記ＩＰネットワーク内の調査対象ＩＰアドレスに対して連続して送信するものであり、該要求ＩＰパケット送出手段が連続して前記複数の要求ＩＰパケットを前記ＩＰネットワーク内の調査対象ＩＰアドレスに対して送信している間に、前記ＩＰネットワークのネットワーク境界にある中継装置のＡＲＰキャッシュをクリアするコマンドを送出するＡＲＰキャッシュクリアコマンド送出手段を備えることを特徴とするＩＰアドレス重複検出装置。
（付記１１）
付記９又は付記１０に記載のＩＰアドレス重複検出装置において、
前記ＩＰアドレス重複発生有無解析手段は、前記応答ＩＰパケットのＩＰヘッダ内の識別子の値の最大値と最小値の差分と閾値を比較することにより、前記調査対象ＩＰアドレスの重複発生の有無を判定することを特徴とするＩＰアドレス重複検出装置。
（付記１２）
コンピュータを付記１乃至付記４のいずれか１項に記載のＩＰアドレス重複検出方法の前記各ステップを実行させるためのプログラム。
【図面の簡単な説明】
【００８５】
【図１】ネットワーク外部からＩＰアドレス重複を検出する従来例の処理フロー図である。
【図２Ａ】従来例によるＩＰアドレスの重複検出動作例１を説明する図である。
【図２Ｂ】従来例によるＩＰアドレスの重複検出動作例２を説明する図である。
【図３】ＩＰヘッダのフォーマット図である。
【図４】本発明の実施例１の概要を説明するフロー図である。
【図５】本発明の実施例１の構成例を示す図である。
【図６】本発明の実施例２の概要を説明するフロー図である。
【図７】本発明の実施例２の構成例を示す図である。
【図８】本発明の実施例３の概要を説明するフロー図である。
【図９】本発明の実施例３の構成例を示す図である。
【図１０】本発明の各実施例におけるネットワーク構成の具体例を共通に示す図である。
【図１１】実施例１によるＩＰアドレスの重複検出動作例を説明する図である。
【図１２】実施例１のＩＰアドレス重複検出装置の処理フローを説明する図である。
【図１３】実施例２によるＩＰアドレスの重複検出動作例を説明する図である。
【図１４】実施例２のＩＰアドレス重複検出装置の処理フローを説明する図である。
【図１５】実施例３によるＩＰアドレスの重複検出動作例１を説明する図である。
【図１６】実施例３によるＩＰアドレスの重複検出動作例２を説明する図である。
【図１７】実施例３のＩＰアドレス重複検出装置の処理フローを説明する図である。
【図１８】ＩＰアドレス重複検出をリトライする実施例４の処理フローを説明する図である。
【図１９】実施例５の処理フローを説明する図である。
【図２０】実施例６の処理フローを説明する図である。
【符号の説明】
【００８６】
９  調査対象ＩＰアドレスが属するネットワーク
１０  ＩＰアドレス重複検出装置
２０  要求ＩＰパケット送出手段
３０  応答ＩＰパケットモニタ手段
４０  ＩＰアドレス重複発生有無解析手段
５０  ＡＲＰキャッシュクリア確認手段
６０  ＡＲＰキャッシュクリアコマンド送出手段
【図１】
0004900237.tif 000002
【図２Ａ】
0004900237.tif 000003
【図２Ｂ】
0004900237.tif 000004
【図３】
0004900237.tif 000005
【図４】
0004900237.tif 000006
【図５】
0004900237.tif 000007
【図６】
0004900237.tif 000008
【図７】
0004900237.tif 000009
【図８】
0004900237.tif 000010
【図９】
0004900237.tif 000011
【図１０】
0004900237.tif 000012
【図１１】
0004900237.tif 000013
【図１２】
0004900237.tif 000014
【図１３】
0004900237.tif 000015
【図１４】
0004900237.tif 000016
【図１５】
0004900237.tif 000017
【図１６】
0004900237.tif 000018
【図１７】
0004900237.tif 000019
【図１８】
0004900237.tif 000020
【図１９】
0004900237.tif 000021
【図２０】
0004900237.tif 000022