跳到主要内容

3. 对 RFC 的更新

3.1. 对 RFC 1034 的更新​

本文档澄清 [RFC1034] 中可能存在的歧义, 该文档未明确区分空非终端 (Empty Non-Terminal, ENT) 名称 ([RFC7719]) 和不存在名称, 并引用了后续作出这种区分的文档. ENT 是 DNS 中没有关联资源记录集但有后代节点的节点. 对 ENT 的正确响应是 NODATA (即响应码为 NOERROR 且应答部分为空). [RFC2136] 的第 7.16 节以及 [RFC4592] 的第 2.2.2 节和第 2.2.3 节对这些要点提供了进一步澄清.

3.2. 对 RFC 2308 的更新​

[RFC2308] 第 5 节的第二段表述如下:

由名称错误 (NXDOMAIN) 产生的否定应答应被缓存, 以便可被检索, 并作为对同一 <QNAME, QCLASS> 的另一个查询的应答返回, 该 <QNAME, QCLASS> 曾导致被缓存的否定应答.

本文档将该段修订如下:

由 name error (NXDOMAIN) 产生的 negative answer 应被缓存, 以便可被检索, 并作为对同一 <QNAME, QCLASS> 的另一个 query 的响应返回, 该 <QNAME, QCLASS> 曾导致被缓存的 negative response, 或者在 QNAME 是原始 QNAME 的后代且 QCLASS 相同的情况下返回.

上文第 2 节详细说明了修订后的规则, 并规定了在何种情况下放宽或忽略该规则可能是合理的.