二层环路怎么办
简介
以太网交换网络中为了提高网络可靠性,通常会采用冗余设备和冗余链路,然而现网中由于组网调整、配置修改、升级割接等原因,经常会造成数据或协议报文环形转发,不可避免的形成环路。二层网络设备处于同一个广播域下,广播报文在环路中会反复持续传送,无限循环,形成广播风暴,引发MAC地址表不稳定等故障现象,进而影响正常业务,导致用户通信质量较差,甚至通信中断。
本文档将主要介绍如何识别二层网络的环路问题以及常见处理方法。
识别环路
可以通过如下现象和手段识别环路:
- 端口产生数据报文风暴
<HUAWEI> display interface brief | include up PHY: Physical *down: administratively down ^down: standby (l): loopback (s): spoofing (b): BFD down (e): ETHOAM down (d): Dampening Suppressed (p): port alarm down (dl): DLDP down InUti/OutUti: input utility rate/output utility rate Interface PHY Protocol InUti OutUti inErrors outErrors 10GE2/0/3 up up 70% 70% 0 0 10GE2/0/5 up up 70% 70% 0 0 MEth0/0/0 up up 0.01% 0.01% 0 0 NULL0 up up(s) 0% 0% 0 0
需要将上述查看到的端口流量和正常业务情况下的端口流量做对比,如果端口流量比正常业务大很多,可能出现环路:
如果只有一个端口风暴,可能是上述环路类型的本端自环和下游设备环路场景。
如果是两个端口风暴,则可能是上述环路类型的不同端口之间环路和环形组网的场景。
如果有更多的端口风暴,则可能是上述环路类型的几种情况组合之后的复杂场景。
- 检测发生MAC地址漂移
通过日志查看接口的MAC漂移记录。
可在日志log.log中或者用display logbuffer命令查看。如下信息表明有MAC地址漂移的记录,则说明在相应的接口可能有环路。Sep 15 2013 15:23:58 A8_CE12808_1 %%01FEI/4/hwMflpVlanLoopAlarm_active(l):CID=0x807f047e-alarmID=0x095e0012;MAC flapping detected, VlanId = 310, MacAddress = 0016-3e00-0464, Original-Port = Eth-Trunk49, Flapping port = Eth-Trunk33,-. Please check the network to which the interface learning a flapping MAC address is connected.
在任意视图下执行display mac-address flapping命令查询接口的MAC漂移记录。
在回显信息中,MoveNum表示在相应时间段漂移的次数,如果MoveNum数值很大,表明出现了大量的MAC漂移,则极可能为环路导致,需要根据接口重点排查。
协议状态不稳定
环路可能导致某些协议(如OSPF)报文丢失、环回到本设备、或者重复多份,可能导致协议不稳定。如果有大量的此类日志记录,则可能出现环路。Sep 16 2013 10:55:56 A8_CE12808_1 %%01OSPF/6/NBR_CHANGE(l):CID=0x808304c7;Neighbor changes event: neighbor status changed. (ProcessId=1, NbrIpAddr=10.192.0.46, NbrEvent=1-Way, NbrPreviousState=ExStart, NbrCurrentState=Init) Sep 16 2013 10:55:56 A8_CE12808_1 %%01OSPF/6/NBR_CHANGE(l):CID=0x808204c3;Neighbor changes event: neighbor status changed. (ProcessId=1, NbrIpAddr=10.192.0.46, NbrEvent=2WayReceived, NbrPreviousState=Init, NbrCurrentState=ExStart)
上送CPU的协议报文(如ARP)被抑制丢弃
当环回导致的大量报文上送到CPU的时候,可能会被抑制,可以通过display cpu-defend statistics packet-type arp all命令查询。如果出现大量dropped报文,则可能出现环路。<HUAWEI> display cpu-defend statistics packet-type arp all Statistics(packets) on slot 2 : -------------------------------------------------------------------------------- PacketType Total Passed Total Dropped Last Dropping Time Last 5 Min Passed Last 5 Min Dropped -------------------------------------------------------------------------------- arp 34515 14346678 - 34515 1678 --------------------------------------------------------------------------------
使用Loopback Detection功能检测到环路
在相应的端口和VLAN使能Loopback Detection功能,设备会周期性的发送检测报文,当从本端口又收到此报文时,则说明发生了环路。可以根据现网情况配置某端口和VLAN的环回检测功能,通过display loopback-detect命令查看环路情况。
解决环路
当出现环路时,会极大影响网络性能,甚至导致业务异常,需要及时处理。解决环路问题可以从如下几点着手:
- 可能是组网连线导致物理上成环,需要现场工程师排查组网,去除多余的网线或光纤。现网定位时,可以通过shutdown接口来达到链路断开的目的。
现网shutdown接口时,需要特别谨慎,以免中断业务。
在现网定位的时候,一般很难在物理上做操作,所以绝大多数情况下,需要在配置上解决环路。比如:shutdown端口或端口退出成环的VLAN。
另外,可能是由于其他特性导致成环,比如STP、Smartlink等环网协议异常,导致无法正确破环,则需要定位相应特性的问题。请收集上述执行结果、设备的配置文件、日志信息、告警信息,并联系技术支持人员。