在linux上使用BIND建立DNS服务器(2)

来源:互联网 发布:卡密授权系统源码 编辑:程序博客网 时间:2024/06/04 17:39

     上面的例子中第一个区登记项用来通知BIND在何处定位根服务器的信息。服务器发送和接收的不仅是你自己的域信息同时也包括Internet上所有的域信息。并不是每个服务器上都有每个域名的登记项,但每个服务器都知道怎样获取信息。当然,由于列表会定期更新,所以也应当定期作记录。

     在named.conf示例文件中第二个区登记项是一个"主控"域项,意思是这个DNS服务器保存着example.com的有效信息, Internet上其他所有的DNS服务器都将用它来参照任何与这个域相关的信息。Example.com项引用/var/named/sample.com.zone这个文件。这是一个纯文本文件,它告诉DNS服务器所有有关example.com的信息,包括serial值、刷新率、所有的DNS纪录以及其他一些项目。表B显示了这个区数据库文件的示例。

DNS区数据库文件示例

@ IN SOA ns1.sample.com. (

200101111 ;serial

14400 ;refresh after 4 hours

3600 ;retry after 1 hour

604800 ;expire after 1 week

86400) ;minimum TTL of 1 day

;

;Nameservers

;

IN NS ns1.sample.com. ;

IN NS ns2.sample.com. ;

;

;Domain Mail Handlers

;

sample.com. IN MX 10 mail

;

;Hosts in order

;

www IN A 212.204.219.71

ftp IN A 212.204.219.71

mail IN A 212.204.219.71

pop IN CNAME mail

 

      SOA是Start of Authority的缩写,所有区文件都要以它打头。顺序号(serial)使服务器能够纪录所进行过的各次更新,守护进程最近一次启动后只要数字出现了增长,它就会重新把信息读入到数据库中去。举例来说,你可以从0开始然在每次更新之后加让一个数字,也可以使用日期项如200101111。这很有用,因为它让你能够看最近的一次更新的发生并且看出一天是否发生过多次更新。接下来的四行以秒的形式处理刷新和超时周期,如果BIND数据库没有发生过人工或者服务器范围的刷新,服务器会自动的重新读入信息。不需要经常改变此处所列出的数值,只有由于某种原因域非常频繁地改变它们的信息时才需要对这些数值进行更改。接着列出的是域名,这样BIND就会知道是谁控制整个域。

原创粉丝点击