如何从第二个ISP设置备份Internet连接?

我有一台运行Debian的Linux服务器,它充当networking的路由器/网关。
服务器有3个网卡,eth0是主ISP,eth1是备用ISP,eth2是networking。
是否有可能设置一个脚本或者什么东西来检查与主ISP的连接是否启动,如果不切换(并正确设置路由)到备份ISP?

请参阅Linux高级路由和stream量控制文档以获取“多个上行链路/提供商的路由”:

http://lartc.org/howto/lartc.rpdb.multiple-links.html

您可以阅读linux / bsd上的网关状态检查方法,它与您所要求的类似。
准确地回答你的问题。 通常有2个公共IP地址,一个在eth0上,另一个在eth1上。
您可以编写一个脚本,尝试ping isp1的默认网关(在eth0上),如果ping失败,则切换到eth1。 但是这只会在你的链路断开时(如DSL线路断开)切换,而不是在ISPnetworking中断,因为他的网关仍然会ping通。
所以你可能要做什么:

1.使用ISP1默认网关
2. Ping http://www.google.com或其他可靠的东西
3.用tcpdump 3检查eth0上的paquet。

如果1下来,你应该把默认的gatway改成ISP2的gatway IP。
如果1是好的,但2是Ko,可能是正确的谷歌,可能是ISP方面的一个中断,你可以尝试其他知名的服务yahoo.com,microsoft.com如果都是高你可能要切换到ISP2。 你可以在这里使用3来看看你是否仍然收到来自互联网的数据包。

根据你的发行版,你肯定有一些ifup / ifdown脚本在/ etc中,当接口出现时,它们被调用。 这也可以用来切换网关。 只有当你失去以太网链接时才会调用它们。

事实上,真正的互联网连接冗余只能通过使用BPG作为一个自治系统来实现 。 这样,您可以从任意数量的ISP获得任意数量的上行链路,这些链路将全部指向您的IP地址,这些IP地址将是您的,不是租用或租用的,而是您可以在任何地方使用的子网…

虽然获取ASN和build立BGP的话题不在原始问题的范围内,但我认为重要的是要提到。 如果您感兴趣,可以从以下指南开始:

https://www.auvik.com/media/blog/redundant-internet-connection-bgp/

在路由器上做这个怎么样?

Draytek 2910(以太网)和2820(ADSL)路由器支持两个WAN端口进行负载平衡和故障切换。 有点贵的3300路由器支持4个WAN端口。

JR

我们有一个充当网关的Linux服务器(运行Debian的Raspberry Pi)。 Linux服务器有2个互联网连接,为networking的其余部分运行DHCP服务和NAT。

它的主要互联网连接是通过网关192.168.3.1(一个4G USB存储棒),并且在192.168.1.1上有一个备用ADSL连接

该脚本testing网关192.168.3.1上的Internet连接,以查看其是否工作(通过ping 3级公共DNS服务器)。 如果Internet检查失败,则将所有stream量发送到备份网关192.168.1.1

它还会logging主连接无法通过/var/log/4glog.txtlogging的情况

#!/bin/bash /sbin/route add 209.244.0.3 gw 192.168.3.1 if ping -c1 209.244.0.3 ; then echo 4G Up /sbin/route del default gw 192.168.1.1 /sbin/route add default gw 192.168.3.1 else echo 4G Down echo `date` 4G Down >> /var/log/4glog.txt /sbin/route del default gw 192.168.3.1 /sbin/route add default gw 192.168.1.1 fi /sbin/route del 209.244.0.3 

从cron运行此脚本以自动保持网关访问Internet。