当前位置: 首页 > news >正文

linux实现双网卡负载均衡 ——企业高可用网络方案与实践

一、为什么企业需要双网卡负载均衡

在企业生产环境中,网络可靠性直接关系到业务的连续运行。单网卡架构存在两个核心风险:

1. 单点故障:网卡硬件损坏、网线松动、交换机端口故障都会导致服务器断网,业务中断。
2. 带宽瓶颈:单块千兆网卡理论带宽125MB/s,面对高并发文件服务、虚拟化平台、数据库集群等场景往往不够用。

双网卡绑定(NIC Bonding/Teaming)就是解决这两个问题的标准方案——将两块(或多块)物理网卡虚拟成一块逻辑网卡,实现"故障冗余"和"带

二、Bonding 的七种工作模式

Linux内核自带的 bonding 驱动支持7种模式,企业环境最常用的是以下三种:

模式 | 数字代号 | 原理 | 适用场景
mode=0(balance-rr) | 0 | 轮询策略,数据包依次从两块网卡轮流发出 | 需要带宽叠加且交换机支持聚合 |
| **mode=1(active-backup)** | 1 | 主备模式,仅一块网卡工作,故障时自动切换 | 纯冗余场景,对端交换机无需配置 |
| **mode=6(balance-alb)** | 6 | 自适应负载均衡,发送和接收都做负载分担,不需要交换机支持 | 交换机不支持链路聚合时的首选 |

本文章以mode=6(自适应负载均衡)为例,实现负载均衡

三、环境说明

| 项目 | 信息 |
| 操作系统 | CentOS 7
| 物理网卡 | ens33、ens36、ens37
| 绑定后逻辑接口 | bond0 |
| Bonding 模式 | mode=6(adaptive load balancing) |
| IP地址 | 192.168.1.100/122 |

先在vm对虚拟机配置三张网卡,其中俩张是仅主机,一张是NAT

以本机为例,将仅主机的网段调到192.168.100.0

NAT调到192.168.200.0

三、配置

我们在linux终端将信息配置

输入 vim /etc/sysconfig/network-scripts/ifcfg-bond0 进入bond0的配置

如下图

TYPE=bond #bond类型 BOOTPROTO=static #静态ip DEVICE=bond0 #网络接口名为bond0 ONBOOT=yes #开机自启动 USERCTL=no #普通用户是否能控制 IPADDR=192.168.100.122 #设置ip PREFIX=24 #子网掩码 NAME=bond0 BONDING_MASTER=yes #设置bond0为管理其他网卡主设备 BONDING_OPTS="mode=6 miimon=100" #设置mode 6 每100检测一次连接状态

然后在配置另外俩个网卡为从属网卡

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

TYPE=Ethernet #接口类型 DEVICE=ens36 #设备名称 BOOTPROTO=none #ip获取方式,none表示不用dhcp来获取ip,走静态 ONBOOT=yes #开机自启动 USERCTL=no MASTER=bond0 #将ens36设置为bond0的从属网卡 SLAVE=yes #从属 NAME=bond0-ens36

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

TYPE=Ethernet BOOTPROTO=none DEVICE=ens37 ONBOOT=yes USERCTL=no MASTER=bond0 SLAVE=yes NAME=bond0-ens37

配置好俩个从属网卡后 ,将bonding驱动加载到bond0内核,实现网卡绑定

在终端输入vim /etc/modprobe.d/bonding.conf

alias bond0 bonding

其中alias是modprobe(内核模块)的别名

意思为有网卡参与到bond0这个网卡就加载bonding模块

后面系统在开机后 modprobe 会去查/etc/modprobe.d/下的配置

然后手动输入modprobe bonding让它立即执行

输入systemctl restart network 重新启动网络配置

完成后查看设备连接状态

再查看bond0接口的连接状态 cat /proc/net/bonding/bond0

像这样,就算是配置成功了,其中bond是充当调度ens36 ens37的角色,负责流量收发

最后可以在操作机终端测试连通性,将ens36网卡断掉,如果还能继续联通,说明ens37被bond0

调用了,双网卡负载均衡实验成功

四、总结

企业级双网卡绑定(bonding)的核心价值是提升带宽利用率保障网络高可用,不同场景会选择不同模式(如 mode6 自适应负载均衡、mode4 LACP 链路聚合、mode1 主备),是我们学习网络配置的一大重点

特别提醒

纯无线网卡环境下,基本没法正常用 mode6(balance-alb)模式

mode=6(自适应负载均衡)的核心逻辑,是通过动态修改从网卡(Slave)的 MAC 地址,来欺骗交换机 / AP,让它把进来的流量分摊到不同的网卡上,实现 “双向负载均衡”。

有线网卡的驱动普遍支持这个特性,而绝大多数笔记本无线网卡(不管是自带的还是 USB 外接的),驱动 / 固件都会锁定 MAC 地址,不允许动态修改。一旦无法修改 MAC 地址,mode=6就会直接失效,只剩下发送端的负载均衡

http://www.jsqmd.com/news/762283/

相关文章:

  • 实战应用:基于快马平台构建可部署的智能故障诊断宏智树系统
  • 出版物印刷装订生产厂性价比高的有哪些? - mypinpai
  • 基于Supabase与ChatGPT构建智能文档问答系统的RAG实战指南
  • 视觉语言模型与物理世界预测的融合实践
  • LLM与AIGC开源项目导航:从模型选型到应用落地的全栈指南
  • 解锁多语言游戏世界:XUnity.AutoTranslator深度配置与实战指南
  • KMS智能激活工具终极指南:如何永久解决Windows和Office激活问题
  • 零基础入门:借助快马生成的指导代码在ubuntu上轻松安装openclaw
  • UniWeTok:统一多模态二进制分词器的设计与实践
  • Python 爬虫反爬突破:动态密钥定期更新自动同步
  • Anki自动化制卡:Python脚本实现语言学习闪卡批量生成
  • 哔哩下载姬DownKyi终极指南:如何轻松下载B站8K超清视频
  • 游戏语言障碍终结者:XUnity.AutoTranslator让外文游戏秒变中文
  • 带飞智能科技多少钱?价格贵不贵? - mypinpai
  • 避坑指南:Orin NX跑压力测试时jtop报错‘init_pair() returned ERR’的三种解决方法
  • 医学影像分析新突破:视觉思维链数据集构建与应用
  • 实战应用:基于快马平台部署一个在线电商广告图无痕改字系统
  • 保姆级教程:在sqli-labs第七关用into outfile写一句话木马(附PHPStudy环境配置)
  • 变分流映射(VFM)在生成模型中的高效实现与应用
  • 哔哩下载姬DownKyi:3分钟掌握B站视频下载的终极免费方案
  • 全国优质矿源黄腐酸钾哪家好用 - mypinpai
  • 如何在Windows 11上完美运行安卓应用:WSA完整使用指南
  • SHAMISA自监督图像质量评估技术解析与实践
  • AI代码诗人:用诗意重构技术表达,提升代码沟通与理解的艺术
  • WorkshopDL新手完全指南:无需Steam客户端轻松下载创意工坊模组
  • 2026专利律所怎么选?核心要素与专业选择指南 - 品牌排行榜
  • FreeRTOS heap4内存管理源码逐行解读:从链表操作到内存碎片合并的实战指南
  • GaussDB触发器实战:轻松搞定跨表数据同步(附性能避坑指南)
  • 开源AI智能体框架CL4R1T4S:构建可靠多智能体系统的架构与实践
  • 【报错实战】Python路径报错Unicodeescape全网最简解决,新手直接照抄能用