Linux网络冗余通过网卡绑定、VRRP(如Keepalived)和LACP实现高可用,主备模式保障故障自动切换,结合交换机配置与ARP监测提升稳定性。

Linux网络冗余的配置核心在于提升网络可用性和容错能力,当主链路或网卡出现故障时,系统能自动切换到备用链路,保障服务持续运行。实现方式主要包括绑定网卡(bonding)、使用VRRP协议(如Keepalived)以及结合交换机支持的链路聚合(LACP)。下面介绍几种常见配置方法与优化建议。
网卡绑定(NIC Bonding)
网卡绑定通过将多个物理网卡组合成一个逻辑接口,实现负载均衡和故障切换。
配置步骤:
1. 加载 bonding 模块:确保内核支持 bonding,加载模块:
modprobe bonding
/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 BOOTPROTO=static ONBOOT=yes BONDING_OPTS="mode=active-backup miimon=100"
配置从属网卡(如 ifcfg-eth0):
DEVICE=eth0 BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes
另一张网卡(如 eth1)同样配置 SLAVE=yes 并指向同一 MASTER。
3. 常用模式说明:- mode=0 (balance-rr):轮询负载均衡,需交换机支持
- mode=1 (active-backup):主备模式,推荐用于高可用
- mode=4 (802.3ad/LACP):动态链路聚合,需交换机启用 LACP
配置完成后重启网络服务:systemctl restart network
使用 Keepalived 实现 VRRP 冗余
在多台服务器之间实现虚拟 IP 冗余,常用于网关或负载均衡器场景。
1. 安装 Keepalived:yum install keepalived -y 或 apt install keepalived
vrrp_instance VI_1 {
state MASTER
interface bond0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1234
}
virtual_ipaddress {
192.168.1.200/24
}
}
3. 备节点配置:
仅需将 state 改为 BACKUP,priority 设为较低值(如 90)。
启动服务:systemctl enable keepalived && systemctl start keepalived
此时虚拟 IP 会在主节点上线,故障时自动漂移到备节点。
结合交换机优化链路可靠性
仅配置主机端不够,需确保交换机配合:
- 若使用 LACP(mode=4),交换机端口必须启用 LACP 协议
- 主备模式(mode=1)可在普通交换机运行,但建议关闭生成树延迟(portfast)
- 避免将绑定网卡接在不同交换机上而未做堆叠或跨机聚合,否则可能引发环路
监控链路状态可通过 cat /proc/net/bonding/bond0 查看当前激活网卡和对端协商情况。
性能与故障检测优化
调整参数提升响应速度和稳定性:
- miimon=100:每100ms检测一次链路状态,建议设置为100~200ms
- downdelay 和 updelay:控制故障切换延迟,避免震荡
- arp_interval 和 arp_ip_target:启用ARP监测,检测更深层网络连通性
例如增强检测机制:
BONDING_OPTS="mode=active-backup miimon=100 arp_interval=200 arp_ip_target=192.168.1.1"
基本上就这些。根据实际网络架构选择合适模式,主备适合一般高可用,LACP适合高性能场景。配置后务必进行断电或拔线测试,验证切换是否正常。不复杂但容易忽略细节,比如交换机配置或ARP监测。










