适用场景

二层环路是内网最凶的故障之一:一个接错的口,几分钟能把全网打瘫。防的手段就三样:STP 配置规范、接入口开 BPDU 保护、聚合链路正确配置并验证。

配置步骤(环路告警与快速定位)

# 1) 环路特征
#  - 端口广播/组播包速率暴涨
#  - CPU 使用率飙升(协议报文被大量处理)
#  - MAC 地址表频繁漂移
#  - 全网时延上升、丢包

# 2) 快速定位步骤
a) 看端口广播速率,找到异常端口
   display interface | include 'Broadcast|broadcast'
   display counters rate inbound interface
b) 看 MAC 漂移
   display mac-address | include <MAC>
c) 拔掉可疑口,观察广播是否立刻下降
d) 找到源头:私接交换机 / 网线短接 / 无线桥接

# 3) 收敛后处置
#  - 开启风暴抑制
   storm-constrain broadcast 3000 2000
#  - 接入口全部开 BPDU 保护

关键参数与建议

  • STP 模式统一:全网统一 RSTP 或 MSTP,避免混用
  • 根桥固定:核心交换机手工设为根桥(优先级 0 或 4096),不要让接入设备抢根
  • 边缘端口:接入口启用边缘端口 + BPDU 保护(接到交换机/环路时自动 err-disable)
  • 聚合规范:跨设备聚合用堆叠/M-LAG,成员口数量与速率一致,模式用 LACP
  • 流量分布:配置合适的哈希(源+目的 MAC/IP),避免单成员口跑满
  • 告警:STP 拓扑变更、端口 err-disable、广播包速率异常要告警
  • 巡检:根桥、阻塞端口、聚合状态、错误计数按月看
  • 接入口:面向用户/办公区端口一律不做 Trunk,防止私接交换机

容易踩的坑

  • 环路发生后一直在重启设备,没看端口计数
  • 没配风暴抑制,广播包把带宽和 CPU 吃满
  • 找不到源头,因为接入口没做端口隔离
  • 只在核心查,接入设备没登录账号
  • 事后没加 BPDU 保护,下次同样问题再来
  • 没编好应急脚本(哪些口该关),现场手忙脚乱

验证与巡检

display counters rate inbound interface | head -30
display interface | include 'broadcast|Broadcast'
display mac-address | head -20

# 阈值:广播包 < 1000pps(办公网);CPU < 60%
  • 巡检:接入口 BPDU 保护 100%、风暴抑制已配、应急脚本可用、月度广播速率检查

小结

二层验收:接入口插成环不瘫网(BPDU 保护生效)、根桥与设计一致、聚合链路状态正常、广播速率在阈值内。

> 说明:文中命令为通用写法,不同型号/版本可能略有差异,落地前请对照设备实际版本的官方文档;带外管理与安全设备变更建议先在测试设备验证。