DNS 中 SOA 记录的目的(除了区域传输)

Sil*_*ler 6 domain-name-system

除了区域文件传输之外,DNS 区域文件中的 SOA 记录是否有任何用途?如果 DNS 服务器不依赖区域文件传输进行复制(而是依赖某个分布式后端数据库),那么是否还有任何理由拥有 SOA 记录?查看 DNS 查询日志,我什至从未见过客户端甚至请求 SOA 记录。

我想“主名称服务器”和“管理员”字段可能会有用,但通常主名称服务器是通过 NS 记录获得的。

Håk*_*ist 8

是的,SOA无论如何,记录都是有目的的。虽然SOA常规客户通常不会直接查询该记录,但它会以否定响应返回!

如果您要分析名称服务器的响应而不是传入的查询,我认为您会看到SOA更多记录。

但是,SOA如果不使用属于 DNS 规范一部分的区域传输方法,则记录的某些字段将不再相关。


如果我们看一下SOA记录的字段:

MNAME: 主域名服务器的名称。用于动态更新的上下文中,以及在某些情况下作为区域传输实现的一部分。

RNAME: 技术联系邮箱。系统本身并未真正使用,而是提供信息。

SERIAL:区域序列号,用于区域传输。

REFRESH:刷新间隔,用于区域传输。

RETRY:重试间隔,用于区域传输。

EXPIRE:过期间隔,用于区域传输。

MINIMUM: 曾经是最小 TTL,但现在用作否定响应的 TTL。


所以我们可以看到MNAMERNAME并且MINIMUM不是特定于区域传输规范的。

出于这一点,我想说否定响应在 DNS 中的工作方式SOA MINIMUM,尤其是该领域,是SOA无论如何实现区域同步都需要记录的主要原因。
因此,如果没有SOA在每个区域中的记录,您根本无法实现正常工作的权威名称服务器。