CentOS7双网卡做bond0主备模式完整流程
给服务器插两根网线,结果只有一根能跑流量?另一根白白闲着,老板问“为啥不冗余?”——别急,今天就把CentOS7双网卡做bond0主备模式的完整流程揉碎了讲。照着敲命令,十分钟就能让两块网卡变“一张”,主挂了备立刻顶,业务不掉线,夜里不背锅。

一、先搞清楚:主备模式到底干啥
bond0主备,说白了就是“一主一备,主活着备睡觉,主挂了备接班”。不提升带宽,只保高可用。对跑数据库、跑API、跑钱相关的服务器最香——省钱又安心。
二、动手前的三件套
1. 确认两根网线插在不同交换机上,避免“同电同断”。
2. 记下网卡名,ip a一眼就能看到,比如ens33、ens34。
3. 开root,或者sudo权限够大,别半路被权限卡住。

三、关坑第一步:卸掉NetworkManager
CentOS7自带NetworkManager爱抢配置,先踢出去:
systemctl stop NetworkManager
systemctl disable NetworkManager
**这一步不做,后面ifcfg文件会被顶掉,哭都来不及。**
四、装bonding内核模块

CentOS7最小化安装通常已带,再确认一眼:
modprobe bonding
echo "bonding" >> /etc/modules-load.d/bonding.conf
执行完无报错就是成功,lsmod | grep bond能看到bonding字样。
五、手写配置文件:四张纸,一张不能错
配置文件全在/etc/sysconfig/network-scripts/,一共改四份:
1)ifcfg-bond0
DEVICE=bond0
NAME=bond0
TYPE=Bond
BONDING_MASTER=yes
IPADDR=192.168.1.100
PREFIX=24
GATEWAY=192.168.1.1
DNS1=223.5.5.5
ONBOOT=yes
BOOTPROTO=none
BONDING_OPTS="mode=1 miimon=100 primary=ens33"
**mode=1即主备,miimon=100毫秒检测一次,primary=ens33指定主网卡。**
2)ifcfg-ens33(主网卡)
DEVICE=ens33
NAME=ens33
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
3)ifcfg-ens34(备网卡)
DEVICE=ens34
NAME=ens34
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
4)ifcfg-lo回环保持默认,不动它。
六、重启网络,一次成型
systemctl restart network等五秒,ip a里看到bond0抬头,ens33、ens34没有独立IP,说明组队成功。
七、验证主备切换:拔网线最直观
1. cat /proc/net/bonding/bond0先看“Currently Active Slave: ens33”。
2. 拔掉ens33网线,再cat一次,变成ens34,丢包0~1个,SSH不卡,说明切换成功。
3. 插回ens33,自动切回,主卡归位。
**生产环境别乱拔,可以在交换机侧shutdown端口,更安全。**
八、常见报错速查表
• bringing up interface bond0: Connection activation failed
→ 检查BONDING_OPTS有没有打错字母,mode=1后面别加分号。
• ens33 is still active
→ 旧配置文件里BOOTPROTO=dhcp没删,IP没被bond0接管,清掉即可。
• 切换后丢包高
→ miimon值太大或交换机没开端口快速转发,改成100或更小。
九、想开机自启,还得关SELinux?
不用。bonding与SELinux无关,保持enforcing也能跑。别被网上旧帖带节奏。
十、一键检查脚本(顺手粘)
#!/bin/bash
echo === bond0状态 ===
cat /proc/net/bonding/bond0 | grep -E "Bonding Mode|Currently Active Slave| MII Status"
echo === 路由表 ===
ip route | grep default
丢到/usr/local/bin/bondcheck.sh,chmod +x,每天跑一次,安心。
十一、真实踩坑小结
1. 虚拟机做实验记得开“混杂模式”,不然切换看不到。
2. 云主机(阿里云、腾讯云)大部分不支持bonding,物理机才玩得动。
3. 做了bond0别手痒再配单网卡IP,会冲突,系统一脸懵。
照着上面十一步走完,CentOS7双网卡bond0主备模式就稳了。夜里交换机重启、网线被保洁碰掉,服务器照样在线,你能睡整觉,老板也挑不出刺。
