linux双网卡绑定实现网络冗余的核心是active-backup模式(mode=1),主网卡工作、备网卡待命,主链路故障时1–3个数据包内自动切换,业务基本无感;需加载bonding模块、正确配置bond0及物理网卡的master/slave关系,并通过/proc/net/bonding/bond0验证状态。

Linux 中配置多网卡绑定实现网络冗余,核心是使用 active-backup 模式(mode=1),它只让一块网卡处于工作状态,另一块实时待命;主网卡故障时,流量在 1–3 个数据包内自动切到备用网卡,业务基本无感中断。
确认硬件与模块支持
先确保系统识别到多块物理网卡,并加载 bonding 内核模块:
- 运行
ip link show或lshw -class network查看 eth0、eth1 等接口是否存在且状态为 UP - 检查 bonding 模块:执行
lsmod | grep bonding,若无输出,运行sudo modprobe bonding - 为开机自动加载,将
bonding写入/etc/modules(Debian/Ubuntu)或/etc/sysconfig/modules/bonding.modules(RHEL/CentOS)
配置 bond0 主接口(以 active-backup 为例)
创建主绑定接口配置文件,例如 /etc/sysconfig/network-scripts/ifcfg-bond0(CentOS/RHEL):
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
DEVICE=bond0TYPE=Bond-
BOOTPROTO=static(或dhcp,但 DHCP 配置仅写在 bond0 上) -
IPADDR=192.168.1.100、NETMASK=255.255.255.0、GATEWAY=192.168.1.1 ONBOOT=yes-
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"(miimon=100表示每 100ms 检测一次链路)
绑定物理网卡作为从设备
分别编辑两块物理网卡的配置文件,例如 ifcfg-eth0 和 ifcfg-eth1:
- 清空 IP 相关参数(如
IPADDR、NETMASK),保留DEVICE=eth0和ONBOOT=yes - 添加
MASTER=bond0和SLAVE=yes - 删除或注释掉
UUID和HWADDR(避免冲突) - 确保两块网卡连接到同一交换机或同一网络段(主备模式对交换机无特殊要求)
启用并验证冗余效果
重启网络服务后,立即验证是否生效:
- 执行
sudo systemctl restart network(RHEL/CentOS)或sudo netplan apply(Ubuntu 20.04+) - 查看绑定状态:
cat /proc/net/bonding/bond0,确认Active Slave显示当前主网卡,且MII Status全为 up - 拔掉主网线,等待约 1 秒,再次查看该文件——
Active Slave应已切换,且ping不中断(可开两个终端持续 ping 网关测试) - 用
ethtool bond0确认聚合速率和链路汇总状态










