1,問題描述
拓撲圖:
網絡中戴爾和H3C是直連的設備,互聯VLAN為VLAN 100,且能夠互相ping通。管理接口都是三層口,直接配置管理IP,不是二層接口劃入VLAN起VLANIF的方式。
故障現象:S5700接入網絡後,就會導致戴爾和H3C直連不通。
2,處理過程
1.未接入S5700,正常情況下戴爾交換機的ARP表項:
Daier#sho arp
Protocol Address Age(min) Hardware Address Interface VLAN CPU
-----------------------------------------------------------------------------------------
Internet 10.10.10.30 3 70:f9:6d:52:f7:95 Ma 0/0 - CP
Internet 10.10.10.108 0 00:1e:67:23:cc:d5 Ma 0/0 - CP
Internet 192.168.100.5 - 00:01:e8:82:4a:b5 - Vl 100 CP
Internet 192.168.100.30 3 70:f9:6d:52:f7:95 Gi 0/1 Vl 100 CP //關於H3C的ARP表項
Internet 192.168.100.31 3 04:fe:8d:e8:c7:9b Gi 0/2 Vl 100 CP //關於S5700的ARP表項
2.接入S5700後,戴爾交換機的ARP表項:
Daier#sho arp
Protocol Address Age(min) Hardware Address Interface VLAN CPU
-----------------------------------------------------------------------------------------
Internet 10.10.10.30 0 70:f9:6d:52:f7:95 Ma 0/0 - CP
Internet 10.10.10.108 0 00:1e:67:23:cc:d5 Ma 0/0 - CP
Internet 192.168.100.5 - 00:01:e8:82:4a:b5 - Vl 100 CP
Internet 192.168.100.30 0 70:f9:6d:52:f7:95 Gi 0/2 Vl 100 CP //關於H3C的ARP表項,從G0/0/2口學習到(接S5700的接口)
Internet 192.168.100.31 0 04:fe:8d:e8:c7:9b Gi 0/2 Vl 100 CP //關於S5700的ARP表項
3.抓包分析:
戴爾—>S5700,出方向抓包:戴爾交換機有發給S5700關於H3C 192.168.100.30的免費ARP報文。
S5700—>戴爾,出方向抓包:S5700有發給戴爾關於H3C 192.168.100.30的免費ARP報文,這樣就導致中間戴爾交換機從S5700學習到關於H3C的ARP表項。
4.排查配置:
S5700:
interface GigabitEthernet0/0/1
port default vlan 100
port bridge enable //S5700接口下配置了port bridge enable 。
#
經測試,接口下刪除port bridge enable這條命令後,問題解決。
3,根因
port bridg enable命令用來使能端口橋功能,即接口支持同源同宿報文的轉發。 同源同宿報文即源MAC地址和目的MAC地址均在設備的同一接口上學習到的報文。缺省情況下,設備不轉發同源同宿報文,當接口收到這種報文時,設備判斷為非法報文並直接丟棄該報文。
配置端口橋功能後,當接口收到同源同宿報文時,若設備上的MAC地址表中存在與該報文的目的MAC地址對應的表項,則將報文從本接口轉發出去。
從交換機層面來看,"廣播地址能夠被所有的物理接口學習到",所以啟用了端口橋功能的接口在收到免費ARP廣播後,也會從本接口發送出去。
戴爾交換機G0/0/1接口收到H3C設備發送的免費ARP報文後,從G0/0/2接口轉發給S5700,S5700 G0/0/1接口下由於配置了port bridge enable使能端口橋功能,導致G0/0/1收到的免費ARP廣播報文又從G0/0/1接口發回去,最終戴爾交換機上關於H3C 192.168.100.30的ARP表項是從S5700學習到。
4,解決方案
S5700接口下:undo port bridge enable取消使能端口橋功能。
閱讀更多 王海軍老師 的文章