我们正在为我们的客户管理DNS区域,他们正在对.进行一些更改。管它呢,没关系。为客户做更改的顾问公司向我们发送了一份请求,要求在客户端的DNS区域中添加一组CNAME记录(以及SPF更改,我认为这些更改是针对DKIM的),所有这些CNAME记录别名都是一些不在我们DNS中的外部域。我们叫它hostx.externaldomain.com吧。
但是,对于要添加的三个CNAME记录,我们的DNS中已经有一个现有记录:
第一个是IP地址后面的实际网页,另外两个被委托给我们的负载均衡器,后者有A-记录等。我们的DNS拒绝添加这三条CNAME记录,因为现有的A和NS记录具有相同的名称,我想这是应该的。
然而,现在似乎每个人都不清楚如何从这里着手。如果我只是删除host1 A-记录并添加CNAME(别名指向不在DNS中的外部主机名),那么https://host1.example.com网站是否会停止应答呢?
在基本级别上,我理解如果别名也在我们的DNS中,CNAME和A将如何工作,例如:
我可以删除www -记录,并用:
这意味着www.example.com将只使用为example.com设置的相同的IP地址(带有A-记录)。
那么,这是否意味着,为CNAME别名所指向的外部主机名管理DNS的人,应该首先向他的DNS (hostx.externaldomain.com A (IP地址))添加一个A-记录,其中IP地址与我们的host1 IP地址所指向的地址相同),然后我才能删除我们的A-记录并用CNAME记录替换它?
然而,我也不确定这是如何工作的,因为hostx.externaldomain.com已经设置了一些IP地址集(刚刚与ping检查过),我不知道他们如何通过将一个A记录点设置为host1 IP地址来改变这一点……而且,所有其他CNAME记录,我们应该设置使用相同的别名。
发布于 2021-02-27 10:45:58
CNAME记录只能单独存在。您不能拥有这样的区域数据:
name A xx.xx.xx.xx
name CNAME othername一些特殊的记录可能与CNAME共存,以证明它是真实的。DNSSEC规范要求使用RRSIG和NSEC进行身份验证,这可以与CNAME共存,参见RFC 4034第3条和RFC 4034第4条。还有一些较旧的规范,RFC 2181,第10.1节、RFC 2535第2.3.5节,对于SIG、NXT和KEY记录也是如此。
所有终端应用程序数据都必须附加到RR,这是CNAME目标;请参阅第1034第3.6.2节 (原始DNS规范)。
some.name.tld CNAME rec.othername.tld
rec.othername.tld A xx.xx.xx.xx
rec.othername.tld TXT text-rr-data还要注意的是,CNAME标签不仅继承了A (地址),而且继承了目标标签的许多其他特性,特别是TXT。
这个(旧的) RFC还包含上述限制的更严格版本,该限制是为DNSSEC取消的:
如果节点上存在CNAME RR,则不应出现其他数据;这将确保规范名称及其别名的数据不会有所不同。
如果没有DNSSEC,这一更严格的限制仍然有效。
https://serverfault.com/questions/1055287
复制相似问题