摘要:散货船直连低轨卫星网络存在单点故障与明文传输风险。本文记录了基于 Linux 构建标准工业边缘网关多链路融合与合规隔离的实操复盘。
导语:在实操一个远洋散货船网络降本重构项目时,我们面临一个典型的 LEO(低轨卫星,如 Starlink)融合难题:船东希望通过引入便宜的 LEO 带宽来替代昂贵的 GEO(地球同步轨道,如 VSAT)带宽,但 LEO 在大洋深处偶有掉线。同时,合规审计员要求:无论走哪条链路,关键的办公 OT(操作技术)数据必须与船员 BYOD(自带设备)网络严格隔离,且必须进行高强度的底层加密穿透。如果仅仅使用民用路由器,无法实现平滑的 Multi-WAN 切换,更无法构建隔离网段。为了实现高可用且合规的自动化对接,我们抛弃了市面上的低端透传黑盒,直接在一台高集成度的标准工业级边缘网关上,深入 Linux 系统编写了基于 mwan3 的负载均衡脚本,并利用 strongSwan 构建了高强度的专线数据通道。今天把核心的代码做个实战复盘。
基于 Mwan3 的 LEO 与 VSAT 毫秒级故障转移
要让现代应用平滑过渡卫星的盲区,必须在边缘侧配置策略路由(Policy Routing)与高频探活。我们在网关内部署了针对多 WAN 环境优化的 mwan3 服务。
该服务将 eth1(连接 LEO 终端)设为主干道,eth2(连接 VSAT 终端)设为热备道。通过高频 ping 根域名服务器,一旦 LEO 丢包率超过阈值,立刻重写 iptables 路由标记:
Bash
#!/bin/sh # /etc/config/mwan3 核心配置片段复盘 config interface 'leo_wan' list track_ip '8.8.8.8' list track_ip '1.1.1.1' option reliability '1' option count '1' option timeout '2' option interval '5' option down '3' option up '3' config interface 'vsat_wan' list track_ip '8.8.8.8' list track_ip '1.1.1.1' # VSAT 探活间隔拉长,节省昂贵的探测流量 option interval '10' config member 'leo_member' option interface 'leo_wan' option metric '1' # 高优先级 option weight '10' config member 'vsat_member' option interface 'vsat_wan' option metric '2' # 备用优先级 option weight '10' config policy 'wan_failover' list use_member 'leo_member' list use_member 'vsat_member' config rule 'default_rule' option dest_ip '0.0.0.0/0' option use_policy 'wan_failover'利用 strongSwan 建立零信任专线与 Namespace 隔离
在链路高可用保障后,底层网络协议栈必须承担起保密与防逃逸的责任。由于公海链路极不安全,我们在网关内核中注入了 strongSwan 进程,利用 IKEv2/IPsec 协议将办公子网(192.168.10.0/24)的流量强制封装进高强度加密专用隧道中,直达国内总部。
更为关键的是防线建设。我们利用 Linux Network Namespace (netns) 配合 nftables 拉起零信任隔离网,坚决阻断船员娱乐子网(192.168.20.0/24)对办公内网的反向嗅探。
Bash
# 1. 配置 strongSwan IPsec 隧道 (避免明文嗅探) # /etc/ipsec.conf conn hq-tunnel keyexchange=ikev2 ike=aes256-sha256-modp2048! esp=aes256-sha256! left=%defaultroute leftsubnet=192.168.10.0/24 right=203.0.113.5 # 总部公网 IP rightsubnet=10.0.0.0/8 auto=start # 2. Nftables 零信任阻断防御 nft flush ruleset nft add table inet edge_defense # 默认拒绝所有跨网段转发连接 nft add chain inet edge_defense forward_chain { type filter hook forward priority 0 \; policy drop \; } # 3. 状态机:仅允许办公网走 IPsec 专线,拦截船员网向办公网的扫描 nft add rule inet edge_defense forward_chain ip saddr 192.168.20.0/24 ip daddr 192.168.10.0/24 log prefix "[ALERT-LAN-HACK-ATTEMPT] " counter drop nft add rule inet edge_defense forward_chain ct state established,related accept通过这套组合拳,网关在接触到廉价的 LEO 带宽时,便能完成免人工干预的安全接管与结构化加密输出。
常见问题解答 (FAQ):
问题1、为何在边缘侧使用 mwan3 而不是 OSPF 动态路由协议?
答:在极简的边缘网关嵌入式 Linux 系统中,对于非对等的链路(如 LEO 和 GEO),mwan3 基于 iptables 的 MARK 机制提供了极佳的开发效率和精准的源/目的 IP 分流控制,比 OSPF 收敛更快。
问题2、如果高强度的 IPsec 加密导致老旧硬件 CPU 满载怎么办?
答:必须采购支持硬件加密加速引擎(AES-NI 或类似 NPU)的标准化工业边缘网关。纯软件计算会导致极高的延迟,反而拖累了 LEO 的优势。
问题3、如何系统性地学习这套底层隔离与多链路融合拓扑设计?
答:建议深入研究 Linux Kernel Netfilter 架构与 policy routing。
总结:在复杂的工控边缘网络改造中,熟练掌握底层负载均衡逻辑、加密专用隧道机制与网络包过滤机制,配置合适的高性能标准网关安全脚本,是架构师低成本盘活 LEO 带宽资产的核心能力。