如何设置单个DNS条目以转到多个端点?

我有一个在远程位置有服务器的情况。 它连接到互联网(比如在ip 1.1.1.1上)可以是片状的,所以我们有一个不同的提供者(比如通过ip 2.2.2.2)的备份连接。 第一个提供商是更经济的方式,但是当它倒闭时,我们想通过第二个提供商连接到那个服务器,他们将为带宽使用收费。 第二个提供者更可靠,但更昂贵。

我需要一个DNS入口到远程服务器,通常指向1.1.1.1,但是当连接不好时,或者以其他方式将城市中的客户端引导到该远程服务器,可以更改为2.2.2.2通过可靠和不可见的方式连接到客户端。

我该如何解决这个问题?

它似乎可以在DNS级别解决,但不是我知道的任何技术。 还有什么可以工作?

我需要有一个通向1.1.1.1的远程服务器的DNS条目,但是如果连接不好,可以改为2.2.2.2。

不,你需要的是把两个连接连接在一起的方法。 但是,这是一个入站链路聚合系统,由每个ISP的BGP路由处理。 我不知道有一种权衡的手段,但我不是一个绝对的专家在这个确切的计划。 如果你在广告BGP路由方面得到一些有关广告BGP路由器的绕圈,那么让你有一个本质上在两个连接之间浮动的IP地址就不足为奇了。

这不是DNS可以解决的问题(简单或可靠*)。 设DNS为DNS,这是一个简单的键值对信息存储和检索系统。 而在你问之前, 循环法也不会帮助你。 =)

好吧,好的,你可以做一些事情,使用DNS模仿入站链接平衡。 这是邪恶的,包含传播延迟作为您的SLA的一部分,也依靠DNSpipe理员不会混淆您的logging的TTL值,这不是一个安全的赌注。 我甚至不会在这里解释DNS故障转移(或者我指的是“DNS fauxover”),因为我不认为它是特别可靠的/专业的,但我会链接到它,如果链接死未来,没有伤害,因为…这是邪恶的。 不要说我不警告你。

为此服务创build一个主机名。 有一个指向1.1.1.1的主机名的Alogging。 创build一个指定非常短的TTL,刷新和过期时间的SOAlogging,以便快速获取对Alogging的更改。

监视主链路,如果发生故障,请发布指向2.2.2.2的新Alogging。

作为此解决scheme的更高级版本,请使用监视工具来观察这两个链接,并根据服务器稳定性自动交换相应的DNSlogging。

这是如何工作的,取决于DNS服务器中使用的技术栈,但是如果您在Unix或Linux服务器上运行DNS,则可以使用像Nagios这样的监视工具根据监视脚本的结果交换区域文件。

我的build议是自动DNS故障转移。 通过这种方式,您可以发送您想要发送的数据中心的stream量,如果出于任何原因(networking问题或硬件故障),您将自动故障转移到其他数据中心。 您可以看到http://www.dnsmadeeasy.com/services/dns-failover-system-monitoring/为例。

您始终可以执行DNS故障转移,但实际上您应该做的是某种下游负载平衡。 故障转移是有风险的,而不是真正的DNSdevise。 新地址传播时会有一定的停机时间。 你必须有一个服务器,只是闲置。

如果您已经实现了某种负载均衡,那么两台服务器都可以提供stream量,如果有一台服务器出现故障,stream量将自动转到另一台。