我想知道是否可以将一个主机分配给多个 IP 地址:
MediaGrid IN A 192.168.0.1
IN A 192.168.0.2
IN A 192.168.0.3
IN A 192.168.0.4
如果该主机没有应答,则查找列出的下一个 IP。我对 rrset-order 有一些想法,但我认为它只能起到某种负载平衡的作用。
答案1
不。
多个A
地址记录(实际上是多个任何DNS 中的记录类型)被解释为“循环赛”情况。并且通常没有办法保证特定的顺序或轮换地址——您的解析器为您挑选的 IP 就是将被使用的 IP。
你可能在您自己的代码中实现一个搜索组(执行 DNS 查找,收集所有地址,然后自己搜索它们),但是库存 DNS 和标准解析器不会为您执行此操作,因此您不能将其用作网站的故障转移方案(作为示例)。
如果您想要适当的故障转移,您真正需要的是负载平衡器(或共享单个虚拟 IP 的冗余负载平衡器对),以确保在向后端主机发送请求之前后端主机已启动并正常工作。但这远远超出了 DNS 的范围。