A-Record故障切换?

我有一台FortiGate 100D,带有2x BT业务无限光纤连接,作为WAN1和WAN2。

BT线路每个都带有5个静态公共IP地址,而且我通过CloudFlare托pipe了我的DNS,指向一个WAN连接上的静态IP。

(假设您在mylesgray.com上执行nslookup,您将看到217.45.201.1作为公共IP)。

我们希望我们的Alogging(托pipe网站,VPN,SSH等)的冗余,但显然,2条BT线路有2个不同的公共IP集,所以如果WAN1瘫痪,我们死在水中 – 没有故障转移,因为地址是静态的。

我查了外部的DNS故障转移,但似乎凌乱,对我来说是非常错误(循环赛惹恼了我)。 然后Anycast作为一个选项出现,但是,Anycast似乎需要和整个/ 24块或在一些ISP的casts / 22。 我们正在运行一个企业级的路由器,所以使用BGP等是没有问题的。

任何人都可以阐明如何实现故障转移的DNS A – logging购买一个/ 22的IP块或使用循环的DNS?

只是几个注意事项:Anycast并不真正提供Alogging故障转移。 你提到“外部DNS故障转移”和roundrobin – 这些都不是一回事。 Roundrobin具有相同主机名的多个Alogging。 当链路断开时,DNS故障切换会将单个Alogging更改为不同的IP地址,理想情况下,链路恢复时将其更改回来。

正如Lukas所提到的,由于他提到的原因,DNS故障切换通常不是最好的方式。 它对大多数用户都有效,但是由于caching和DNS服务器的延迟而忽略了TTL,这将影响故障转移到备用IP地址的时间。

如果你想继续这样的路,有各种各样的第三方DNS服务(DNSMadeEasy,亚马逊路线53,许多其他)提供这项服务。 一些链接平衡器(PepLink,Baraccuda)也可以做一个DNS故障转移的变体,如果他们充当你的DNS服务器的话。 根据您的环境,还可以编写一个自定义脚本来检查链接的状态,并根据需要更新IP地址。

除非您拥有并pipe理您自己的ASN和IP地址块,否则BGP不会为您提供任何帮助。 理想的解决scheme是将您自己的IP块和ASN应用到您的本地区域互联网注册pipe理机构(RIPE / ARIN / etc),并运行您自己的路由器以将相应路由通告给相应的链接。

有些pipe理员对DNSlogging进行故障转移被认为是不好的做法,因为:

  • DNSlogging具有生存时间,您必须在性能 (高TTL =长caching)和更新行为 (低TTL =更快传播更快)之间进行平衡。

  • 一些DNS客户端和recursion服务器(如ISP的)往往完全忽略TTL值或设置自己的。

  • AFAIK,CF的最低TTL是5分钟(免费帐户,至less)。

我不是自己使用BT服务,但是可以select在两个上行链路之间移动IP地址吗? 不过,我不确定如何使用您的设置完成此操作。

由于您不害怕运行BGP,您应该与BT交谈,看看您是否可以通过BGP向他们公布您的公共IP地址,从而实现Internet与路由器之间的dynamic路由。 您的服务器将只有一个IP,通过一个或另一个pipe道路由。

因此,不需要任何公共AS或甚至是/ 24,因为您将使用将在其networking中聚合的BT IP空间。

不过,他们可能会以“业务无限”报价支持BGP选项,所以你也可以看看BT的租用线路 ,以升级现有的链接。

他们确实提供 BGP4的“ 弹性 ”包。 然而,成本可能不会与“业务无限”相同。