| 主备方案 | 两台出口机 + 高可用虚拟 IP + keepalived |
|---|---|
| 健康检查 | 对公网出口做探测,连续失败触发主备切换 |
| 脚本要点 | 切换时同步 iptables 与转发配置,避免「地址漂过去、规则没带过去」 |
| 替代方案 | 云托管 NAT 网关:节点故障由平台自动切换 |
出口健康检查(框架示意)
出口健康检查(框架示意)
#!/bin/bash
# 每 10 秒探测公网可达性,连续失败达到阈值触发切换
curl -s --connect-timeout 3 https://ifconfig.me >/dev/null \
&& miss=0 || miss=$((miss+1))
echo "miss=${miss}"自建高可用可行,但维护成本与故障面都高于托管产品,评估时把人力成本算进去。