Linux双网卡绑定可通过内核bonding模块实现,步骤包括加载模块、配置bond接口及物理网卡、使用nmcli工具设置、验证状态,并按需选择mode=0/1/4/6等模式参数。

如果您在Linux系统中需要提升网络连接的可靠性或实现带宽聚合,则可以通过配置双网卡绑定(Bonding)来达成目标。以下是完成该配置的具体步骤:
一、确认内核模块支持并加载bonding模块
Linux Bonding功能依赖于内核中的bonding模块,需确保其已编译进内核或作为可加载模块存在,并在运行时启用。
1、执行命令检查bonding模块是否已加载:lsmod | grep bonding。
2、若无输出,使用命令手动加载模块:modprobe bonding。
3、为使重启后自动加载,将模块名写入配置文件:echo "bonding" >> /etc/modules。
二、创建bonding接口配置文件
通过修改网络接口配置文件,定义bond0设备及其从属物理网卡,是RHEL/CentOS系发行版的标准做法。
1、在/etc/sysconfig/network-scripts/目录下创建bond0主配置文件:vi /etc/sysconfig/network-scripts/ifcfg-bond0。
2、写入以下内容(以mode=1主备模式为例):DEVICE=bond0
BOOTPROTO=static
IPADDR=192.168.10.100
NETMASK=255.255.255.0
ONBOOT=yes
BONDING_OPTS="mode=1 miimon=100"。
3、编辑第一个物理网卡配置文件(如ifcfg-eth0):vi /etc/sysconfig/network-scripts/ifcfg-eth0,设置:DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes。
4、同样配置第二个网卡(如ifcfg-eth1),仅将DEVICE值改为eth1,其余与eth0一致。
三、使用nmcli工具配置bonding(适用于NetworkManager管理环境)
在使用NetworkManager的现代Linux发行版(如RHEL 8+/CentOS 8+/Fedora)中,可通过nmcli命令行工具创建bond连接,避免直接编辑配置文件。
1、创建bond连接:nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup。
2、为bond0添加IPv4地址:nmcli connection modify bond0 ipv4.addresses 192.168.10.100/24 ipv4.method manual。
3、添加第一个从属接口(如enp0s3):nmcli connection add type bond-slave con-name bond0-port1 ifname enp0s3 master bond0。
4、添加第二个从属接口(如enp0s8):nmcli connection add type bond-slave con-name bond0-port2 ifname enp0s8 master bond0。
5、启用bond0连接:nmcli connection up bond0。
四、验证bonding状态与当前模式
配置完成后,必须检查bond接口是否正常工作、成员网卡是否正确加入、以及实际生效的bonding模式是否符合预期。
1、查看bond接口状态:cat /proc/net/bonding/bond0。
2、确认当前活动端口:ip link show bond0 及 cat /sys/class/net/bond0/bonding/active_slave。
3、检查bonding模式编号与名称对应关系:cat /sys/class/net/bond0/bonding/mode(例如输出“active-backup 1”)。
五、配置不同bonding模式参数
Linux bonding支持多种模式,各模式需通过BONDING_OPTS或nmcli指定不同参数,以适配故障切换或负载分担需求。
1、mode=0(balance-rr):轮询策略,需交换机配置端口聚合(如IEEE 802.3ad):mode=0 miimon=100。
2、mode=1(active-backup):主备策略,仅一个端口传输数据,另一端口待命:mode=1 miimon=100 primary=eth0。
3、mode=4(802.3ad):动态链路聚合,要求交换机启用LACP:mode=4 miimon=100 lacp_rate=1 xmit_hash_policy=layer2。
4、mode=6(balance-alb):自适应负载均衡,无需交换机配合,支持IPv4收发双向均衡:mode=6 miimon=100。










