服务器网卡绑定提升网络带宽:服务器网卡绑定全攻略

为什么需要做网卡绑定

当单张千兆或万兆网卡带宽不够用时,最简单的方法不是换更贵的网卡,而是把多张网卡“绑”在一起。服务器网卡绑定(Linux Bonding) 可以将两块或更多物理网卡虚拟成一块逻辑网卡,实现带宽叠加和链路冗余。
比如两块千兆网卡绑定后理论最大吞吐可达 2 Gbps,同时任意一块网卡坏掉也不会断网。

准备工作:硬件与系统要求

  • 硬件:至少两张物理网卡(建议同型号),主板有足够 PCIe 插槽。
  • 系统:CentOS 7/8、Ubuntu 20.04+ 或 Debian 10+ 均可,本文以 CentOS 7 为例。
  • 驱动:确认网卡驱动已加载(lspci | grep Ethernet 查看)。
  • 网络环境:交换机需支持 802.3ad(LACP) 静态聚合(推荐模式 4),或普通交换机也能用负载均衡模式(如 mode=0、mode=6)。

登录服务器后先备份现有网络配置:

cp -r /etc/sysconfig/network-scripts /etc/sysconfig/network-scripts.bak

分步配置 Linux Bonding

1. 加载并确认 bonding 模块

modprobe bonding
lsmod | grep bonding

若没有输出,则需手动加载并设置开机自动加载:

echo "bonding" >> /etc/modules-load.d/bonding.conf

2. 创建虚拟网卡 bond0 的配置文件

/etc/sysconfig/network-scripts/ 下新建 ifcfg-bond0

vim /etc/sysconfig/network-scripts/ifcfg-bond0

写入以下内容(IP 按实际环境修改):

DEVICE=bond0
NAME=bond0
TYPE=Bond
BONDING_MASTER=yes
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
BONDING_OPTS="mode=4 miimon=100 lacp_rate=1 xmit_hash_policy=layer3+4"
说明:mode=4 是 802.3ad LACP 模式,若交换机不支持可改用 mode=0(轮询)或 mode=6(自适应负载均衡),但 mode=0 有概率乱序,建议有条件优先用 mode=4。

3. 修改两块物理网卡配置

假设物理网卡为 eth0 和 eth1(请用 ip link 确认实际名称)。
编辑每块网卡:

vim /etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/sysconfig/network-scripts/ifcfg-eth1

两块网卡内容相同(仅 DEVICE 不同):

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

注意:不要写 IP 地址、网关等信息,都由 bond0 统一管理。

4. 重启网络服务生效

systemctl restart network

或临时不重启使用 ifenslave 命令(但建议重启确保配置持久化)。

避坑指南:高频问题与注意事项

  • 网卡名称不对:CentOS 7 以上可能使用 ens33 ens37 等命名,请用 ip a 确认,不要照抄 eth0。
  • BONDING_OPTS 顺序:必须写在同一行,中间用空格分隔,否则可能加载失败。
  • 交换机配合:如果用了 mode=4,交换机端口必须配置为 LACP 聚合组,否则无法通信。
  • 防火墙和 SELinux:绑定后不影响原有规则,但建议先关闭测试:
  setenforce 0
  systemctl stop firewalld

没问题后再按需开启。

  • 无法获取 IP:检查 bond0 配置中的网关是否正确,以及 route -n 是否出现默认路由。
  • 只要一块网卡有流量:可能是 xmit_hash_policy 不合适,可换成 layer2 测试;或者 mode 选为 0 轮询(不依赖 hash)。

效果验证:确认绑定正常与带宽测试

查看 bond 状态

cat /proc/net/bonding/bond0

输出中应看到 MII Status: up,两块网卡均为 Slave Interface: eth0Link Failure Count: 0

测试带宽提升

使用 iperf3 测试带宽(服务端和客户端均需安装 iperf3):

# 服务端(本机)
iperf3 -s

# 客户端(另一台同网段机器)
iperf3 -c 192.168.1.100 -t 30 -P 4

观察输出中的 sumsender 带宽。
如果单千兆网卡约 940 Mbps,绑定后应在 1.8~2.0 Gbps(双网卡)。
若未达到,检查交换机端口是否为瓶颈。

写在最后

网卡绑定是提升服务器网络性能最经济的手段之一。
只要硬件满足、交换机配置对,按本文步骤操作通常半小时内就能搞定。
遇到问题第一步查看 /proc/net/bonding/bond0,第二步检查交换机端口状态。
建议先用 mode=0 测试通后再切到 mode=4,减少排错复杂度。
如果你正在处理服务器网卡绑定提升网络带宽,不妨先完整执行一遍,再根据自己环境微调 bonding 参数。

分享到:
上一篇
WebSocket长连接服务器配置指南
下一篇
磁盘阵列RAID配置数据防护:零基础搞定磁盘阵列RAID配置
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意