不合规MAC地址导致通信故障
故障现象一台LED大屏用了8台tv-player相当于8个IP设备以192.168.1.1到192.168.1.8为例。可以通过计算机上的软件发送指令给tv-player控制大屏亮度、颜色等。之前使用2台非可管理交换机连接一台TPLINK交换机一台华为S1700交换机之前一切工作正常。最近将其中一台华为S1700换成了华为S310交换机。偶然在大屏调整亮度颜色时发现8台设备只有1台192.168.1.3设备能ping通其他设备无法ping通怀疑是剩下的那台非管理的老旧傻瓜交换机有故障但是通过对调正常与故障设备网线方式发现问题依旧只有唯一192.168.1.3能ping通其他均不通。故障分析拿调试笔记本连接傻瓜交换机ping 1到8均通说明这台老傻瓜交换机没有故障。故障可能在新换的华为S310交换机上但是一台新华为交换机没有额外配置情况下会有什么问题导致1台能ping通其他无法ping通百思不得其解期间问了豆包一些建议包括dhcp snooping、acl、mac limit等等均不靠谱。一度怀疑是不是华为和傻瓜交换机不兼容但强制百兆、全双工也是无用。没办法甚至在交换机上做了端口镜像抓包分析发现有arp广播发送但没有arp单播回复。单独把故障设备连接在华为交换机上用计算机去ping仍然不通但计算机直连故障设备就没有问题豆包又把问题考虑到是不是设备发送报文带vlan但这种情况实在是少见。最后豆包建议是不是mac地址问题我发送了mac地址17-xx-xx-xx-xx-xx给豆包豆包判断出mac地址不合规第一字节低位为1不是单播mac而是多播MAC地址这个概念这么多年头一次听说。重新查看了8台tv-player设备只有好使那台设备的MAC地址是16开头剩下MAC地址都是17开头。故障原因至此故障原因找到新的华为交换机检查单播报文中MAC地址合规性发现不合法的MAC地址丢包了。而老旧设备包括windows系统自身均不对mac地址合规性检测所以没有故障。最后新华为交换机也没有命令关闭这个检查所以旧交换机还得继续使用了。