、    

 

华为S系列交换机二层环路故障【配置错误:交换机上SmartLink主从切换后流量中断】

组网情况
如图所示,交换机SwitchA上配置SmartLink,接口GE1/0/2和GE1/0/3分别为主接口和从接口。

交换机上SmartLink主从切换后流量断流问题案例组网图

交换机上SmartLink主从切换后流量断流问题案例组网图

现象描述
SwitchA上SmartLink因为接口GE1/0/2链路故障发送主从切换后发生断流,必须手动刷新MAC和IP地址,业务才可以恢复正常。

原因分析

当Smart Link组发生链路切换时,原有的转发表项将不适用于新的拓扑网络,需要整网进行MAC表项和ARP表项的更新。这时,Smart Link组通过发送Flush报文通知其他设备进行地址表的刷新操作。必须在上行设备配置Flush报文接收功能,才能正常接收刷新的MAC表项和ARP表项,否则无法正常接收下游设备发送的Flush报文,链路切换后无法正常转发报文。

对于该问题,SwitchD上对应的端口上没有配置接受Flush报文,当SwitchA切换的时候发送的Flush报文到SwitchD,SwitchD没有刷新对应的ARP表项(应该从SwitchA的GE1/0/2刷新到SwitchA的GE1/0/3),经过SwitchD的流量还是发送到切换前的链路,但是原来链路已经阻塞,报文无法通过,导致流量中断。

操作步骤

在SwitchB、SwitchC和SwitchD三台设备主、备链路上的接口下(即SwitchB的接口GE1/0/2和GE1/0/3、SwitchC的接口GE1/0/3和GE1/0/4、SwitchD的接口GE1/0/4和GE1/0/5)查看是否配置了命令:smart-link flush receive control-vlan vlan-id。

经过查看,发现没有相关的命令,在SwitchB、SwitchC和SwitchD三台设备主、备链路上的接口下配置命令:smart-link flush receive control-vlan vlan-id,且配置的Flush控制VLAN和密码与SwitchA上配置发送的相关信息必须相同。

建议与总结

只有为接口配置了控制VLAN编号并将接口加入该VLAN,接口才能接收到Flush报文。

并非需要在相关设备的所有接口上都配置从指定控制VLAN接收Flush报文功能,只有那些处于从Smart Link设备到其目的设备主、备链路上的接口才需进行此配置。

华为S系列交换机二层环路故障【配置错误:交换机误配置loopback internal导致环路】

组网情况
如图所示,Switch通过L2 Switch交换机下挂PC用户,PC用户希望访问内网服务器Server。

交换机误配置loopback internal导致环路故障案例组网图

交换机误配置loopback internal导致环路故障案例组网图

现象描述
当Switch下挂PC用户访问服务器Server时,发现丢包严重,业务中断。

原因分析
设备上存在loopback internal误配置,导致MAC漂移,通信异常。

操作步骤
1、删除L2 Switch上误配置的loopback internal。

在Switch的VLAN视图下执行命令loop-detect eth-loop alarm-only,使能MAC-Flapping检测机制。

2、执行命令display trapbuffer,查看告警信息,找寻是否存在MAC Flapping以及漂移的端口告警。通过告警得知Switch上接口GE0/0/1下接口存在MAC漂移,可以先排查下游设备配置。

3、登录L2 Switch设备,执行命令display current-configuration,查询L2 Switch接口配置,发现有接口下配置了loopback internal,导致Server的MAC地址学习到Switch与L2 Switch相连的端口。

建议与总结
对于二层转发丢包,MAC漂移是较常见的一种原因。当出现此类问题时,可以查看设备是否发生了MAC漂移,并排除此故障。

华为S系列交换机二层环路故障【配置错误:未关注多实例配置部署RRPP环导致环路】

组网情况
如图所示,SwitchA、SwitchB和SwitchC构成RRPP环,SwitchB是环上主节点,SwitchC是环上的传输节点,SwitchA上的端口GE2/0/4和GE1/0/5允许RRPP环的控制VLAN 2515通过,SwitchB和SwitchC上的保护VLAN保护实例0下的VLAN。

未关注多实例配置部署RRPP环导致环路组网图

未关注多实例配置部署RRPP环导致环路组网图

现象描述
部署主节点SwitchB时,未关注设备上的多实例配置,导致非0实例下的VLAN数据成环,造成非常多的接入设备脱管。

原因分析

1、检查SwitchB上RRPP的配置。

2、执行命令display current-configuration configuration rrpp-domain-region,查看RRPP域的配置。

查看RRPP域的配置

3、检查多实例配置
执行命令display stp region-configuration,查看SwitchB的多实例配置。

检查多实例配置

4、检查VLAN配置
执行命令display vlan,查看实例1中的VLAN对应的接口信息。

检查VLAN配置

5、SwitchB的配置如下:

SwitchB的配置

6、SwitchC的配置如下:

SwitchC的配置如下

分析上述回显信息,发现环上的每个接口都允许VLAN 2500通过,且有环外的端口也允许VLAN 2500通过,VLAN 2500在实例1下,而RRPP协议保护是实例0下的VLAN,导致VLAN 2500的数据成环。

操作步骤

部署RRPP环的目的是保护所有VLAN,因此可以将实例1删除。以SwitchB为例。

部署RRPP环的目的是保护所有VLAN,因此可以将实例1删除

建议与总结
部署RRPP环的时候,需要关注设备之前的多实例配置是否对部署影响。

华为S系列交换机二层环路故障【配置错误:RRPP环网链路切换传输节点无法登录】

组网情况
如图所示,SwitchA作为RRPP环的主节点,正常情况下GE1/0/0为Primary port、GE2/0/0为Secondary port(block)。

RRPP环网链路切换传输节点无法登录案例组网图

RRPP环网链路切换传输节点无法登录案例组网图

现象描述
当某个传输节点的Primary port down了再恢复后,此传输节点以及环上后面的节点会无法登录,几分钟后恢复

原因分析
RRPP主节点和传输节点RRPP工作模式不一致,主节点RRPP为GB模式,传输节点RRPP为HW模式,导致传输节点无法正常处理主节点的FLUSH报文。

操作步骤
查看设备的RRPP工作模式是GB还是HW模式:即配置是rrpp working-mode gb,还是rrpp working-mode hw。

执行display rrpp brief命令查看RRPP Working Mode字段,查看环上RRPP点该字段是否一致。

<Quidway> display rrpp brief
Abbreviations for Switch Node Mode :
M – Master , T – Transit , E – Edge , A – Assistant-Edge
RRPP Protocol Status: Disable
RRPP Working Mode: HW
RRPP Linkup Delay Timer: 1 sec (0 sec default)
Number of RRPP Domains: 1

建议与总结
出现该问题时,先查看下设备的MAC表和ARP表切换前后表项是否正常刷新了,如果没有则检查RRPP模式是否一致。

华为S系列交换机二层环路故障【配置错误:RRPP主节点模式和其他传输节点模式不一致,导致不能刷新MAC表项】

组网情况
如图所示,SwitchA、SwitchB、SwitchC和SwitchD构成RRPP环,SwitchA是主节点,SwitchB、SwitchC和SwitchD为传输节点。

RRPP主节点模式和其他传输节点模式不一致组网图

RRPP主节点模式和其他传输节点模式不一致组网图

现象描述
RRPP主节点SwitchA上配置的RRPP模式是国标模式,SwitchB、SwitchC和SwitchD上使用的是默认的华为模式。当传输节点出现故障后,RRPP主节点SwitchA发送的common或者complete报文在传输节点上不处理,导致MAC和ARP没有刷新,流量受到影响

原因分析
1、判断RRPP的主节点为SwitchA:
<SwitchA> display rrpp verbose domain 1
Domain Index : 1
Control VLAN : major 2 sub 3
Protected VLAN : Reference Instance 1
Hello Timer : 1 sec(default is 1 sec) Fail Timer : 6 sec(default is 6 sec)
RRPP Ring : 2
Ring Level : 1
Node Mode : Master //这个表示是RRPP主节点

2’、查看RRPP主节点SwitchA的配置:
rrpp working-mode GB //配置RRPP工作模式为国际模式
rrpp enable
RRPP其他传输节点配置为:

rrpp enable //没有配置工作模式,就是默认的华为工作模式。

由上述配置可以看出:RRPP主节点SwitchA全局配置RRPP的工作模式为国标模式(rrpp working-mode GB),其他传输节点是默认的配置(默认配置为华为模式)

建议与总结
RRPP环上所有节点都必须配置一样的工作模式,要么都为默认的华为工作模式,要么都配置为国标模式。

华为S系列交换机二层环路故障【配置错误:部署RRPP多实例未考虑端口默认加入VLAN1导致RRPP临时环路】

组网情况
如图所示,SwitchA、SwitchB、SwitchC和SwitchD构成RRPP环。开始规划的时候,RRPP环保护VLAN10和VLAN20的数据,将VLAN10和VLAN20加入到实例1,保护VLAN配置引用实例1。

部署RRPP多实例未考虑端口默认加入VLAN1导致RRPP临时环路组网图

部署RRPP多实例未考虑端口默认加入VLAN1导致RRPP临时环路组网图

现象描述
在上述组网中,VLAN1数据成环。

原因分析
1、执行命令display current-configuration interface GigabitEthernet 1/0/1查看RRPP环上的端口下配置,没有undo port trunk allow-pass vlan 1说明端口默认加入了VLAN1。
[SwitchA] display current-configuration interface GigabitEthernet 1/0/0
#
interface GigabitEthernet1/0/0
port link-type trunk
port trunk allow-pass vlan 10 20
stp disable
#
return

2、执行命令display stp region-configuration,查看多实例划分情况。
[SwitchA] display stp region-configuration
Oper configuration
Format selector :0
Region name :00e084701700
Revision level :0

Instance VLANs Mapped
0 1 to 9, 11 to 19, 21 to 4094
1 10, 20

3、执行命令display current-configuration configuration rrpp-domain-region,查看RRPP的相关配置,RRPP域保护实例1中的VLAN,VLAN1不在实例1下,RRPP环不能保护VLAN1的数据,导致VLAN1的数据在RRPP环上没有破环,造成环路。
[SwitchA] display current-configuration configuration rrpp-domain-region
#
rrpp domain 1
control-vlan 1025
protected-vlan reference-instance 1
ring 1 node-mode transit primary-port GigabitEthernet1/0/1 secondary-port GigabitEthernet1/0/2 level 0
ring 1 enable
#
return

操作步骤

有以下2种方法解决VLAN1的环路问题:

方法一:在SwitchA、SwitchB、SwitchC和SwitchD上,将VLAN1规划到实例1中。以下以SwitchA为例。

在SwitchA、SwitchB、SwitchC和SwitchD上,将VLAN1规划到实例1中

方法二:如果VLAN1没有用处,可以将接入RRPP环的端口下的VLAN1删除。以下以SwitchA为例。

[SwitchA] interface GigabitEthernet1/0/1
[SwitchA-GigabitEthernet1/0/1] undo port trunk allow-pass vlan 1

建议与总结
在规划RRPP环保护VLAN的时候,需要关注端口下默认加入VLAN1的情况,防止没有将VLAN1规划到保护VLAN中,造成环路。

华为S系列交换机二层环路故障【配置错误:两端设备配置的MSTP报文的协议格式不一致导致端口DOWN】

组网情况
如图所示,Switch-1、Switch-2与两台H3C S6500组成MSTP环。

 两端设备MSTP报文的协议格式不一致导致端口DOWN组网图

 两端设备MSTP报文的协议格式不一致导致端口DOWN组网图

现象描述
将Switch-1整机重启并重新上电后,S6500-1的GE0/0/4端口会自动shutdown,必须手动undo shutdown才能恢复。且设备上打印如下告警:设备上打印如下告警

原因分析
Switch和S6500互连端口均没有配置MSTP报文的协议格式,使用默认值。但是默认值不一致,导致S6500接口被Shutdown。

Switch端口的MSTP报文的协议格式stp compliance默认为auto并发送dot1s格式报文,S6500默认发送legacy格式报文。S6500端口UP后连续发送3个legacy报文,Switch端口UP后发送1个dot1s报文,S6500回复1个dot1s报文,Switch回复S6500的legacy报文,后续两端交互dot1s报文。

S6500在进行报文格式检查时有特殊的处理机制:10秒内收到的legacy和dot1s报文都大于等于3个时,将端口Shutdown。

操作步骤
1、在Switch整机启动端口UP后,在S6500上执行命令display stp interface,查看直连UP端口的信息,发现MSTP BPDU format为legacy:

查看直连UP端口的信息

2、执行命令stp compliance legacy,将Switch连接S6500的端口强制配置为legacy模式。

建议与总结

在与其他厂商设备对接时,需要关注对端接口收发MSTP报文的协议格式是否默认为auto,是否有特殊的检查机制。

当Switch端口配置为非auto格式,端口收到的报文格式与配置不一致时,打印如下日志:

MSTP/3/PACKET_ERR_COMPLIAN:The port compliance protocol type of the packet received by MSTP from the port [port-name] is invalid.

出现该情况后,建议按照如下方法处理:

1、使用获取报文工具记录收到的错误报文。

2、记录查询对端的接口信息,如设备厂商、版本、配置。
如果是华为设备,使用命令display version,display interface或display current-configuration查询设备的版本、配置等。
如果是其他厂商设备,则根据该厂商的设备命令获取信息。

3、由于此时MSTP收到非法报文,计算出来的STP状态错误,有可能导致出现二层环路(使用display stp brief命令查看接口STP状态,可确认是否存在环路),建议先shutdown接口,防止形成广播风暴。确认不存在环路后,使用undo shutdown命令恢复接口。

华为S系列交换机二层环路故障【配置错误:MSTP域配置不同导致非0实例无法调整收敛】

组网情况
如图所示,Switch-1和Switch-2通过3个端口GE0/0/20,GE0/0/23,GE0/0/24对接,其中GE0/0/20同时加入VLAN99、VLAN101,GE0/0/23仅加入VLAN99,GE0/0/24仅加入VLAN101。VLAN99属于实例1,VLAN101属于实例2。

MSTP域配置不同导致非0实例无法调整收敛的故障案例组网图

MSTP域配置不同导致非0实例无法调整收敛的故障案例组网图

现象描述
两台Switch的STP收敛结果如下:

两台Switch的STP收敛结果

GE0/0/20在实例1、2中都是Forwarding状态,客户希望该端口在不同的实例中STP状态不同。调整该端口在不同实例中的cost值,收敛状态仍然不变。

原因分析

现网两台Switch的MST域配置中域名不同,属于不同的域。不同域间通过STP/RSTP协议进行收敛,所有实例都以实例0的结果为准。

操作步骤

两台Switch配置MSTP多实例,每个实例都能正常收敛,可排除配置问题。实例1、2的收敛结果与实例0相同,检查两台Switch是否在同一个域内。

两台Switch的MST域配置如下:

Switch-1:

stp region-configuration
region-name vlan101
instance 1 vlan 101
instance 2 vlan 99
active region-configuration

Switch-2:

stp region-configuration
region-name vlan99
instance 1 vlan 101
instance 2 vlan 99
active region-configuration

上述配置显示域名配置不同。MST域配置时,只有域名、多生成树实例和VLAN的映射关系、Format selector和Revision level都相同时,才认为两台设备在同一个域内。

同一个MST域内的多个实例可独立收敛,将两台Switch域配置中的域名配置成相同的,同时调整端口GE0/0/20在不同实例中的cost值,使其在实例1和实例2中的STP状态不同。

建议与总结

S系列交换机默认使用系统MAC作为域名(如:Region name:00d0d0c7ec77)。

当交换机运行在MSTP模式,且域中配置多个实例时,需要关注域配置、端口加入的VLAN所属的实例。

华为S系列交换机二层环路故障【配置错误:未配置STP边缘端口导致部分终端从网卡启动时获取不到IP地址】

组网情况
如图所示,PC终端用户通过交换机Switch接入网络,并通过DHCP方式获取IP地址。

PC终端从网卡启动时获取不到IP的故障案例

PC终端从网卡启动时获取不到IP的故障案例

现象描述
某些类型的终端(如联想PC笔记本)设备启动后,无法从DHCP服务器侧获取IP地址,导致PC用户上网失败。

原因分析

与终端相连的交换机Switch设置了STP使能,或者是默认设置为STP使能,但是其与终端相连的端口没有配置成STP边缘端口。

终端网卡设置成以DHCP方式获取IP地址的时候,会闪断端口,然后发送4个请求分配IP的消息。由于交换机相应端口没有设置成边缘端口,端口闪断后,会触发STP重新计算网络拓扑,网络重新收敛需要30s的时间,在收敛期间,端口转发不通,因此将终端发送的请求分配IP消息均丢弃。终端只会发送4个请求分配IP的消息,在发送4个请求分配IP的消息后没有收到回应,终端就会认为获取IP失败,导致PC设备始终无法获取IP地址。

操作步骤

1、确认交换机已经STP使能,并且与终端相连的端口未配置成STP边缘端口。

2、确认当终端选择从网卡启动时,交换机上与之相连的端口会出现闪断的情况。

3、执行命令用stp edged-port enable,将交换机上与各类终端相连的端口配置成边缘端口。

建议与总结
当交换机上使能了STP,其余与终端相连的端口均应配置成边缘端口。V200R001版本以及之后版本连接终端的端口可以自动探测,并将端口的边缘端口属性开启。

华为S系列交换机二层环路故障【配置错误:交换机端口未配置bpdu enable导致业务中断】

组网情况
如图所示,Switch使用V100R005C01SPC100版本,全局使能STP并下挂多台Cisco交换机,组成多个STP环。

 Switch端口未配置bpdu enable导致业务中断的故障案例组网图

 Switch端口未配置bpdu enable导致业务中断的故障案例组网图

现象描述
业务故障时,登录Switch,发现端口下有大量广播报文,网络中出现环路。

原因分析
从配置分析,两台Switch全局均使能STP,但所有互连端口下均未配置bpdu enable

#
interface GigabitEthernet0/0/4
port link-type access
port default vlan 10
loopback-detect enable
undo ntdp enable
undo ndp enable
#

对于两台Switch设备,使能STP、LACP等二层协议的端口,需要配置bpdu enable才能将端口接收到的协议报文上送到CPU处理,否则协议报文在端口丢弃,无法实现协议协商。

操作步骤
网络中出现环路,首先排查STP收敛是否正常。当STP环中没有阻塞口时,可通过display stp interface查看具体端口在生成树中的角色,确认端口收、发STP报文是否正常。例如:

确认端口收、发STP报文是否正常

如果使能STP的互连端口均为Designated Port角色,说明STP协商失败,检查端口下是否配置bpdu enable。如果未配置,将需要参与STP计算的端口配置bpdu enable

建议与总结
盒式交换机V100R006版本之前,参与STP计算的端口需要配置bpdu enable,否则对于收到的STP报文不处理(不会影响STP报文发送)。盒式交换机V100R006及之后版本,端口默认bpdu enable

ICP备案号:晋ICP备18007549号-1