Linux多网卡配置方案_绑定与负载策略解析【教程】

8次阅读

Linux 多网卡配置含五种方案:mode= 0 轮询负载均衡需交换机聚合;mode= 1 主备高可用无需交换机支持;mode= 4 基于 LACP 动态聚合需交换机启用 802.3ad;mode= 6 自适应负载均衡收发双向均衡且免交换机配合;策略路由实现按源地址分流至不同物理链路。

Linux 多网卡配置方案_绑定与负载策略解析【教程】

在 Linux 系统中,当服务器配备多个物理网卡时,可通过网卡绑定(Bonding)技术实现高可用性或带宽聚合。不同绑定模式对应不同的流量分发与故障切换逻辑。以下是几种主流的多网卡配置方案及其负载策略解析:

一、mode=0(balance-rr)轮询模式

该模式通过轮询方式将网络数据包依次分发至各从属网卡,实现带宽叠加和基本负载均衡。要求交换机 端口 配置为聚合组(如 IEEE 802.3ad),且所有参与绑定的网卡速率与双工模式必须一致。

1、加载 bonding 内核模块:modprobe bonding mode=0 miimon=100

2、创建 bond0 接口 配置文件 (/etc/sysconfig/network-scripts/ifcfg-bond0),设置 BOOTPROTO 为 static,并指定 IP 地址、 子网 掩码及网关

3、修改各物理网卡配置文件(如 ifcfg-eth0、ifcfg-eth1),将 DEVICE 设为对应名称,ONBOOT 设为 yes,BOOTPROTO 设为 none,并添加 MASTER=bond0SLAVE=yes

4、重启网络服务:systemctl restart network

二、mode=1(active-backup)主备模式

此模式仅一个网卡处于活动状态,其余作为热备份。当主网卡失效时,自动切换至备用网卡,保障连接连续性。无需交换机支持链路聚合,适用于对高可用性要求严苛但不追求带宽叠加的场景。

1、加载 bonding 模块并指定主备模式:modprobe bonding mode=1 miimon=100 primary=eth0

2、配置 bond0 接口为静态 IP,禁用 IPv6(可选),并确保 NM_CONTROLLED=no 以避免 NetworkManager 干扰

3、在各从属网卡配置中分别写入 MASTER=bond0SLAVE=yes,同时在主网卡配置中追加BONDING_OPTS=”mode=1 primary=eth0 miimon=100″

4、执行 ip link set bond0 up 启用绑定接口,并验证状态:cat /proc/net/bonding/bond0

三、mode=4(802.3ad)动态链路聚合模式

基于 IEEE 802.3ad 标准,通过 LACP 协议与交换机协商聚合参数,实现自动发现、配置同步与故障检测。需交换机端明确启用 LACP,并将对应端口加入同一 LAG 组。

1、确认内核已启用 802.3ad 支持:grep CONFIG_BONDING /boot/config-$(uname -r),输出应含 = y 或 =m

2、加载模块时指定 lacp_rate 与 xmit_hash_policy:modprobe bonding mode=4 lacp_rate=1 xmit_hash_policy=layer2+3 miimon=100

3、在 bond0 配置中添加:BONDING_OPTS=”mode=4 lacp_rate=1 xmit_hash_policy=layer2+3 miimon=100″

4、检查聚合状态是否为“Aggregator ID: N”且所有端口显示“Aggregator ID: N, Actor Key: N, Partner Key: N”,表示 LACP 握手成功

四、mode=6(balance-alb)自适应负载均衡模式

该模式无需交换机配合,支持发送与接收双向流量均衡。发送端依据哈希算法分配流量,接收端通过 ARP 协商机制引导响应报文由特定网卡处理,从而实现收发路径分离下的负载分担。

1、加载模块并启用 ALB:modprobe bonding mode=6 miimon=100

2、配置 bond0 为静态 IP,关闭 STP(若使用桥接):STP=off

3、在各从属网卡配置中设置MASTER=bond0SLAVE=yes,并在 bond0 配置中加入BONDING_OPTS=”mode=6 miimon=100″

4、触发 ARP 重协商:echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce

五、基于策略 路由 的多网卡独立出口配置

当需要不同业务流量走不同物理链路(如管理网段走 eth0、业务网段走 eth1),可绕过 bonding,采用策略路由方式实现网卡分工。每张网卡保留独立 IP 与路由表,通过源地址匹配规则决定出口路径。

1、为 eth0 配置主 IP(如 192.168.1.10/24),eth1 配置次 IP(如 10.0.2.20/24),均设置 ONBOOT=yes 且 BOOTPROTO=static

2、创建独立路由表(/etc/iproute2/rt_tables),追加两行:100 table_eth0101 table_eth1

3、分别为两张网卡添加默认路由与直连路由:ip route add default via 192.168.1.1 dev eth0 table table_eth0ip route add 192.168.1.0/24 dev eth0 src 192.168.1.10 table table_eth0

4、添加策略规则:ip rule add from 192.168.1.10/32 table table_eth0ip rule add to 192.168.1.0/24 table table_eth0,同理配置 eth1 对应规则

星耀云
版权声明:本站原创文章,由 星耀云 2026-01-08发表,共计2343字。
转载说明:转载本网站任何内容,请按照转载方式正确书写本站原文地址。本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。