同じMACアドレスと異なるIPを持つ2つのホスト


2

3ホスト:H1、H2、H3がスイッチに接続されています。 MAC(H1)= MAC(H2)。それらはすべて異なるIPを持っています。 H3がH1をpingしたらどうなりますか?そして、H1とH2が同時にH3にpingを開始したら? (ARPテーブルはクリアされます)

回答:


3

ちょっと推測して、私は実際にこれを試していません。

IP層で:

ARPテーブルはIPをMACにマップするだけなので、Host3がパケットを送信しようとしてもこれは問題になりません。 1つのHost12に両方のIPが割り当てられているように、両方を覚えているだけです。

Host1が自身のMACを持つがHost2のIPを持つパケットを受信した場合、それはどちらかそれを破棄するかもしれません。またはICMPエラーを送信します。またはルーターとして機能し、パケットをHost2に転送しようとします。 (おそらく成功しないでしょう。)全体的に見て、これはHost1の設定とおそらくそのOSに依存します。

MACレイヤで:

スイッチは同様のキャッシュを持っています - スイッチポートルックアップテーブルへのMACアドレス。 この 問題が発生します - スイッチがMAC½がポート1にあることを知ると、転送します すべて Host2がそれ自身のパケットを送信する瞬間までHost1へのパケット...そしてスイッチはMACテーブルを更新し、そして今やすべてが代わりにHost2に行きます。

そのため、両方のホストがパケットを送信できるようになりますが、受信パスは2つの瞬間ごとに2つの間でバウンスします。


それは本当に良い技術的説明です。実際には、VirtualboxでVMを複製し、MACアドレスを再初期化するのを忘れたときに、この問題に遭遇しました。クローンに新しいIPアドレスを付けましたが、通信できませんでした。したがって、この質問に対する簡単な答えは、コミュニケーションの破綻です。
Charles Burge

回答ありがとうございます。私はWiresharkを使ってラボでいくつかのテストを行いました。 H3がH1をpingすると、一部のパケットはH2に送信されます。次にH2はパケットを転送し、ICMPリダイレクトを送信します(H1がすべてのICMPパケットを受信したとしても、WiresharkはH2のWiresharkに転送されたパケットを表示しません) H1とH2がH3にpingを実行したときに何が起こるのかわからない。 Wiresharkが「No response found」とマークするICMP要求を除いて、すべて問題ありません(すべての要求と応答があります)。たぶんあなたが話していた問題(スイッチのキャッシュ)が原因です。
Andrea
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.