交换机ARP学习异常,看网工大佬是如何处理的?

简介: 交换机ARP学习异常,看网工大佬是如何处理的?


涉及产品和版本

S交换机所有产品和版本

组网情况

如图1所示,Switch-A和Switch-B通过Eth-Trunk链路直连,配置VRRP协议,Switch-A为VRRP主设备,Switch-B为VRRP备设备。Switch-A和Switch-B做三层网关,下挂多台接入交换机做二层,均使能了STP协议进行破环。二层交换机与接入用户相连。


现象描述

Switch-A交换机上ARP学习异常,有很多Incomplete的ARP表项,下面用户终端的ARP时有时无,业务不稳定。

原因分析

Switch下挂的二层交换机上,STP域的边缘端口均没有配置stp edged-port enable,这些端口状态发生变化时会发送TC报文,Switch收到后进行STP收敛处理,立即清除ARP表项或进行老化探测处理Switch上因为ARP数量比较多,发送大量ARP请求报文进行探测,收到用户的ARP应答报文比较多,超过了cpcar值,部分ARP应答报文丢弃,这些ARP将被老化删除,对应用户业务不能使用。Switch频繁收到这样的TC报文,业务更加不稳定。

操作步骤

登录设备进行观察,查看VLANIF27接口下的ARP。该VLANIF接口接入的是经常在线的用户的服务器。长时间观察,发现接口下的ARP总数有时在50个左右,有时在20个左右,数量不稳定。同时还有Incomplete状态的ARP,IP地址也不固定。学习到的ARP表项的老化时间有时都为0。

<Switch-A>displayarpinterfacevlanif27 IPADDRESSMACADDRESSEXPIRE(M)TYPEINTERFACEVPN-INSTANCEVLAN/CEVLAN------------------------------------------------------------------------------ 10.212.4.30025-9e7f-fd01I-Vlanif27 10.212.4.1290014-38b9-73c30D-0Eth4/0/4227/- 10.212.4.13300e0-fc94-cddd0D-0Eth4/0/4227/- 10.212.4.2030018-7172-59010D-0Eth4/0/4227/- 10.212.4.1070011-43a3-388f0D-0Eth4/0/42

从现象看,Switch应该是收到了TC报文,进行了老化ARP的操作。

通过display stp tc命令也可以看到端口收到的TC报文情况:

[Switch-A-hidecmd]displaystptc ----------StpInstance0tcortcncount---------- PortGigabitEthernet1/0/00 PortGigabitEthernet1/0/10 PortGigabitEthernet1/0/20 PortGigabitEthernet1/0/30 PortGigabitEthernet1/0/487 PortGigabitEthernet1/0/5123 PortGigabitEthernet1/0/699 PortGigabitEthernet1/0/871 PortGigabitEthernet1/0/9173 PortGigabitEthernet1/0/10146 PortGigabitEthernet1/0/138 PortGigabitEthernet1/0/210

分析日志,日志中也显示收到TC报文、进行ARP表项老化处理的记录:

Apr19201109:59:58DCN_S9306_A%%01MSTP/6/RECEIVE_MSTITC(l):MSTPreceivedBPDUwithTC,MSTPprocess0instance0,portnameisEthernet4/0/46.

同时有arp-reply报文的cpcar丢弃记录:

Apr19201109:28:13DCN_S9306_A%%01QOSE/4/CPCAR_DROP_LPU(l):SomepacketsaredroppedbycpcarontheLPUinslot1.(Protocol=arp-reply,Drop-Count=061)

基于上面的信息,分析得出:Switch频繁收到TC报文,进行老化ARP表项的操作。设备需要发送大量ARP探测报文,用户终端回应arp-reply报文的数量也很多,超过了cpcar的car值,部分应答报文丢弃,ARP表项就会老化删除,影响到业务应用。

Switch收到的TC报文是下面的接入交换机发送的。接入交换机直接连接PC,端口使能了STP,但是没有配置stp edged-port enable。PC在开机和关机时,很多边缘端口UP、DOWN,交换机就会反复发送TC报文。

将这些边缘端口配置stp edged-port enable后,经过几天的观察,没有再出现问题了,用户的业务运行正常。

建议与总结

类似的问题出现过很多次,交换机做网关,下挂二层交换机接入用户,网络中使用STP协议破环。通常,二层交换机上的STP边缘端口都没有配置stp edged-port enable。用户PC上线、下线,端口就会反复UP/DOWN,设备向STP根节点发送TC报文。网关设备频繁进行STP收敛,清除ARP,导致ARP学习异常。

这种应用场景下,推荐配置:

交换机上配置stp converge normal,这样交换机收到TC报文,不会立即清除ARP,而是发起ARP探测,探测失败才会删除ARP,对流量转发不会造成很大的影响;二层交换机的STP边缘端口上配置stp edged-port enable,这样边缘端口的状态变化不会引起网络反复进行STP收敛。

相关文章
|
4月前
|
算法 网络协议 Linux
【Cisco Packet Tracer】交换机的自学习算法
【Cisco Packet Tracer】交换机的自学习算法
126 0
|
4月前
|
消息中间件 JSON 缓存
RabbitMQ快速学习之WorkQueues模型、三种交换机、消息转换器(SpringBoot整合)
RabbitMQ快速学习之WorkQueues模型、三种交换机、消息转换器(SpringBoot整合)
131 0
|
1月前
|
网络协议
卧槽!放个假,交换机受到ARP攻击了,怎么破?
卧槽!放个假,交换机受到ARP攻击了,怎么破?
|
4月前
|
算法 网络协议
【计网·湖科大·思科】实验三 总线型以太网的特性、集线器和交换机的区别、交换机的自学习算法
【计网·湖科大·思科】实验三 总线型以太网的特性、集线器和交换机的区别、交换机的自学习算法
65 1
|
4月前
|
存储 监控 安全
|
4月前
|
缓存 网络协议 安全
使用 eNSP 模拟交换机防御 ARP 泛洪
使用 eNSP 模拟交换机防御 ARP 泛洪攻击
|
4月前
|
存储 缓存 网络协议
计算机网络:思科实验【3-集线器与交换机的区别、交换机的自学习算法】
计算机网络:思科实验【3-集线器与交换机的区别、交换机的自学习算法】
|
4月前
|
消息中间件 JSON 缓存
RabbitMQ快速学习之WorkQueues模型、三种交换机、消息转换器(基于SpringBoot)
RabbitMQ快速学习之WorkQueues模型、三种交换机、消息转换器(基于SpringBoot)
162 0
|
9月前
|
存储 算法
计算机网络学习(七)—集线器与交换机
计算机网络学习(七)—集线器与交换机