参见英文答案 >
Is a CNAME to CNAME chain allowed?3个
我想将自己与我们正在使用的服务器域的更改隔离开来.例如,现在我们需要指出:
我想将自己与我们正在使用的服务器域的更改隔离开来.例如,现在我们需要指出:
www.oursite.com. IN CNAME www.myserver.com.
但是我们用来托管网站的服务正在改变它,因此我们必须更改我们指向其新域的每个域的CNAME:
www.oursite.com. IN CNAME www.myserver-two.com.
由于我们有超过一百个域名,我们必须对此进行更改,因此我们希望将自己隔离,以防将来再次发生这种情况.自己设置单个域是否有效:
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数据包.
解决方法
标准不鼓励这样的解决方案.
它可能适用于大多数DNS软件,但您的客户可能会遇到一些不愿意连续跟踪多个CNAME的客户.在这种情况下,使用这种DNS解析器的客户可能无法使用这些域名访问您的服务.
在RFC1034中:
Domain names in RRs which point at another name should always point at
the primary name and not the alias.Of course,by the robustness principle,domain software should not fail when presented with CNAME chains or loops; CNAME chains should be followed and CNAME loops signalled as an error.