假設有在任何節點中沒有ARP緩存,並且交換機表是空的,並且源和目的地的IP地址是已知的(使用DNS)。同樣所有的節點都被認爲是在相同的子網。如果n1想要將數據包發送到特定的節點,比如n2,它需要MAC地址爲n2。
我想在這種情況下將發送一個ARP請求來獲得相應的MAC地址。但是我的朋友說n1會播放主幀,所有節點都會提取幀,直到網絡層知道這個數據包是否適合他們。
第一種方法是否實施第二種方法將改變交換機中的表的更新方式。那麼,有人可以澄清我的困惑嗎?給定子網的交換機表的初始化機制是什麼?
-1
A
回答
1
它發生的方式是,需要將第3層地址解析爲第2層地址的主機將廣播ARP請求。具有該第3層地址的主機將通過對請求主機的單播ARP回覆作出響應。
交換機將看到進入交換機的任何幀的第2層源地址,並且它將用源MAC地址和幀進入交換機的接口構建其MAC地址表。目的地址不在MAC地址表中的任何單播幀都將被洪泛到所有其他交換機接口。
在你討論的情況下,第一臺主機會廣播一個ARP請求,所以ARP請求將轉到同一個VLAN上的所有主機。同時,交換機會將請求主機的MAC地址添加到其MAC地址表中。
目標主機將以單播幀響應請求主機。交換機通過查看其MAC地址表,知道目的主機在哪個接口上,將直接發送幀到目標主機。它還會看到第二個主機的源地址,並將該MAC地址和接口添加到其MAC地址表中。
然後,原始主機可以使用目標MAC地址將幀發送到目標主機,並且交換機將幀直接切換到目標主機,因爲它的MAC地址表和MAC地址表中包含MAC地址和接口。
0
最初,源節點將發送一個廣播請求,以獲得所需IP地址的MAC地址。實現即將到來的數據包的交換機是廣播,將信道化數據包到其他剩餘的端口。交換機將爲相應的源節點構建表。
所有其他節點將丟棄數據包,除了它所在的數據包之外。該節點將用單播應答回覆其MAC地址。
現在由於這個數據包的目的地已經存在於交換機的表中,它將簡單地將數據包轉發到相應的端口。
相關問題
- 1. 返回初始化列表機制
- 2. 爲什麼使用「指定初始值設定項」初始化C union給出隨機值?
- 3. 什麼是ADD_ACTION(「初始化
- 4. 什麼是初始化塊?
- 5. 隨機數未初始化
- 6. 在初始化相機
- 7. 代表隨機屬性初始化
- 8. PHP交換機給第一行沒有選定的收音機
- 9. Sencha Touch 2 - 什麼是初始化和初始化?
- 10. Java虛擬機的內存初始化
- 11. 0訓練隨機初始化權重後會發生什麼?
- 12. 子類定製UIView - 如何初始化
- 13. NSTableCellView子類的指定初始值設定項是什麼?
- 14. 優化交換機的模板替換
- 15. AngularJS - 初始化控制器的正確語法是什麼?
- 16. 通用與Aeson的ToJSON類交互的機制是什麼?
- 17. 初始化列表中的種子序列初始化
- 18. Libgdx正交相機初始位置
- 19. 「值初始化」是什麼意思?
- 20. 什麼是結構初始化爲C++
- 21. 什麼是未初始化常量?
- 22. 定義中結構成員初始化的術語是什麼?
- 23. 什麼是NSTokenField指定的初始化程序?
- 24. ALLOC +初始化的內存使用機制
- 25. 機制初始化數組的一個字符串用C
- 26. 的Android錄製視頻,初始化相機
- 27. 什麼是交換機良好的「不可達」錯誤?
- 28. 初始化用的for_each列表的隨機變量
- 29. 初始化大整數列表的最快方法是什麼?
- 30. std :: map擴展初始化器列表是什麼樣的?
是否ARP廣播通過交換機(第一跳到交換機,然後到其他節點)或節點和交換機獲得廣播(在同一跳中)到達其他節點,並且交換機僅使用該信息更新表格? – Ugnes
交換機使用每個傳入幀的源地址更新其MAC地址表。在討論躍點時,通常保留給三層設備。第二層設備是透明的,不會改變幀,因此無論一幀通過多少交換機,二層交付實際上是單跳(從第3層主機到第3層主機)。 –