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个包
- 物理断线即切换,不依赖上层协议超时
以下以 nmcli 配置 bond0 active-backup 为例(最成熟、兼容性最好、Kernel原生支持):
? 步骤一:创建bond主接口并启用链路检测
必须指定 miimon(链路载波检测),这是实现“本地链路”快速感知的关键:
nmcli connection add type bond con-name bond0 ifname bond0 \ mode active-backup miimon 100
-
miimon 100:每100ms检查一次物理网卡 carrier 状态(推荐值,太大会延迟切换,太小增加CPU开销) - 不要加
arp_interval或arp_ip_target:那是用于跨交换机场景,会引入额外延迟和误判,本地链路冗余应只信物理层
?️ 步骤二:添加两块物理网卡为 slave(例如 eno1 和 eno2)
nmcli 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 bond0
- 网卡名请用
ip -br l | grep "UP"确认(常见:eno1,ens33,enp0s31f6) - slave 连接不能配置IP、不能设 autoconnect、不能单独 up/down —— 全由 bond0 统一管控
? 步骤三:只在 bond0 上配置静态网络参数(关键!)
所有网络属性必须集中配置在 bond0,物理口保持“无地址”状态:
在无 root/sudo 权限的环境(云容器、VPS、隔离主机)中安装并配置 OpenClaw 浏览器工具的 headless Chrome。适用场景:...
nmcli 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 yes
-
ipv4.method manual是强制开关:不设此项,NetworkManager 仍可能拉起 DHCP 干扰控制流 -
ignore-auto-routes yes:防止旧DHCP残留路由污染关键路径 - 不要给 eno1/eno2 单独配 IP,否则会触发 ARP 冲突或路由环路
▶️ 步骤四:启用连接并验证链路级冗余
按顺序激活(顺序重要):
nmcli 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/bond0
输出中应看到类似:
Currently Active Slave: eno1 MII Status: up MII Status: down ← 当前 eno2 断开时此处为 down,eno1 为 up
? 步骤五:测试关键控制流是否真正冗余
- 在另一台机器执行持续 ping(模拟监控心跳):
ping -I bond0 192.168.50.1 -c 100
- 拔掉 eno1 网线(非 shutdown,是真实物理断连)
- 观察:ping 应最多丢失 1–2 包,之后立即恢复;
cat /proc/net/bonding/bond0中Currently Active Slave会秒变eno2,MII Status同步更新
⚠️ 注意:仅靠
ping bond0 IP不够可靠。有些交换机会缓存 MAC,导致“看似通但控制流已断”。务必结合/proc/net/bonding/bond0的 MII 状态 + 实际业务连接(如 SSH 会话是否卡死)双重验证。
不复杂但容易忽略:
-
miimon是本地链路感知的唯一可靠依据; - 所有IP只配 bond0,物理口必须“干净”;
- 切换验证必须拔线,不是
ip link set down(后者不触发 MII 检测)。

















