Linux中无“LLR”标准术语,实际指active-backup模式的网卡绑定,通过miimon实现毫秒级本地链路冗余,保障SSH、Modbus等控制流高可用。
Linux 中没有标准术语叫“LLR(Local Link Redundancy)”。你提到的
本地链路冗余功能
,实际对应的是内核级网卡绑定(bonding)或用户态聚合(team)中的
active-backup 模式
——这是保障关键控制流高可用的核心机制,适用于服务器管理口、工业控制器、PLC通信链路等对单点故障零容忍的场景。
它不依赖交换机协议(如LACP),仅靠主机侧链路状态检测(miimon/arpmon)实现毫秒级故障切换,真正实现“本地链路”级冗余。
✅ 明确目标:让关键控制流始终走通
典型需求包括:
控制平面流量(如SSH、SNMP、Modbus TCP、OPC UA)永不中断
管理IP固定、MAC稳定、路由表不变
主备切换时
不丢包或仅丢1个包
物理断线即切换,不依赖上层协议超时
以下以
配置
bond0 active-backup
为例(最成熟、兼容性最好、Kernel原生支持):
? 步骤一:创建bond主接口并启用链路检测
必须指定
(链路载波检测),这是实现“本地链路”快速感知的关键:
:每100ms检查一次物理网卡 carrier 状态(推荐值,太大会延迟切换,太小增加CPU开销)
不要加
或
:那是用于跨交换机场景,会引入额外延迟和误判,
本地链路冗余应只信物理层
?️ 步骤二:添加两块物理网卡为 slave(例如 eno1 和 eno2)
网卡名请用
确认(常见:
,
,
)
slave 连接
不能配置IP、不能设 autoconnect、不能单独 up/down
—— 全由 bond0 统一管控
? 步骤三:只在 bond0 上配置静态网络参数(关键!)
所有网络属性必须集中配置在 bond0,物理口保持“无地址”状态:
CentOS Linux 7.9.2009
CentOS Linux 7.9.2009是传统CentOS Linux 7的最后主要版本,也是很多企业历史服务器中仍可能遇到的系统版本。它以稳定、兼容RHEL 7生态、文档丰富和软件支持广泛著称,曾长期用于Web服务、数据库、虚拟化节点和企业内部业务系统。不过CentOS Linux 7已于2024年6月30日停止维护,现在继续使用会面临安全补丁缺失风险。该版本更适合旧业务迁移、历史环境恢复或离线兼容性测试。
下载
是强制开关:不设此项,NetworkManager 仍可能拉起 DHCP 干扰控制流
:防止旧DHCP残留路由污染关键路径
不要给 eno1/eno2 单独配 IP
,否则会触发 ARP 冲突或路由环路
▶️ 步骤四:启用连接并验证链路级冗余
按顺序激活(顺序重要):
验证是否就绪:
输出中应看到类似:
? 步骤五:测试关键控制流是否真正冗余
在另一台机器执行持续 ping(模拟监控心跳):
拔掉 eno1 网线
(非 shutdown,是真实物理断连)
观察:ping 应最多丢失 1–2 包,之后立即恢复;
中
会秒变
,
同步更新
⚠️ 注意:仅靠
不够可靠。有些交换机会缓存 MAC,导致“看似通但控制流已断”。
务必结合的 MII 状态 + 实际业务连接(如 SSH 会话是否卡死)双重验证。
不复杂但容易忽略:
是本地链路感知的唯一可靠依据;
所有IP只配 bond0,物理口必须“干净”;
切换验证必须拔线,不是
(后者不触发 MII 检测)。
nmclimiimonnmcli connection add type bond con-name bond0 ifname bond0 \
mode active-backup miimon 100miimon 100arp_intervalarp_ip_targetnmcli connection add type bond-slave con-name bond0-eno1 ifname eno1 master bond0
nmcli connection add type bond-slave con-name bond0-eno2 ifname eno2 master bond0ip -br l | grep "UP"eno1ens33enp0s31f6nmcli connection modify bond0 \
ipv4.method manual \
ipv4.addresses "192.168.50.10/24" \
ipv4.gateway "192.168.50.1" \
ipv4.dns "192.168.50.2" \
ipv4.ignore-auto-routes yes \
connection.autoconnect yesipv4.method manualignore-auto-routes yesnmcli connection up bond0-eno1
nmcli connection up bond0-eno2
nmcli connection up bond0# 查看 bond0 是否 UP 且有地址
ip -br a show bond0
# 查看实时主备状态(重点看 MII Status 和 Currently Active Slave)
cat /proc/net/bonding/bond0Currently Active Slave: eno1
MII Status: up
MII Status: down ← 当前 eno2 断开时此处为 down,eno1 为 upping -I bond0 192.168.50.1 -c 100cat /proc/net/bonding/bond0Currently Active Slaveeno2MII Statusping bond0 IP/proc/net/bonding/bond0miimonip link set down