14.3.2 根服务器文件named.root

14.3.2 根服务器文件named.root

在主配置文件/etc/named.conf中,定义了一个根域,区文件是/var/named目录下的named.root文件。它是一个非常重要的文件,包含了Internet根服务器的名字和IP地址。当Bind接到客户端的查询请求时,如果本地不能解释,也不能在Cache中找到相应的数据,就会通过根服务器进行逐级查询。

例如,当服务器收到DNS客户机的一个查询请求,要求查询一个不在本域的www.example.com域名时,如果Cache里没有相应的数据,DNS服务器就会向named.root文件中列出的Internet根服务器请求,然后根服务器将查询交给负责域.com的授权名称服务器,域.com授权名称服务器再将请求交给负责域example.com的授权名称服务器进行查询,最后再把结果返回给客户机。

由于Internet根服务器的地址经常会发生变化,因此named.root也应该要随之更新。最新的根服务器列表可以从ftp://ftp.rs.internic.net/domain/下载,文件名也是named.root,它包含了国际互联网络信息中心(InterNIC)提供的最新数据。另外,也可以用Bind提供的命令dig列出最新的根服务器,命令如下:

 

# dig

 

; <<>> DiG 9.3.3rc2 <<>>

;; global options: printcmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46053

;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 15

 

;; QUESTION SECTION:

;.                             IN     NS

 

;; ANSWER SECTION:

.                      459744 IN     NS     F.ROOT-SERVERS.NET.

.                      459744 IN     NS     M.ROOT-SERVERS.NET.

.                      459744 IN     NS     I.ROOT-SERVERS.NET.

.                      459744 IN     NS     E.ROOT-SERVERS.NET.

.                      459744 IN     NS     D.ROOT-SERVERS.NET.

 

;; ADDITIONAL SECTION:

M.ROOT-SERVERS.NET.    546144 IN     A      202.12.27.33

J.ROOT-SERVERS.NET.    546144 IN     A      192.58.128.30

C.ROOT-SERVERS.NET.    546144 IN     A      192.33.4.12

A.ROOT-SERVERS.NET.    546144 IN     A      198.41.0.4

I.ROOT-SERVERS.NET.    546144 IN     A      192.36.148.17

 

;; Query time: 2 msec

;; SERVER: 10.10.1.2#53(10.10.1.2)

;; WHEN: Tue Nov 18 16:48:23 2008

;; MSG SIZE rcvd: 492

 

以上列出的就是Internet根服务器的IP地址,如果使用以下命令,可以把这些内容存到named.root文件中,这个文件就可以做为主配置文件中指定的根域的区文件。

 

dig > /etc/named/named.root


版权声明:本文为Linuxdianc原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。