Linux_Bonding网卡聚合_配置实战
确保系统已安装 NetworkManager:
bash
# RHEL/CentOS/Rocky Linux
yum install NetworkManager -y
# Ubuntu/Debian
apt-get install NetworkManager -y核心原理解析
Linux Bonding(网卡绑定)通过内核模块将多个物理网卡虚拟化为单个逻辑接口,实现网络冗余和负载均衡。Mode 4(802.3ad)基于IEEE 802.3ad标准,通过LACP协议与交换机协商动态链路聚合。
哈希策略原理:
layer3+4:基于三层IP地址和四层端口号进行哈希,确保同一TCP/UDP会话的所有数据包通过同一物理链路,避免乱序miimon=100:每100毫秒检测链路状态,快速发现故障
配置实战
场景一:前端业务网卡聚合配置
bash
# 创建 bond0 接口,设置模式为 4(802.3ad LACP)
nmcli connection add type bond con-name front-bond ifname front-bond mode 802.3ad
# 将物理网卡 p16p1 和 p1p1 加入到 bond0 中
nmcli connection add type ethernet ifname p16p1 master front-bond
nmcli connection add type ethernet ifname p1p1 master front-bond
# 为 bond0 配置静态IP地址、网关和DNS
nmcli connection modify front-bond \
ipv4.addresses 172.18.20.21/16 \
ipv4.gateway 172.18.0.254 \
ipv4.dns 172.18.0.254 \
ipv4.method manual
# 启动 bond0 连接
nmcli connection up front-bond场景二:后端存储网卡聚合配置(一行命令版)
bash
# 完整的后端bond配置命令链
nmcli c a type bond con-name bond-back ifname bond-back mode 4; \
nmcli c a type ethernet con-name enp202s0f0np0-bond-back ifname enp202s0f0np0 master bond-back; \
nmcli c a type ethernet con-name enp203s0f0np0-bond-back ifname enp203s0f0np0 master bond-back; \
nmcli c m bond-back ipv4.address 172.19.9.3/16 ipv4.method manual; \
nmcli c up bond-back优化配置:调整哈希策略
查看当前bond状态
bash
# 查看bond0的详细状态和哈希策略
cat /proc/net/bonding/front-bond优化哈希策略为layer3+4
bash
# 修改bond的哈希策略和LACP参数
nmcli connection modify front-bond \
bond.options "miimon=100,mode=4,lacp_rate=fast,xmit_hash_policy=layer3+4"
# 重新激活配置使其生效
nmcli connection up front-bond参数详解:
miimon=100:链路监控间隔100ms,快速故障检测mode=4:802.3ad LACP模式,需要交换机支持lacp_rate=fast:LACP包发送频率设为快速模式(1秒)xmit_hash_policy=layer3+4:基于IP+端口哈希,优化TCP/UDP性能
验证与故障排查
验证bond状态
bash
# 查看bond聚合状态
cat /proc/net/bonding/front-bond
# 查看NetworkManager连接状态
nmcli connection show
# 查看网络接口详细信息
ip addr show front-bond常见问题排查
bond状态显示down:
bash# 检查物理网卡状态 nmcli device status # 检查交换机端口LACP配置 # 确保交换机端口已启用LACP并配置为active模式哈希策略未生效:
bash# 确认配置已应用 nmcli connection show front-bond | grep bond.options # 重新加载配置 nmcli connection reload nmcli connection up front-bond
⚠️ 风险提示:生产环境修改网络配置前,建议通过控制台访问,避免网络中断导致无法连接。建议在维护窗口期执行,并准备回滚方案。