2013-07-11 27 views
0

當兩臺計算機在局域網(例如192.168.1.100)中設置相同的IP地址時,它們都可能會收到不完整的數據包。 tcp對他們有何反應?他們會要求轉播嗎?當ip衝突時,tcp如何反應?

+0

我建議你建立一對[VMs](https://www.virtualbox.org/),打開[Wireshark](http://www.wireshark.org/),然後試試! –

+0

這可能取決於您的網絡以及如何設置數據包的路由(例如[第2層vs第3層交換機](http://en.wikipedia.org/wiki/LAN_switching))。在第3層交換機上,可能沒有問題,因爲它會根據IP進行緩存。 – tjameson

+0

我希望它主要取決於ARP回覆的競爭條件。 (「我有.100!」,「不,我有.100!」)由於設備具有*相同的* IP,這意味着它們在*相同的子網中 - 所以第3層路由與無關這個。這些都是**誰在ARP緩存中(對於源,如果他在同一個子網中,或者對於路由器,如果他不在)。 –

回答

0

你有兩種情況可以發生這種情況,其中一臺計算機能夠正常通信,而另一臺根本無法通信,或者它們都不會通信(如果它將MAC地址存儲在ARP緩存中,它將會仍嘗試路由到網絡上的第一臺計算機)。另外,根據方向,如果沒有重複地址的計算機嘗試聯繫其中一個副本,它將不會是正確的計算機,因爲他們將爭奪擁有該IP地址的人。如果你交換了這種情況,它會要求重新傳輸,但不能保證它會獲得它們,這會導致他們爲我回復的回覆而戰。

+0

現在如何爲您的想法發生一些理由。 –

0

我的理解是,由於序號錯誤,TCP會重置連接。所以,根據堆棧何時檢測到序列號錯誤,連接會神祕地隨機斷開連接。