STP单通引发的网络故障

一、网络环境

某银行带外管理网采用S5500作为服务器网关,S5500上划分3 、4、5三个VLAN,当在S5500与S5560互联端口上放通VLAN 4 后会导致S5560下的服务器业务中断。

1.jpg 

二、分析过程

1、网络变动前S5500与S5560仅放通了VLAN 3 和 5 ,网络均正常;放通VLAN 4后导致网络中断,出现此问题首先怀疑可能是网络出现环路,梳理网络架构排查环路问题,经排查网络不存在环路。

2、检查设备配置,S5560交换机的STP协议全局使能, 网关S5500交换机STP去使能。查看S5560上的接口GigabitEthernet1/0/1 STP状态为DISCARDING状态,接口被阻塞。

[S5560]dis stp brief

 MST ID   Port                                Role  STP State   Protection

 0        GigabitEthernet1/0/1                DESI  DISCARDING  NONE

 0        GigabitEthernet1/0/2                DESI  FORWARDING  NONE

因此S5560下的业务全部中断,通过进一步查看阻塞的原因,端口STP为DISCARDING的原因为Disputed,即端口收到了非阻塞指定端口发出的低优先级消息。

 [S5560]dis stp abnormal-port

 MST ID   Blocked Port                        Reason

 0        GigabitEthernet1/0/1                Disputed

经排查,网络设备均关闭了STP,按理说S5560不应该收到STP报文。通过抓包,S5560上的确收到STP报文,进一步确认发送STP报文的源MAC为服务器MAC,说明有服务器开启了STP功能。

三、原因分析

当S5500与S5560放通VLAN 4后,S5560可以不断的收到服务器发送到网络中的BPDU报文,但S5560发现此BPDU报文的优先级没有自己高,因此S5560将忽略该BPDU报文。对于生成树BPDU协议报文,在链路上传输时,二层报头中不会携带VLAN-Tag字段。因此S5500分别从G1/0/1接口收到S5560的BPDU报文后,将根据其接口的PVID=1,并在VLAN 1中进行转发,因此属于VLAN4的服务器无法收到S5560的BPDU报文。当S5560 G1/0/1接口收到了服务器发来BPDU报文,未收到正常协商时的BPDU报文后,将判断为下行网络存在异常,触发了STP  Dispute保护机制,把自己G1/0/1接口状态置为discarding,且发送BPDU报文。

四、解决方法

1、VLAN 4中有服务器开启了STP功能,找到此服务器,关闭服务器的STP功能。因现网有较多服务器,即使关闭了此服务器的STP功能,也不能保证后期是否有新的服务器会导致此故障

2、现网中大部分设备均未使能STP,S5560为V7平台设备,STP为默认开启(本身就不符合规划要求),建议将S5560  STP功能关闭。

 


2018年03月