网卡绑定通过合并多个物理网卡提升带宽与可靠性,常用模式为mode=1主备和mode=4链路聚合;需加载bonding模块并配置相应参数,如miimon检测链路状态;在CentOS中通过ifcfg文件设置bond0及从属网卡,在Ubuntu 20.04+使用Netplan YAML配置;最后重启网络服务并验证bonding状态,确保交换机端口匹配。

在Linux系统中,配置多网卡绑定(Bonding)可以提升网络带宽、实现负载均衡或提供冗余故障切换。通过将多个物理网卡组合成一个逻辑接口,既能增强网络稳定性,又能提高吞吐能力。以下是详细的配置步骤。
什么是网卡绑定(Bonding)
网卡绑定是Linux内核提供的功能,允许将多个网络接口合并为一个聚合接口(称为bond接口)。常见的模式包括:
- mode=0 (balance-rr):轮询调度,提供负载均衡和容错
- mode=1 (active-backup):主备模式,只有一个网卡工作,故障时自动切换
- mode=4 (802.3ad):动态链路聚合,需交换机支持LACP协议
- mode=5 (balance-tlb):自适应传输负载均衡
- mode=6 (balance-alb):自适应负载均衡
最常用的是mode=1(高可用)和mode=4(高性能+冗余)。
加载Bonding模块并设置模式
确保系统已加载 bonding 内核模块,并指定所需模式。
检查模块是否已加载:lsmod | grep bonding
modprobe bonding mode=active-backup miimon=100
参数说明:
- mode=active-backup:主备模式
- miimon=100:每100ms检测一次链路状态
若需持久化,写入配置文件:
编辑 /etc/modprobe.d/bonding.conf:
alias bond0 bondingoptions bonding mode=active-backup miimon=100
配置网络接口文件(CentOS/RHEL/Ubuntu 18.04以下)
以 CentOS 7 为例,在 /etc/sysconfig/network-scripts/ 目录下创建配置文件。
文件:/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 NAME=bond0 TYPE=Bond BONDING_MASTER=yes BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 BONDING_OPTS="mode=active-backup miimon=100"2. 配置从属网卡 eth0:
文件:/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes3. 配置从属网卡 eth1:
文件:/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes
保存后重启网络服务:
systemctl restart network
Ubuntu 20.04+ 使用 Netplan 配置
现代 Ubuntu 系统使用 Netplan(YAML格式),配置方式不同。
编辑 Netplan 配置文件(通常位于 /etc/netplan/*.yaml):
network:
version: 2
renderer: networkd
bonds:
bond0:
interfaces: [enp1s0, enp2s0]
parameters:
mode: active-backup
miimon: 100
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 1.1.1.1]
应用配置:
sudo netplan apply
如有错误,使用 netplan --debug apply 查看详情。
验证绑定状态
确认绑定是否成功:
cat /proc/net/bonding/bond0
输出应显示当前模式、主接口、各从接口状态等信息。
查看接口状态:
ip addr show bond0
nmcli connection show(如果使用NetworkManager)
模拟故障测试:拔掉主网线,观察是否自动切换到备用网卡。
基本上就这些。只要模块加载正确、配置文件无误,Linux网卡绑定就能稳定运行。注意交换机端口配置要匹配,尤其是802.3ad模式必须开启LACP。生产环境建议先在测试机上验证。不复杂但容易忽略细节,比如ONBOOT、MASTER/SLAVE设置等。










