在Rocky Linux 9中使用ip link
配置链路聚合需结合内核bonding驱动实现,以下是实践总结:
-
加载bonding模块
modprobe bonding mode=active-backup miimon=100 # 预加载驱动并指定模式与监测间隔
▎挑战:未指定
miimon
会导致链路状态检测失效,建议搭配downdelay/updelay
参数优化故障切换速度。 -
创建bond接口
ip link add bond0 type bond # 创建bond接口 echo active-backup > /sys/class/net/bond0/bonding/mode # 通过sysfs动态修改模式
▎经验:若需LACP(mode=4),需交换机配合并安装
lldpd
服务,实践中常因交换机未启用动态聚合导致协商失败。 -
绑定物理接口
ip link set enp1s0 down ip link set enp1s0 master bond0 # 通过iproute2绑定接口
▎陷阱:未先关闭接口直接绑定会导致内核报错'RTNETLINK answers: Device or resource busy'。
-
IP配置与持久化
nmcli con add type bond ifname bond0 con-name bond0 \ ipv4.method manual ipv4.addresses 192.168.1.10/24 \ bond.options mode=active-backup,primary=enp1s0 # 通过NetworkManager持久化
▎关键点:纯iproute2方案重启失效,必须通过NetworkManager或systemd-networkd实现配置持久化。
典型故障排查:
- 检查
/proc/net/bonding/bond0
确认从属接口状态 dmesg | grep bond
查看驱动级错误- 物理接口MAC地址不一致导致某些模式异常(需设置
fail_over_mac=active
) - 使用
ethtool -S enp1s0
验证实际流量分布