我有一个局域网上有三台路由器,一台连接到互联网,一台VPN路由器连接到一些远程站点,最后一个连接到专用networking(使用BGP获取前缀广告)。
在同一个局域网中,我有多台需要访问每台路由器后面networking的Linux服务器。 我已经通过在服务器上configuration静态路由来实现这一点,将不同的networking前缀指向正确的路由器。
这种方法运行良好,但每当我们连接到一个新的远程VPN时,我们都必须改变所有的服务器,以便知道networking现在可以通过VPN访问,而不是通过默认的Internet路由。
我想要的是在路由添加到路由器时,自动更新所有服务器上路由的方法。
现在,我可以在所有的服务器上安装Quagga或类似的东西来接收路由器广告,但这似乎是矫枉过正。 所以我的问题是什么是最简单/最简单的方式来自动更新服务器上的路由表,什么协议最适合这个目的。
谢谢
在所有路由器上configurationdynamic路由协议,并configuration服务器(以及其他主机)使用“主”路由器作为他们的DG。 然后,DG应该根据dynamic路由表中的条目处理将stream量redirect到适当的路由器。
这不是一个额外的跳跃,因为发往其中一个networking的stream量不会通过默认网关转发到该networking。 如果我没有弄错,默认网关应该向主机发出一个ICMPredirect,将主机指向所讨论networking的首选网关。 默认网关转发stream量的唯一时间是没有针对有问题的networking(外部networking)的路由,在这种情况下,它将转发给它的默认网关。
我的评论是基于假设,所有的路由器有一个接口连接到相同的局域网子网(如你的问题所暗示的)。
你可以切换第3层路由吗? 您可以在交换机上创build两个vlan,只需将交换机作为服务器上的默认路由,然后交换机就会有指向三台路由器的静态路由,甚至可以在交换机上使用dynamic路由协议(OSPF或EIGRP if思科)。 然而取决于你如何进行VPN连接,将这些路由重新分配给路由协议可能并不容易。 静态隧道不是那么好,在GRE / Ipsec上使用路由协议是一个更好的解决scheme,但并不总是一个选项。