DNS 数据包是否可能包含多个 SOA 资源记录

DNS 数据包是否可能包含多个 SOA 资源记录

我读了RFC 1034RFC 1035了解 DNS 协议标准。我正在寻找 SOA 资源记录的限制。我知道 A、AAAA、CNAME、NS、MX、TXT RR 没有限制。SOA 怎么样?

答案1

每个区域只能有一个 SOA 记录。如果存在多个可能互相矛盾的 SOA 记录,那就没道理了。

RFC 1034第 20 页指出(重点是我自己加的):

虽然逻辑上是权威数据的一部分,但描述区域顶级节点的 RR 对区域管理尤其重要。这些 RR 有两种类型:列出区域所有服务器的名称服务器 RR(每个 RR 一个),以及单个 SOA RR描述区域管理参数。

RFC 1035甚至更加明确(第 35 页):

区域顶部应该只有一个 SOA RR。

编辑:正如评论中指出的那样,问题是关于 DNS 数据包,而不是区域文件。并且RFC 5936状态(第 11 页):

传输区域内容的 AXFR 响应将由一系列(长度为 1 的一系列)DNS 消息组成。在这样的一系列消息中,第一条消息必须以区域的 SOA 资源记录开头,最后一条消息必须以相同的 SOA 资源记录结尾。中间消息不得包含 SOA 资源记录。

因此,AXFR 传输将包括每个数据包的 SOA 记录。

相关内容