拓扑如下:
SW1和SW2、SW2和SW3分别用两个万兆口做了链路聚合,并且都开启了STP,SW1 SW3为H3C设备,SW2为华为设备
正常情况下业务运行没有问题,PC去ping SW1上的网关正常。
但是发现当SW1和SW2之间的聚合链路断掉一根线后,导致SW3下面的PC业务中断30s,然后自动恢复。
后来发现SW1、SW2、SW3三台设备都是H3C或者都是HW的,SW1和SW2之前聚合断一条线后就没有问题,这三台无论那一台换成另外一个厂商的就会有该问题
在SW3设备的上行聚合口和成员口开启stp no-agreement-check和 stp config-digest-snooping现象依旧
在SW3的上行口抓包发现第一个STP报文(看源mac为华为的mac,是华为发给H3C设备的),而华为设备发一个非标准协议的报文
在H3C设备SW3上debug查看到
1. SW1设备聚合成员口down掉1条,cost变大,SW2设备发出的BPDU报文 cost变大,报文如下:
SW3设备上debug显示收到的BPDU报文
*Jan 1 00:56:32:131 2013 test2_H3C5560 STP/7/PKT:
Port633(Bridge-Aggregation1) received MSTP-dot1s Packet(Length: 102)
ProtocolVersionID: 03
BPDUType : 02
CIST Root ID : 8192.dcda-8044-b580
External RPC : 2000
Reg Root ID : 16384.f875-8807-9e81
Internal RPC : 0
CIST Bridge ID : 16384.f875-8807-9e81
CIST Port ID : 128.34
(Instance)Flags : (00)Desi[ AFLP ]
2. SW3设备根端口收到P置位的BPDU报文,因为P/A机制,会启动同步过程阻塞非边缘端口的指定端口,从而防止环路,然后将根端口bagg1设置为转发状态,并向SW2回复A置位BPDU。。
*Jan 1 00:56:32:138 2013 test2_H3C5560 STP/7/PKT:
Port633(Bridge-Aggregation1) sent MSTP-dot1s Packet(Length: 102)
ProtocolVersionID: 03
BPDUType : 02
CIST Root ID : 8192.dcda-8044-b580
External RPC : 2001
Reg Root ID : 32768.dcda-8044-ba60
Internal RPC : 0
CIST Bridge ID : 32768.dcda-8044-ba60
CIST Port ID : 128.633
(Instance)Flags : (00)Root[ AFL ]
3、接着SW3会从处于同步状态的非边缘指定端口 1/0/1发送P置位BPDU,因为没有收到A置位BPDU(PC不会回应PBDU),则该端口会切换到STP方式,需要等待30S时间才能进入转发状态
从上面信息分析看,根本原因是华为侧发出的BPDU未遵循标准协议,proposing标识应该是非forwarding 非learning位才会置位
1. 在SW3设备上开启边缘端口
2.手工指定SW1和SW2之间聚合端口的cost值
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作