这次把ZONE文件拿出来简单说明一下。ZONE文件是DNS上保存域名配置的文件,对BIND来说一个域名对应一个ZONE文件,现以abc.com的ZONE文件为例展开。罗嗦一句,该ZONE存在于权威DNS上。
$TTL 6h //第1行
$ORIGIN abc.com. //第2行
@ 3600 IN SOA ns1.ddd.com. root.ddd.com.( //第3行
929142851 ; Serial //第4行
1800 ; Refresh //第5行
600 ; Retry //第6行
2w ; Expire //第7行
300 ; Minimum //第8行
)
@ 2d IN NS ns1.ddd.com. //第9行
@ 2d IN NS ns2.ddd.com. //第10行
@ 2d IN NS ns3.ddd.com. //第11行
@ 3600 IN A 120.172.234.27 //第12行
a 3600 IN A 120.172.234.27 //第13行
b 3600 IN CNAME a.abc.com. //第14行
@ 3600 IN MX a.abc.com. //第15行
@ 3600 IN TXT "TXT" //第15行
第1行,这行内容给出了该域名(abc.com)各种记录的默认TTL值,这里为6小时。即如果该域名的记录没有特别定义TTL,则默认TTL为有效值。
第2行,这行内容标识出该ZONE文件是隶属那个域名的,这里为abc.com。
第3行,从这行开始到第8行为该域名的SOA记录部分,这里的@代表域名本身。ns1.ddd.com表示该域名的主权威DNS。root.ddd.com表示该主权威DNS管理员邮箱,等价于root@ddd.com。
第4行,Serial部分,这部分用来标记ZONE文件更新,如果发生更新则Serial要单增,否则MASTER不会通知SLAVE进行更新。
第5行,Refresh部分,这个标记SLAVE服务器多长时间主动(忽略MASTER的更新通知)向MASTER复核Serial是否有变,如有变则更新之。
第6行,Retry部分,如Refresh过程不能完成,重试的时间间隔。
第7行,Expire部分,如SLAVE无法与MASTER取得联系,SLAVE继续提供DNS服务的时间,这里为2W(两周时间)。Expire时间到期后SLAVE仍然无法联
系MASTER则停止工作,拒绝继续提供服务。Expire的实际意义在于它决定了MASTER服务器的最长下线时间(如MASTER迁移,DOWN机等)。
第8行,Minimum部分,这个部分定义了DNS对否定回答(NXDOMAIN即访问的记录在权威DNS上不存在)的缓存时间。
第9-11行,定义了该域名的3个权威DNS服务器。通常NS记录的TTL大些为宜,这里为2天。设置过小只会增加服务器无谓的负担,同时解析稳定性会
受影响。
第12-15行,比较简单,是两个A,CNAME,MX记录,不再讨论了。
名词解释:
SOA记录:权威记录从这里开始,它定义了3-8行这些重要的参数。
A记录:记录域名到IP之间的关联。
CAME记录:让张三住到李四家里,这时张三李四是同一个地址。
MX记录:定义了发往XXX@ABC.COM邮箱的邮件服务器地址。
TXT记录:这个记录的内容是文本格式如126.COM的TXT为"v=spf1 include:spf.163.com -all",TXT通常用于邮件服务器来标识自己的身份避免被认
为是垃圾邮件服务器。这里不再深入讨论。
其他不常用记录类型没有列出!