如何在Linux中绑定网卡 Linux bonding模式配置指南

发布时间 - 2025-08-31 00:00:00    点击率:
网卡绑定通过聚合多个物理网卡提升网络性能与可靠性,Linux支持多种模式如主备(mode=1)、负载均衡(mode=4)等,配置需加载bonding模块、创建bond接口、设置物理网卡为从属并重启网络服务,生产环境推荐mode=1或mode=4以确保稳定性和性能。

在Linux系统中,网卡绑定(Network Bonding)是一种将多个物理网卡组合成一个逻辑网卡的技术,用于提升网络带宽、实现冗余和故障切换。合理配置网卡绑定能显著增强服务器的网络可靠性与性能。以下是详细的配置步骤和常见模式说明。

什么是网卡绑定(Bonding)

网卡绑定通过将多个网络接口聚合为一个逻辑接口(如 bond0),实现负载均衡或主备切换。Linux内核通过 bonding 模块支持这一功能,支持多种工作模式,适用于不同网络需求。

常见的Bonding模式说明

Linux支持多种bonding模式,选择合适的模式取决于你的网络目标:

  • mode=0 (balance-rr):轮询模式,数据包依次在各个网卡上传输,提供负载均衡和容错能力。
  • mode=1 (active-backup):主备模式,只有一个网卡处于活动状态,其他作为备份,适合高可用场景。
  • mode=2 (balance-xor):基于源和目标MAC地址进行哈希传输,提供负载均衡。
  • mode=3 (broadcast):所有数据包在所有接口上广播,适用于特定安全或监控场景。
  • mode=4 (802.3ad):动态链路聚合,需交换机支持LACP协议,可实现高带宽和冗余。
  • mode=5 (balance-tlb):适配器传输负载均衡,根据当前负载自动分配流量。
  • mode=6 (balance-alb):适配器适应性负载均衡,支持接收和发送负载均衡。

配置网卡绑定的步骤(以CentOS/RHEL为例)

以下以配置 mode=1(主备模式)为例,说明如何绑定两个网卡 eth0 和 eth1 为 bond0。

1. 加载 bonding 模块

确保 bonding 模块已加载:

modprobe bonding

查看是否加载成功:

lsmod | grep bonding

若需开机自动加载,添加到 /etc/modules-load.d/bonding.conf:

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

2. 创建bond接口配置文件

编辑 bond0 接口配置:

/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=1 miimon=100"

miimon=100
表示每100ms检测一次链路状态。

3. 配置物理网卡

修改 eth0 配置文件:

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

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

同样配置 eth1:

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

DEVICE=eth1
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
4. 重启网络服务

应用配置:

systemctl restart network

或使用:

nmcli con reload
(若使用NetworkManager)

验证绑定状态

检查 bond0 接口状态:

cat /proc/net/bonding/bond0

输出会显示当前模式、活动接口、链路状态等信息。

查看接口状态:

ip addr show bond0

teamdctl bond0 state
(若使用 teaming 工具)

测试故障切换:可手动禁用 eth0,观察是否自动切换到 eth1。

注意事项

不同发行版路径可能略有不同,如Ubuntu使用 /etc/network/interfaces 或 netplan 配置。

mode=4(802.3ad)要求交换机端配置LACP,否则无法正常聚合。

建议生产环境使用 active-backup(mode=1)或 802.3ad(mode=4),兼顾稳定与性能。

基本上就这些。配置网卡绑定不复杂,但需注意模式选择和交换机配合,确保网络稳定可靠。


# linux  # centos  # ipad  # ubuntu  # 工具  # mac  # amd  # linux系统  # echo  # 接口  # 负载均衡  # 绑定  # 多个  # 加载  # 链路  # 适用于  # 为例  # 重启  # 数据包  # 配置文件 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  重庆市网站制作公司,重庆招聘网站哪个好?  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  昵图网官方站入口 昵图网素材图库官网入口  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  javascript中闭包概念与用法深入理解  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  googleplay官方入口在哪里_Google Play官方商店快速入口指南  高性能网站服务器部署指南:稳定运行与安全配置优化方案  利用JavaScript实现拖拽改变元素大小  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  怎么用AI帮你设计一套个性化的手机App图标?  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  如何在建站之星网店版论坛获取技术支持?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  使用Dockerfile构建java web环境  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  如何快速搭建安全的FTP站点?  原生JS获取元素集合的子元素宽度实例  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  潮流网站制作头像软件下载,适合母子的网名有哪些?  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  LinuxShell函数封装方法_脚本复用设计思路【教程】  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  如何做网站制作流程,*游戏网站怎么搭建?  如何撰写建站申请书?关键要点有哪些?  Python文本处理实践_日志清洗解析【指导】  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  奇安信“盘古石”团队突破 iOS 26.1 提权  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  原生JS实现图片轮播切换效果  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  微信小程序 wx.uploadFile无法上传解决办法  PHP 500报错的快速解决方法  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  高端智能建站公司优选:品牌定制与SEO优化一站式服务  大连 网站制作,大连天途有线官网?  Laravel如何实现事件和监听器?(Event & Listener实战)  Laravel怎么使用Intervention Image库处理图片上传和缩放  Swift开发中switch语句值绑定模式  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】