Answers:
通常,您将显式配置DNS根服务器,类似于以下代码段:
zone "." {
type hint;
file "/etc/bind/db.root";
};
您观察到的区域类型不是常见的,master
也不slave
是称为的特殊区域类型hint
。
当名称服务器启动时,它仅使用根提示来查找响应的根名称服务器,然后从那里获取当前的根名称服务器列表。这些是在操作过程中将实际使用的根服务器。
由于这些已缓存,因此它们将需要一个TTL,并且正如您所观察到的:该TTL将像其他任何缓存的DNS记录一样减少。
如果未为类IN指定提示区域,则服务器将使用一组编译后的默认根服务器提示。来源:《绑定管理员参考手册》。
正如Brian在回答中解释的那样,根区域确实会更改,并且只要至少一个名称服务器保持有效,提示区域就可以在根名称服务器中进行此类更改,而无需所有现有的名称服务器更新其静态配置文件。
它们不是永久性的硬编码-根区域文件确实会随着时间而变化,因此传递到解析器的条目不能设置为永久保存。
例如目前一个是在2014年的文件开始最后更新显示在这里:
; This file holds the information on root name servers needed to
; initialize cache of Internet domain name servers
; (e.g. reference this file in the "cache . <file>"
; configuration file of BIND domain name servers).
;
; This file is made available by InterNIC
; under anonymous FTP as
; file /domain/named.cache
; on server FTP.INTERNIC.NET
; -OR- RS.INTERNIC.NET
;
; last update: November 05, 2014
; related version of root zone: 2014110501
;
; formerly NS.INTERNIC.NET
;
. 3600000 NS A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
A.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:ba3e::2:30