我可以设置 CNAME 来指向单独域的 CNAME 吗?

我可以设置 CNAME 来指向单独域的 CNAME 吗?

我希望避免对我们正在使用的服务器的域进行更改。例如,现在我们需要指向:

www.oursite.com.    IN  CNAME   www.myserver.com.

但是我们用来托管网站的服务正在对其进行更改,因此我们必须将每个指向新域名的域名的 CNAME 更改为新域名:

www.oursite.com.    IN  CNAME   www.myserver-two.com.

由于我们必须对 100 多个域名进行此更改,因此我们希望在将来再次发生这种情况时能够保护自己。自行设置单个域名是否有效:

www.corpsite.com.  IN CNAME  www.myserver-two.com.

然后点全部我们其他域名的列表:

www.oursite.com.   IN CNAME  www.corpsite.com.

这样就www.oursite.com可以路由www.corpsite.com并最终到达正确的服务器www.myserver-two.com

编辑:

我们已经在其中一个域上尝试过此操作并且......出现可以正常工作,但我们无法 ping 通它(ping 超时)。因此我们不确定它是否只是“意外”工作,以及以这种方式操作可能存在哪些其他问题。

当我 ping 它时,会发生以下情况:

$ ping www.oursite.com
PING us-east-1-a.route.myserver-two.com (scrubbed): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3

我认为这无关 - 我相信我们正在使用的服务器正在丢弃 ICMP 数据包。

答案1

标准不鼓励这样的解决方案。

它可能适用于大多数 DNS 软件,但您的客户端可能会遇到一些不愿意连续跟踪多个 CNAME 的软件。在这种情况下,使用此类 DNS 解析器的客户端可能无法使用这些域名访问您的服务。

在 RFC1034 中:

RR 中指向另一个名称的域名应该始终指向主名称而不是别名。

当然,根据稳健性原则,域软件在出现 CNAME 链或循环时不应该失败;应该遵循 CNAME 链,并将 CNAME 循环表示为错误。

相关内容