设备上无法学习正确的MAC表项
操作步骤
- 查看是否配置错误导致MAC地址无法正确学习。
检查项
检查方法
后续操作
接口所属的VLAN是否创建
在任意视图下,执行命令display vlan vlan-id,如果提示“Error: The VLAN does not exist.”,则表示该VLAN没有创建。
请在系统视图下,执行命令vlan vlan-id创建VLAN。
接口是否透传对应VLAN
在任意视图下,执行命令display vlan vlan-id,查看显示信息中是否存在该接口名。如果没有该接口名,则表示该接口没有透传对应VLAN。
请在接口视图下,执行下面命令将接口加入对应VLAN。
- trunk接口,执行命令port trunk allow-pass vlan,将接口加入VLAN
- hybrid接口,执行命令port hybrid tagged vlan 或者port hybrid untagged vlan,将接口加入VLAN
- access接口,执行命令port default vlan,将接口加入VLAN
设备是否配置了黑洞MAC
在任意视图下,执行display mac-address blackhole命令,查看是否配置了黑洞MAC。
如果有黑洞MAC相关配置,请在任意视图下,执行命令undo mac-address blackhole删除黑洞MAC地址。
接口和VLAN是否关闭了MAC地址学习功能
在接口视图和VLAN视图下,分别执行命令display this | include learning查看是否存在mac-address learning disable的配置。如果存在,则说明接口或VLAN关闭了MAC地址学习功能。
请在接口视图或VLAN视图下,执行命令undo mac-address learning disable打开MAC地址学习功能。
接口和VLAN是否配置了MAC地址学习限制数
在接口视图和VLAN视图下,执行display this | include mac-limit查看是否存在MAC地址学习限制数的配置。如果存在,则说明配置了MAC地址学习限制数。
- 请在接口视图或VLAN视图下,执行命令mac-limit增加MAC地址学习数量。
- 请在接口视图或VLAN视图下,执行命令undo mac-limit取消MAC地址限制。
接口是否配置了端口安全功能
在接口视图下,执行display this | include port-security查看是否存在端口安全的配置。如果存在,则说明配置了端口安全功能。
- 在接口视图下执行命令undo port-security enable取消端口安全功能。
- 在接口视图下执行命令port-security max-mac-num增加端口安全MAC学习限制数量。
执行完上述操作后,故障仍然存在,请执行步骤2。
- 检查网络中是否存在环路导致MAC地址表项振荡。
- 一般情况下MAC地址漂移是由环路导致的,在系统视图下执行命令mac-address flapping detection,配置MAC地址漂移检测功能。
- 配置MAC地址漂移检测功能后,系统将检测VLAN内所有MAC地址是否发生漂移。然后可通过命令display mac-address flapping record来查看MAC地址漂移记录来判断是否有环路。
- 如果通过命令查看存在MAC地址漂移,可以使用下列两种方法防止MAC地址漂移导致MAC地址表项振荡。
- 排除环路故障。
- 在接口视图下执行命令mac-spoofing-defend enable ,配置接口学习MAC地址的优先级,保证在正确的接口上学习到MAC地址。
如果系统中不存在环路,请执行步骤3。
- 检查MAC地址数是否已达设备支持的最大规格。设备学习到的MAC地址数达到产品支持的规格,将无法继续学习新的MAC地址表项。
- 如果该接口学习到的MAC地址数小于等于该接口连接的实际运行的主机数,说明设备接入的主机已经超过了设备支持的规格,请调整网络部署。
- 如果该接口学习到的MAC地址数远大于该接口所连接网络实际运行的主机数,说明该接口所连接的网络可能存在恶意刷新MAC地址表项的攻击,请根据下列方法处理。
场景分类
解决方法
接口与其他设备相连
在该接口连接的设备上执行命令display mac-address查看MAC地址表项,根据MAC地址学习接口找到可能存在攻击的主机所在的接口。如果查找到的接口还下连其他设备,请重复上述操作直至查找到恶意攻击的主机。
接口与主机相连
- 和管理员确认后先断开该主机,等该主机恶意攻击排除后再接入网络。
- 和管理员确认后在该接口上执行port-security enable命令配置端口安全功能或执行mac-limit命令配置接口MAC地址学习数量为1。
接口与HUB相连
- 通过镜像或其他工具分析该接口收到的报文,根据报文的特征找到攻击主机,找到攻击主机后,和管理员确认后先断开该主机,等该主机恶意攻击排除后再接入网络。
- 和管理员确认后,分别尝试断开HUB连接的主机,通过断开某主机看故障是否存在来判断可能存在攻击的主机,找到攻击主机后,和管理员确认后先断开该主机,等该主机恶意攻击排除后再接入网络。
如果设备学习到的MAC地址数未达到产品支持的规格,但MAC地址依旧无法学习,请执行步骤4。
- 检查设备上是否存在MAC地址Hash冲突告警。
L2IFPPI/4/MACHASHCONFLICTALARM: OID [oid] A hash conflict occurs in MAC addresses.(IfIndex=[INTEGER], MacAddr=[OPAQUE], VLAN=[GAUGE], VsiName=[OCTET1], InterfaceName=[OCTET2]).
此告警的处理步骤请参见L2IFPPI_1.3.6.1.4.1.2011.5.25.315.3.6 hwMacTrapHashConflictAlarm。