是什么触发了使用负的 DNS SOA 记录值存活时间?

Ole*_*Ole 8 domain-name-system soa-record

我正在阅读以下dns 教程,其中包含以下示例:

domain.com.  IN SOA ns1.domain.com. admin.domain.com. (
                                        12083   ; serial number
                                        3h      ; refresh interval
                                        30m     ; retry interval
                                        3w      ; expiry period
                                        1h      ; negative TTL
)
Run Code Online (Sandbox Code Playgroud)

negative TTL值的描述是这样的:

1h:这是名称服务器在无法在此文件中找到请求名称时缓存名称错误的时间。

什么条件可以触发服务器缓存这样的名称错误?一个例子会非常有帮助。

And*_*w B 11

SOA当权威服务器指示请求的记录不存在时,负缓存间隔开始发挥作用。具体案例如下:

  • 回复一个响应代码NXDOMAIN
  • NODATA合成状态回复,但仅在存在SOA记录的情况下形成。( NOERRORrcode, 0 个答案, 1 个SOA记录在授权部分 + 可选NS记录)

服务器软件对此值强制执行本地配置的最大值是很常见的,因此即使您有一个86400不存在的负 TTL也不一定会被远程递归服务器缓存那么长时间。

如果您想进一步阅读这些案例,请参阅RFC 2308部分。阅读第 2 部分作为入门,然后阅读 5-6。