连接失败时切换 ISP(冗余互联网连接)

连接失败时切换 ISP(冗余互联网连接)

在编写自己的软件之前,我正在寻找管理冗余互联网连接的软件。我确信很多人已经编写了快速技巧来做到这一点,但是有很多奇怪的极端情况......

我们工作时有两个 Internet 连接,并且(不幸的是)没有足够的地址空间来运行 BGP,因此不幸的是我们只能使用次优的解决方案。无论如何,其中一个连接比另一个连接快得多,因此我们将它们用作主连接和备份连接。

目前,它们是通过运行手动切换的,例如ip rule del pref 2500(使用备份)或ip rule add pref 2500 from all lookup comcast(将其添加回来)。

不幸的是,确定连接是否断开的唯一方法是通过 ping 或类似方法 - 两者都使用外部调制解调器桥或调制解调器路由器,因此以太网链路保持正常状态。外部设备有时知道它已关闭,但并非总是如此(而且我认为它们不会以任何有用的方式公开这一点,例如发送 ICMP 无法访问或通过 SNMP。

  • 只需要添加/删除ip rule. NAT、fwmark等已经设置好并且运行良好。 (还有其他复杂性,包括 VPN 和通过 OSPF 进行内部动态路由,这使得让其他东西控制防火墙或路由表成为问题)。
  • 需要设置一个已配置的源(本地)IP 以进行 ping 等连接检查,这将使其发送到正确的 ISP。
  • 如果它可以 ping 几个 IP,其中一些 IP 比其他 IP 更频繁,那就太好了。例如,经常 ping 我们控制的主机来检查任何连接,很少会 ping 一些其他主机以最终捕获部分连接。
  • 如果可配置的丢包率也算作下降,那就太好了。特别是如果它可以比较两个链路(因此,例如,远端附近的损耗被抵消)。
  • 有一天我们可能会得到第三个链接(我们过去有过第三个)。如果也能使用两个备份链接那就太好了。

我知道网络 ISP 平衡,但它似乎想要控制防火墙并且只支持每个 ISP 一个 ping IP。

相关内容