按目的地址抓协议报文
生成树协议报文使用固定的保留组播目的地址,这给排障带来一个便利:只要按这个地址过滤,就能把协议交互从海量业务流量里挑出来。同样的方法也适用于其他二层协议。抓包的意义在于拿证据:一端在发送、另一端收不到,就是链路单通的直接证明,比反复比对配置高效得多。
基本信息
| STP 目的地址 | 01-80-C2-00-00-00 |
|---|---|
| 其他二层协议 | 相邻的保留地址,例如聚合与链路发现类协议各有固定地址 |
| 抓包方式 | 镜像到分析端口后用抓包工具按地址或协议过滤 |
| 判读要点 | 两端收发计数对比,不对称即为单通 |
抓包过滤
抓包过滤
# Wireshark 显示过滤
stp # 直接按协议过滤
eth.dst == 01:80:c2:00:00:00 # 按生成树目的地址过滤
eth.dst == 01:80:c2:00:00:02 # 聚合协议报文
lacp # 聚合协议过滤
# tcpdump
tcpdump -i eth0 -nn -e ether dst 01:80:c2:00:00:00保留地址对照
| 协议 | 目的地址 | 用途 |
|---|---|---|
| 生成树(STP/RSTP/MSTP) | 01-80-C2-00-00-00 | 拓扑计算与协商 |
| 链路聚合协议 | 01-80-C2-00-00-02 | 聚合成员协商 |
| 链路层发现协议 | 01-80-C2-00-00-0E | 邻居信息通告 |
抓包步骤
- 在怀疑的链路两端分别配置镜像,只镜像需要观察的方向
- 用地址或协议过滤,排除业务流量干扰
- 记录两端的报文计数与发送间隔,确认是否对称
- 若一端持续发送而另一端为零,直接判定该方向单通
- 把抓包结果与接口计数、日志时间线一起留档
对比两端收发计数:一端持续发送、另一端收不到即为链路单通。这个结论比端口是否 UP 可靠得多,接口 UP 但单通的场景很常见。
部分端口安全或风暴抑制策略可能拦截这类组播地址,导致协议报文被误伤,表现为协议交互异常。配置此类策略后要回归验证协议是否仍正常。