网络栈调优98 条

bonding 链路状态检查

聚合接口问题先看 /proc/net/bonding: 模式、活动从口与各成员链路状态一目了然。

bonding 链路状态检查

聚合接口出问题时,第一站是 /proc/net/bonding/<bond名>:里面给出聚合模式、当前活动从口、每个成员口的链路状态与最近一次状态变化的时间。聚合模式决定了交换机侧需要如何配置,模式与对端不匹配是聚合异常最常见的根因。

基本信息

查看状态cat /proc/net/bonding/bond0
接口计数ip -s link show bond0
关键字段Bonding Mode、Currently Active Slave、MII Status、Slave Interface
交换机侧需要核对 LACP 或静态聚合配置是否匹配
常见模式mode=1 主备,mode=4 为 LACP

典型使用场景

  • 聚合链路吞吐不达标,确认流量是否只走单个成员口
  • 成员口频繁 up/down,定位线缆、模块或端口问题
  • 主备切换异常,确认活动从口是否符合预期
  • 与交换机联调时核对聚合模式与哈希方式
  • 变更前后记录聚合状态,作为回滚依据

检查命令

检查命令
cat /proc/net/bonding/bond0            # 聚合模式、活动从口与成员状态
ip -s link show bond0                  # 聚合接口层的收发与错误计数
ip -s link show eth0                   # 逐个成员口查看错误计数
dmesg | grep -i bond                    # 查看聚合相关的内核日志

字段判读

字段含义判读
Bonding Mode聚合模式决定交换机侧配置要求
Currently Active Slave当前承载流量的成员口与预期不符说明切换逻辑异常
MII Status成员口链路状态down 的成员口先查物理链路
MII Polling Interval链路状态轮询间隔过长会延迟故障感知
链路变化计数状态翻转次数频繁变化指向线缆或模块

检查顺序

  • 先确认聚合模式与交换机侧配置一致
  • 再看成员口链路状态与错误计数,排除物理层
  • 然后确认活动从口与流量分布是否符合设计
  • 最后核对内核日志中的聚合事件时间线
成员口频繁 up/down 大多数不是软件问题:优先检查线缆、光模块与端口光功率,其次再看驱动日志与交换机侧计数。
聚合模式与交换机配置必须匹配:静态聚合对 LACP,一端启用动态协商而另一端是静态配置时,链路状态可能显示正常但流量行为异常。

易错点

  • LACP 模式未与交换机侧配置对齐,链路看着正常但流量异常
  • 只看 bond 状态不查成员口错误计数,漏掉物理层问题
  • 成员口频繁翻转只处理软件配置,忽略线缆与光模块
  • 变更聚合配置前未记录原状态,异常时无法回到可用组合

数据来源与参考

  • Linux Documentation/networking/bonding.rst
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌