2016-09-18 25 views
-1

假設有在任何節點中沒有ARP緩存,並且交換機表是空的,並且源和目的地的IP地址是已知的(使用DNS)。同樣所有的節點都被認爲是在相同的子網。如果n1想要將數據包發送到特定的節點,比如n2,它需要MAC地址爲n2。
我想在這種情況下將發送一個ARP請求來獲得相應的MAC地址。但是我的朋友說n1會播放主幀,所有節點都會提取幀,直到網絡層知道這個數據包是否適合他們。
第一種方法是否實施第二種方法將改變交換機中的表的更新方式。那麼,有人可以澄清我的困惑嗎?給定子網的交換機表的初始化機制是什麼?

回答

1

它發生的方式是,需要將第3層地址解析爲第2層地址的主機將廣播ARP請求。具有該第3層地址的主機將通過對請求主機的單播ARP回覆作出響應。

交換機將看到進入交換機的任何幀的第2層源地址,並且它將用源MAC地址和幀進入交換機的接口構建其MAC地址表。目的地址不在MAC地址表中的任何單播幀都將被洪泛到所有其他交換機接口。

在你討論的情況下,第一臺主機會廣播一個ARP請求,所以ARP請求將轉到同一個VLAN上的所有主機。同時,交換機會將請求主機的MAC地址添加到其MAC地址表中。

目標主機將以單播幀響應請求主機。交換機通過查看其MAC地址表,知道目的主機在哪個接口上,將直接發送幀到目標主機。它還會看到第二個主機的源地址,並將該MAC地址和接口添加到其MAC地址表中。

然後,原始主機可以使用目標MAC地址將幀發送到目標主機,並且交換機將幀直接切換到目標主機,因爲它的MAC地址表和MAC地址表中包含MAC地址和接口。

+0

是否ARP廣播通過交換機(第一跳到交換機,然後到其他節點)或節點和交換機獲得廣播(在同一跳中)到達其他節點,並且交換機僅使用該信息更新表格? – Ugnes

+0

交換機使用每個傳入幀的源地址更新其MAC地址表。在討論躍點時,通常保留給三層設備。第二層設備是透明的,不會改變幀,因此無論一幀通過多少交換機,二層交付實際上是單跳(從第3層主機到第3層主機)。 –

0

最初,源節點將發送一個廣播請求,以獲得所需IP地址的MAC地址。實現即將到來的數據包的交換機是廣播,將信道化數據包到其他剩餘的端口。交換機將爲相應的源節點構建表。
所有其他節點將丟棄數據包,除了它所在的數據包之外。該節點將用單播應答回覆其MAC地址。
現在由於這個數據包的目的地已經存在於交換機的表中,它將簡單地將數據包轉發到相應的端口。