託管乙太網交換機每埠 MAC 地址轉換?
在這裡只是在黑暗中拍攝,但我想我會問一下,以防有人有一些想法:
我有一個測試場景,其中一些(無 GUI/嵌入式)IPv6 設備將臨時插入託管乙太網交換機的埠,以及一個控製程序(在單獨的 Linux PC 上執行,也連接到交換機) 將檢測這些設備之一何時出現在 LAN 上,並自動執行測試以確保設備正常工作。
通常會同時連接十幾個這樣的設備(因此我們可以並行執行測試),並且設備將由不一定了解網路的人定期連接和斷開連接;他們只知道如何插入乙太網電纜,然後(幾個小時後)查看 PC 的螢幕以查看測試是否通過。
目前的問題是如何在特定設備未通過測試時向測試人員指示。一種選擇是讓錯誤日誌/消息包含設備的 MAC 地址(源自其本地鏈路 IPv6 地址),這在緊要關頭可能就足夠了,但如果測試程序也可以說類似的話會更好“連接到埠 #5 的設備工作不正常,看看那個”。這樣,測試人員只需通過乙太網電纜即可找到故障設備,而不必在找到匹配的設備之前弄清楚每個設備的 MAC 地址是什麼。
我認為Linux 電腦不可能知道特定設備連接到哪個交換機埠(如果我錯了,請告訴我)。但假設是這種情況,下一個最好的事情是如果我可以對交換機進行程式以進行 MAC 地址轉換,例如,插入埠 #n 的任何設備總是出現(對於 Linux 電腦),就好像它有 MAC地址 foo:bar:baz:n,因此顯示為 IPv6 地址 fe80::2foo:bar:baz:n。如果交換機像這樣進行 MAC 地址轉換,那麼控制軟體可以通過查看假 MAC 地址的最後一部分來確定設備連接到哪個埠。
所以我的問題是,任何託管乙太網交換機都支持這種行為嗎?如果是這樣,這個功能叫什麼(所以我可以找到一個開關)?如果沒有,是否有更好的方法來解決這個問題,而我應該研究一下?
我從未聽說過可以轉換 MAC 地址的交換機。然而,大多數優秀的託管交換機會讓您做的是通過 SNMP 查詢網橋表:標準網橋 MIB 中的 dot1dBridge.dot1dTpFdbTable 看起來像是要走的路。您需要將 MAC 地址轉換為十進制並將其附加到 MIB 前綴,它會吐出它學習到的埠。如果您需要處理 VLAN,還有一些額外的技巧。