全网时快时慢查不出原因:交换机MAC地址漂移检测揪出隐蔽环路

本文整理自华为官方发布的典型配置案例,按中小企业常见场景做了场景化梳理。

一个藏得很深的故障

网络时快时慢、时通时断,查带宽不超、查设备不挂、查配置也没动过——这类疑难杂症背后常有一个隐蔽推手:网线误接形成了环路,同一个 MAC 地址一会儿从这个口学到、一会儿从那个口学到,交换机的 MAC 地址表反复震荡,转发路径跟着来回跳。华为官方给这类问题的对口手段叫 MAC 地址漂移检测,官方组网示例的标题写得很直白:两台交换机间网线误接形成环路,引起 MAC 地址漂移、表震荡,用它来定位环路。

检测是怎么工作的

全局的 MAC 地址漂移检测功能默认就是开启的,对交换机上所有 VLAN 生效:同一个 MAC 在不同接口间反复迁移达到阈值(缺省安全级别下迁移 10 次)即判定为漂移并上报告警。管理员看到告警就知道网络里大概率有环路。官方提醒两点边界:一是该功能只能做单点环路检测,拿不到全网拓扑,网络支持破环协议时优先用破环协议消环;二是交换机连接双网卡负载分担服务器时,服务器 MAC 出现在两个接口属正常现象,可把该 VLAN 加入检测白名单免误报。

配置走一遍

官方示例四步。开启检测(缺省已开,显式配置一次求稳):

<HUAWEI> system-view
[HUAWEI] sysname Switch
[Switch] mac-address flapping detection

把漂移表项的老化时间调到 500 秒,让漂移记录留得久一点便于观察:

[Switch] mac-address flapping aging-time 500

给疑似接错的两个接口配置漂移后自动关闭,实现自动破环:

[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] mac-address flapping action error-down
[Switch-GigabitEthernet1/0/1] quit
[Switch] interface gigabitethernet 1/0/2
[Switch-GigabitEthernet1/0/2] mac-address flapping action error-down
[Switch-GigabitEthernet1/0/2] quit

再配置被关闭接口的自动恢复,间隔 500 秒后尝试拉起——环路已物理排除时接口可自动回网:

[Switch] error-down auto-recovery cause mac-address-flapping interval 500

验证配置结果

漂移发生后用 display mac-address flapping record 查看记录:漂移时间、所在 VLAN、MAC 地址、原接口与迁移到哪个口、迁移次数一目了然,哪根线接错直接定位。官方文档明确,不建议在上行接口配置漂移处理动作,免得重要上行流量被误关;quit-vlan 与 error-down 两种动作也不要配在同一环上的不同接口。

落地提醒

一是漂移检测管的是单点环路,整网的防环设计仍要靠生成树等破环协议打底;二是自动恢复间隔别设太短,环路没排除就反复拉起等于反复发作;三是告警里反复出现同一对接口,直接去现场核对这两根线,多半就是插错的那对。

交换机二层网络加固、环路排查与准入改造,贵州诚鑫致达科技提供上门实施与巡检服务,欢迎留言或私信咨询。

(来源:华为 S 系列交换机官方文档《配置全局 MAC 地址漂移检测》及《配置 MAC 地址漂移检测示例》,命令与注意事项以官方文档为准)

企业存储选型参考|贵州诚鑫致达

做核心业务 SAN 存储与高可靠应用,群晖机型参考:UC3400 · UC3200 · SA3600。需要选型建议或上门评估,搜「诚鑫致达」即可找到我们。