1、正解文件资源记录
[root@localhost named]# dig xianglou.server.com
……
;; QUESTION SECTION:
;xianglou.server.com. IN A
;; ANSWER SECTION:
xianglou.server.com. 86400 IN A 192.168.73.186
;; AUTHORITY SECTION:
server.com. 86400 IN NS ns1.server.com.
;; ADDITIONAL SECTION:
ns1.server.com. 86400 IN A 192.168.73.186
上表中
[domain] [ttl] IN [RR Type] [RR data]
ttl 是 time to live 缩写,
RR , 正解文件的 RR 记录格式汇整如下,常见的正解文件 RR 相关信息:
[domain] IN [[RR type] [RR data]]
主机名. IN A IPv4 的 IP 地址
主机名. IN AAAA IPv6 的 IP 地址
领域名. IN NS NameServer 管理这个领域名的服务器主机名字.
领域名. IN SOA Start Of Authority 管理这个领域名的七个重要参数
1、Master DNS 服务器主机, :这个领域主要是哪部 DNS 作为 master 的意思。
2、管理员的 email , 要注意的是, 由于 @ 在数据库档案中是有特别意义的,因此这里就将 . 点符号
3、序号 (Serial) ,slave 判断是否主动从master下载新的数据库时,就以序号是否比 slave 上的还要新来判断,若是则下载,若不是则不下载。 所以当你修订了数据库内容时,记得要将这个数值放大才行! 为了方便用户记忆,通常序号都会使用日期格式『YYYYMMDDNU』来记忆,
4、更新频率 (Refresh):那么啥时 slave 会去向 master 要求数据更新的判断? 就是这个数值定义的。
5、失败重新尝试时间 (Retry):
6、失效时间 (Expire):如果一直失败尝试时间,持续联机到达这个设定值时限, 那么 slave 将不再继续尝试联机,
7、Minumum TTL (这个针对客户端 ,上面六个都 是针对服务器之间的)
领域名. IN MX 顺序数字 接收邮件的服务器主机名字
MX , Mail eXchanger (邮件交换) 的意思 ,
[root@localhost named]# dig -t mx 163.com
……
;; ANSWER SECTION:
163.com. 3113 IN MX 10 163mx01.mxmail.netease.com.
163.com. 3113 IN MX 10 163mx02.mxmail.netease.com.
163.com. 3113 IN MX 10 163mx03.mxmail.netease.com.
163.com. 3113 IN MX 50 163mx00.mxmail.netease.com.
;; AUTHORITY SECTION:
163.com. 71503 IN NS ns4.nease.net.
163.com. 71503 IN NS ns2.nease.net.
163.com. 71503 IN NS ns3.nease.net.
163.com. 71503 IN NS ns1.nease.net.
上头的意思 是,当有信件要送给 163.com这个域名时,则预先将信件传送给 163mx01.mxmail.netease.com. 这部邮件服务器管理
163mx01 之前的 10 是什么意思?由于担心邮件会遗失,因此较大型的企业会有多部这样的上层邮件服务器来预先收受信件。 那么到底哪部邮件主机会先收下呢?就以数字较小的那部优先。
主机别名. IN CNAME 实际代表这个主机别名的主机名字.
[root@localhost named]# cat /var/named/xianglou.server.com
$TTL 1D
@ IN SOA ns1.server.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns1.server.com.
ns1.server.com. A 192.168.73.186
www A 192.168.73.186
xianglou A 192.168.73.186
$TTL 为了简化每笔 RR 记录的设定,因此我们将 TTL 挪到最前面统一设定。因为鸟哥的 DNS 服务器还在测试中,所以 TTL 写了个比较小的数值,可以存在对方 DNS 服务器的快取 600 秒而已。
$ORIGIN 这个设定值可以重新指定 zone 的定义。在预设的情况下,这个正反解数据库档案中的 zone 是由 named.conf 所指定的,就是 zone 那个参数的功能。不过,这个 zone 是可以改的,就是用 $ORIGIN 来修订就是了。通常这个设定值不会用到的
--------------------------------
2、反解文件记录
主机名的追踪方式:
以 www.ksu.edu.tw. 来说,整个网域的概念来看, 越右边出现的名称代表网域越大!
举例来说,.(root) > tw > edu 以此类推。因此追踪时,是由大范围找到小范围
但是 IP 则不一样啊!以昆大的 120.114.100.101 来说好了,当然是 120 > 114 > 100 > 101 ,左边的网域最大! 与预设的 DNS 从右边向左边查询不一样啊!!那怎办?
为了解决这个问题,所以反解的 zone 就必须要将 IP 反过来写,而在结尾时加上 .in-addr.arpa. 的结尾字样即可
root@localhost named]# ping baidu.com
PING baidu.com (123.125.114.144)
……
[root@localhost named]# dig -x 123.125.114.144
;; QUESTION SECTION:
;144.114.125.123.in-addr.arpa. IN PTR
……
PTR :就是反解啊!所以是查询 IP 所对应的主机名
要注意的就是 zone 的名称了!要将 IP 反转过来写,并且结尾加上 .in-addr.arpa. 才行! 例如 120.114.100.0/24 这个 class C IP 网段的反解设定,就必须要写成: 100.114.120.in-addr.arpa. 这样的 zone 名称才行。 而 PTR 后面接的自然就是主机名。
在反解最重要的地方就是:后面的主机名尽量使用完整 FQDN,亦即加上小数点。
$TTL 1D
@ IN SOA ns1.server.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns1.server.com.
186 PTR ns1.server.com.
186 PTR server.com.
186 PTR www.server.com.
186 PTR xianglou.server.com.
3、Slave DNS 及子域授权设定
1)、master DNS 权限的开放
[root@localhost named]# vim /etc/named.conf
……
zone "server.com." {
type master;
file "/var/named/xianglou.server.com";
allow-transfer { 192.168.73.110; };
};
……
2)、在zone文件中增加 slave 主机名
[root@localhost named]# vim /var/named/xianglou.server.com
$TTL 1D
@ IN SOA ns1.server.com. rname.invalid. (
2012052302 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns1.server.com.
@ NS ns2.server.com.
ns1.server.com. A 192.168.73.186
server.com. A 192.168.73.186
www A 192.168.73.186
xianglou A 192.168.73.186
修改反解zone文件
[root@localhost named]# vim /var/named/server.192.168.73
$TTL 1D
@ IN SOA ns1.server.com. rname.invalid. (
2012052302 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns1.server.com.
@ NS ns2.server.com.
186 PTR ns1.server.com.
186 PTR server.com.
186 PTR www.server.com.
186 PTR xianglou.server.com.
要特别注意一件事,那就是,你的 zone file 内的序号要增加!
3)、Slave DNS 的设定与数据库权限问题
既然 Slave DNS 也是 DNS 服务器嘛!所以,当然也是需要安装 bind, bind-chroot 等等的软件!
named.conf 内容就是大同小异啰~ 唯一要注意的就是 zone type 类型的差异,以及宣告 master 在哪里就是了。 至于 file 部分,由于 zone file 都是从 master 取得的,通过 named 这个程序来主动建立起需要的 zone file,因此只要这个 zone file 放置的目录权限设置好就行了,文件无须主动建立。。
[root@clientlinux ~]# vim /etc/named.conf
……
zone "centos.vbird" IN {
type slave;
file "slaves/named.centos.vbird";
masters { 192.168.100.254; };
};
zone "100.168.192.in-addr.arpa" IN {
type slave;
file "slaves/named.192.168.100";
masters { 192.168.100.254; };
};
……