我有一个奇怪且有些具体的路由问题。我想根据下一跳可用性更改路由/下一跳。
我的设置很奇怪,可能与最佳实践相差甚远。它看起来有点像这样:
+---------------+
| VPN Box 1 | VPN Net 1
+--------> 192.168.1.177+---------------------+
| | | |
| +---------------+ |
| | Remote site
+--------------+ | +v----------------+
| | | +--------------+ | |
| | | | VPN Box 2 | VPN Net 2 | VPN Router |
| Router +------+---------+ 192.168.1.178+--------------------> Terminates all |
| 192.168.1.1 | | | | | VPNs |
| | | +--------------+ | 192.168.32.0/24|
+--------------+ | | |
| | |
| | |
| +---------------+ | |
| | VPN Box 3 | VPN Net 3 +--^--------------+
+---------+ 192.168.1.179+----------------------+
+---------------+
我的192.168.1.1
路由器是基于Linux的,有如下路由:
192.168.32.0/24 via 192.168.1.179 dev eth1 metric 1
192.168.32.0/24 via 192.168.1.178 dev eth1 metric 2
192.168.32.0/24 via 192.168.1.177 dev eth1 metric 3
我希望我的路由根据 VPN 可用性进行更新。例如,如果 192.168.1.179 VPN 链接断开,我希望增加其度量,或者将其删除/禁用。
远程站点上的 VPN 路由器无法运行 OSPF/RIP/BGP。
是否有可能仅使用 iproute2/iptables/标准 GNU/Linux 实用程序来自动执行某些操作?
附言:我可能能够在 VPN Box 1 和 2 上安装 OSPF/RIP/BGP 守护程序,但我不确定这是否有帮助。
编辑:路由器上的脚本/程序192.168.1.1
ping VPN Net 1/2/3 的 VPN IP 并更改度量/删除路由是唯一/最简单/最佳的解决方案吗?
编辑2:PPS:我不介意连接跟踪和已建立连接的优雅故障转移。