プロが教える店舗&オフィスのセキュリティ対策術

IPアドレス競合の検知の範囲について


IPアドレスが競合すると、「IPアドレスが競合してます」といったようなポップアップが出ます。
どのような仕組みでネットワーク内のIPアドレス競合を検知しているのか、IPアドレス競合の検知はどのような範囲まで行われるのかといったことを知りたいです。


以下のように自分でも考えたり想像したりしたのですが、解決できませんでした。


<自分の考え・想像(1)>

IPアドレスのリストといったものを考えると、ARPテーブルが思いつきます。しかし恐らく(間違っているかもしれないですが、)ARPテーブルには同じIPネットワーク上にある機器の情報しか書かれていないと思われます(思っています)。そうすると、ARPテーブルによってIPアドレスの競合の検知が行われているとすると、競合の検知は同じIPネットワーク内でしか行われなくなってしまうと思われます。

例えば、192.168.50.0/24というネットワークに、192.168.50.1というPCがあるとします。192.168.60.0/24のネットワークで192.168.60.1というPCを使っている人が間違って192.168.50.1と設定した上でいつも使っているLANケーブルに接続しまっても検知されなくなってしまいます。

これはおかしいと思うので、ARPによってIPアドレス競合の検知が行われているわけではないのかな?と思いました。


<自分の考え・想像(2)>

もしLANもWANもインターネットも含んだ全てのネットワーク上でIPアドレスの競合が検知されるとしたら、プライベートIPアドレスが使用できなくなってしまう。
 ↓
NATを行っている機器が、IPアドレス情報をシャットアウトしているのではないだろうか?
 ↓
ルータがブロードキャストドメインを分割しているように、NAT機器がIPアドレス競合検知ドメインを分割していると考えられるのではないか?
 ↓
だとしても、結局IPアドレス競合検知はどのように行われているのだろう?


よろしくお願いいたします。

A 回答 (4件)

> IPアドレスが競合すると、「IPアドレスが競合してます」といったようなポップアップが出ます。


> どのような仕組みでネットワーク内のIPアドレス競合を検知しているのか、IPアドレス競合の検知はどのような範囲まで行われるのかといったことを知りたいです。

IPアドレスの競合時のメッセージはWindowsでも異なるのですが、
http://hehao1.seesaa.net/article/18666759.html
古いWindowsでは重複しているIPアドレスを使っている端末のMACアドレスが表示されます
ルータを超えるとMACアドレスは直接見えなくなってしまうので、アドレス競合はルータを超えない範囲でARPを見て検出しています

> 例えば、192.168.50.0/24というネットワークに、192.168.50.1というPCがあるとします。192.168.60.0/24のネットワークで192.168.60.1というPCを使っている人が間違って192.168.50.1と設定した上で

この場合、192.168.60.2のPCが192.168.50.1のPCと通信しようとした場合、192.168.50.1は外のネットワークと判断してデフォルトゲートウェイ(もしくは192.168.50.0/24向けにスタティックルートを切られたゲートウェイ)に対してARPを投げます
192.168.60.2のPCが間違った192.168.50.1のマシンへはARPを投げることはありません
間違った192.168.50.1のPCは192.168.60.0/24のネットワーク内で孤立するだけなので、別にIPアドレスの重複が検出できなくても困ることはありません
(間違った192.168.50.1のPCのユーザだけがつながらなくて困るだけ)
    • good
    • 0

No.2さんが殆ど書いてくれたので書くことがないなぁ。


強引に補足すると、ARPによるアドレス衝突検知についてはRFC5227で定義されています。

その他細かいところを拾ってくと:

> NATを行っている機器が、IPアドレス情報をシャットアウトしているのではないだろうか?

これも正解です。
あちこちでプライベートIPアドレスが利用されているにもかかわらず、みんなWEBサイトなどにアクセスできているのはNAT(NAPT)のおかげです。

> ルータがブロードキャストドメインを分割しているように、NAT機器がIPアドレス競合検知ドメインを分割していると考えられるのではないか?

私の知る限り、NAT機能を持つ機器はルータと同様に全てブロードキャストドメインを分割します。
ARPはブロードキャストですから、ルータやNAT機器でアドレス競合の範囲は分割されます。

なお、ネットワーク単位でのアドレス競合をシステム的に防ぐ方法はありません。
これは人がネットワーク設計と機器設定を行う際に注意して進めるしかありません。

参考URL:http://ja.wikipedia.org/wiki/Address_Resolution_ …
    • good
    • 0

arpで検知している、で正解です。


「競合の検知は同じIPネットワーク内でしか行われなくなってしまう」も正解。
それでは困るのではないか、と言うと、ちょっと困ります。挙げられた例で言うと、192.168.60.0/24にいる人が192.168.50.1にアクセスしようとしたときだけ、IPアドレスの乗っ取りをされている状態になる可能性があるからです。IPを乗っ取られるかどうかはOSの実装依存なので、なんとも言い切れないですが…。
一方で、他のネットワークにいるひとは、192.168.60.0/24にある192.168.50.1にはルーティング的に到達不能です。そんなところにいるとは思わないですから。グローバルに検知しない理由は、ここにもあります。(ルーティング的に互いが見えない)


ARPはキャッシュ、というのはその通りです。付け加えるなら、「自分では問い合わせを行っていないarp replyも登録する」という特徴があります。
    • good
    • 0

>競合の検知は同じIPネットワーク内でしか行われなくなってしまうと思われます。


多分そう。

http://www5e.biglobe.ne.jp/~aji/3min/ss/ss06.html

>正規のARPの使い方じゃないので、Gratuitous ARPっていうみたいよ。

#ARPテーブルってあくまでキャッシュで、キャッシュにデータがなかったら再度問い合わせを行ってデータをつくるもんだと思っているけど違うのかなあ?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!