下午三点全办公室网页突然打不开,ping 网关丢包九成,机柜里交换机指示灯像约好了似的齐刷刷狂闪。这种场面十有八九是网络里出现了环路,广播帧绕圈转发把带宽吃光,风暴大到连交换机自己的管理页面都登不进去。
先看交换机自己留下的线索
管理型交换机的日志一般会记录:MAC 地址在两个端口之间来回漂移、某个端口反复 up 和 down、CPU 占用突然飙高。日志里出现 MAC 漂移相关字样,基本可以断定网络里有成环的地方。
想找现成的网络环路检测工具,先翻交换机配置
多数管理型交换机内置两道防线:一是生成树协议 STP,开启后自动算出一棵无环的转发树,把成环的冗余链路阻塞掉,平时这些链路还能当备份;二是专门的环路检测功能,发现环路后告警或者直接关闭端口。华为、H3C、锐捷这些品牌都在 Web 管理页或命令行里提供这两项,新网络上线时建议提前打开。
抓包看实锤
条件允许就把电脑接到镜像口用抓包软件看一眼:短时间内同一内容的广播帧大量重复出现,就是环路的铁证。没有镜像口的话,风暴期间在随便一台电脑上抓包,也能看到刷屏的重复帧。
家用网络怀疑成环还有个对比法:手机开热点让电脑连上去测速,热点正常而宽带卡顿,问题基本就在内网布线和小设备上,照着拔线法走一遍就能揪出来。
土办法:逐根拔线
没开管理功能的小网络,最直接的办法是逐根拔网线,ping 恢复的那一刻,刚拔的那根就是元凶。常见的成环姿势:一根网线两头插进同一台交换机、私接的小路由 LAN 口又回接到主网络、光猫和路由器之间多插一根线绕了一圈。家里网络掉网也可以照这个思路检查。
环路检测的原理大多是交换机周期性从端口发探测报文,报文绕一圈回到本端口就判定成环,反应比生成树更快更直接。事后再加固:接入层开启生成树和环路检测、对接入端口限制学习到的 MAC 数量、临时拉的网线贴好标签。环路平时不发作,一发作就是全网瘫痪,值得花十分钟提前配置,排查时顺手记下时间和端口,下次再犯就有据可查。