以下为使用nmcli配置双网卡绑定的实践经验总结:
一、操作步骤
-
创建bond接口
nmcli con add type bond con-name bond0 ifname bond0 \ mode=4 miimon=100 \ ip4 192.168.1.100/24 gw4 192.168.1.1
- mode=4对应LACP(802.3ad),生产环境推荐模式
- miimon=100表示每100ms检测链路状态
-
添加从属接口
nmcli con add type bond-slave ifname enp1s0 master bond0 nmcli con add type bond-slave ifname enp2s0 master bond0
-
激活配置
nmcli con up bond0
二、关键经验
- 交换机协同配置:LACP模式必须配置交换机端对应端口的聚合组,否则实际带宽无法叠加
- MAC地址一致性:建议设置
fail_over_mac=1
避免ARP缓存问题 - 驱动兼容性测试:Intel I350与Broadcom网卡混绑时曾出现协商异常,需统一驱动版本
- MTU特殊配置:当使用jumbo frames时,需在bond创建时指定
mtu 9000
三、常见故障
- 链路状态漂移:因miimon间隔设置不当导致频繁切换,建议搭配
downdelay=200 updelay=200
- 负载不均衡:通过
xmit_hash_policy=layer3+4
优化流量分发 - 服务启动失败:NetworkManager版本低于1.16时存在bonding配置解析缺陷
- 虚拟机逃逸问题:在KVM虚拟化环境中,需关闭网卡的
allow-virtual-servers
属性
验证命令:
cat /proc/net/bonding/bond0 # 查看绑定详情
ethtool enp1s0 | grep Link # 验证物理链路
ip link show dev bond0 # 检查MTU与状态
注:生产环境建议部署后通过拔插网线测试故障转移,实际测得平均恢复时间为800ms-1.2s(视交换机性能)