某客户全网使用华为3com公司系列交换机,全网分为三层结构:各个楼层配线间内多台Quidway S3000系列交换机作为接入交换机;接入交换机之间进行堆(或级联)并通过两对光纤上联到两台作为汇聚层设备的8512上;汇聚层8512交换机使用链路聚合技术分别通过两条光纤上联至两台核心交换机8512上。核心85通过上联1台AR46-40接入Internet。客户现场出现B1楼层交换机不可达现象,无法ping通和telnet。
首先赶到B1配线间,通过console线登陆交换机,使能loopback detection命令,其中一台交换机上联8512-3的端口提示环路信息,但其他交换机没有提示本地环路信息,说明环路是存在于远端的。通过分析环路所在vlan,怀疑环路存在于A14层的接入交换机上。为避免环路影响其他楼层将8512-4关掉,之后到A14配线间,打开交换机loopback detection功能,发现一台交换机提示本地两端口间存在环路。将这两个端口shut down后,网络恢复正常。
以下是A14-S3050-1上报告的环路提示信息:
%Dec 7 19:52:58 2005 A14-S3050-1 DRV_NI/5/LOOP BACK:
Transmit packet from port 43 vlan 141,Received it from port 45 vlan 140!
说明报文从43号端口的vlan 141出去,从45号端口的vlan 140回来。可能有以下两个原因:
1. 这两个端口下接hub将属于不同vlan的端口环了起来。
2. 这两个端口下接双网卡的PC机,网卡间由于桥接形成环路。
后经中环网管网络维护人员排查属于第一种情况。
当一台交换机形成环路时,首先会影响存在环路所在vlan的其他交换机,即在vlan内产生大量的广播报文,导致设备产生不可达等异常现象。由于这次首先受环路影响的交换机与环路实际产生的交换机不在同一楼层,为环路排查增加了一些困难。
针对这种情况,首先我们建议将打开楼层交换机的loopback detection功能:
[系统视图] loopback-detechtion enalbe
当检测到端口存在环回后,首先会上报log,提示某个端口在某个vlan中存在环回情况。
对于上行的trunk口,有两种处理方法:
一是关掉loopback detection功能:
[接口视图]undo loopback-detechtion enalbe
因为trunk口作为上联口提示的环路存在于远端,无法具体定位环路,没有太大的实际意义。
二是打开loopback detection功能,但使其处于不受控状态(默认为受控状态,受控时不再进行mac地址学习)。当该端口检测到某个vlan存在环路后,仅仅上报环回的trap,但不会使端口进入受控状态。这样,一些vlan的环路则不会影响别的vlan中的业务。
[接口视图]undo loopback-detechion control enable
缺省情况下,每隔30秒检测一次,基本上对用户网络不会产生影响,而且检测间隔从5秒到300秒可调:
loopback-detechtion interval-time [5-300]
另外,可将易出问题的部门所在楼层交换机的日志信息发送到日志主机上,出问题时方便查看。