父域的区域很大时,需要划分成子域来管理,
--配置文件的属组是named如果copy配置文件时需要更改属组的。
#vim /var/named/chroot/etc/ named.rfc1912.zones
zone "a.bj.com" IN { --指定本地域
type master;
file "a.bj.com.db";
allow-update { none; }; --不允许动态更新
};
#vim /var/named/chroot/etc/ a.bj.com.db
$TTL 86400
@ IN SOA ns.a.bj.com. root.126.com (
42 ; serial (d. adams )
–序列号,配置文件的修改版本,一般按年月日+序列号,定义为唯一的标示符。
3H ; refresh –更新周期(刷新频率)
15M ; retry –重试间隔
1W ; expiry –过期时间 (一周)
1D ) ; minimum –SOA记录的有效时间
IN NS ns.a.bj.com.
ns IN A 192.168.101.70
mail IN A 192.168.101.70
pop3 IN CNAME mail
--
linux 在父域的数据库文件中实现授权
[root@mail named]# vim bj.com.db
$TTL 86400
@ IN SOA ns.bj.com. root.126.com (
42 ; serial (d. adams )
–序列号,配置文件的修改版本,一般按年月日+序列号,定义为唯一的标示符。
3H ; refresh –更新周期(刷新频率)
15M ; retry –重试间隔
1W ; expiry –过期时间 (一周)
1D ) ; minimum
IN NS ns.bj.com.
ns IN A 192.168.101.70
mail IN A 192.168.101.70
a.bj.com. IN NS ns.a.bj.com.
ns.bj.a.com. IN A 192.168.101.70
pop3 IN CNAME mail
转发器
linux
无条件转发
#vim named.conf
option {
forwarders { 转发到的服务器地址; };
};
有条件转发
#vim named.rfc1912
zone "域名" IN {
type forward;
forwarders { 转发到的服务器地址; };
};
#rndc flush –清除linux的缓存
检测工具
named-checkconf dns服务器主配置文件的路径和名称
named-checkzone zone名称 该zone的数据库路径名称
[root@localhost etc]# named-checkconf named.conf
named.conf:15: '{' expected near 'listen-on'
[root@localhost etc]#
Named-checkzone zone_name 数据库存放的位置
[root@localhost etc]# named-checkzone yanzi.com /var/named/chroot/var/named/yanzi.zone
zone yanzi.com/IN: loaded serial 42
OK
[root@localhost etc]#
注:两种错误都可以通过查看日志文件同步查错
了解DNS服务器的运行情况下,可以通过查看DNS服务器在运行时所产生的日志文件来实现。在默认情况下,BIND是通过syslog来生成日志的,存放在/var/log/message文件中。由于这个文件中的日志信息是syslog生成的,所以不并是全都是关于BIND的日志信息。
1)#more /var/log/message |grep named >/tmp/named.log
2)建立单独存放named的文件存放日志
#mkdir /var/log/named
## chown named.named named
drwxr-xr-x 2 named named 4096 Sep 15 20:38 named
[root@mail ~]# vim /var/named/chroot/etc/named.conf
logging {
channel default_debug {
file "/var/log/named/dns.log";
severity dynamic;
};
[root@localhost named]# grep named /var/log/ named/dns.log
Aug 31 12:56:59 localhost named[5092]: loading configuration: permission denied
--named.conf文件在拷贝生成时候没有把所属组的权限一起拷贝 出现权限被限
[root@localhost etc]# pwd
/var/named/chroot/etc
[root@localhost etc]# chgrp named named.conf
[root@localhost etc]# ll
-rw-r----- 1 root named 1171 08-31 12:43 named.conf
--#不重新启动服务,可以使用重新加载配置文件的方法
#rndc reload
[root@localhost etc]# service named restart
Stopping named: [ OK ]
Starting named: [ OK ]
[root@localhost etc]#
DNS服务器的主要测试方法
使用nslookup、dig和host等专用工具可以对DNS服务器进行较全面的测试
nslookup命令在Linux和Windows系统中都默认安装,是比较常用的测试工具
进入nslookup命令交换环境、
# nslookup
>
设置使用指定的DNS服务器
> server 192.168.101.70
测试localhost主机域名的正向解析
> localhost
测试localhost主机域名的反向解析
> 127.0.0.1
测试互联网中的域名解析
> www.bj.com
测试bj.com域中的A记录
> ns.test.com
测试bj.com域中的PTR记录
> 192.168.101.70
测试bj.com域中的CNAME记录
> www.bj.com
测试bj.com域中的NS记录
> set type=ns (设置域名查询类型为NS即域名记录)
> bj.com
测试bj.com域中的MX记录
> set type=mx (设置域名查询类型为MX即邮件交换记录)
> bj.com
设置进行A记录的测试
> set type=a (设置域名查询类型为A即地址记录)
>mail.bj.com
(dig只运行在liunx平台,是domain information grep的缩写)
1)#dig --help
dig命令的格式
Usage: dig [@global-server] [domain] [q-type] [q-class] {q-opt}
{global-d-opt} host [@local-server] {local-d-opt}
[ host [@local-server] {local-d-opt} [...]]
Use "dig -h" (or "dig -h | more") for complete list of options
------dig方向查询时要加 -x
2)dig命令可以比nslookup命令显示更多的DNS服务器信息
# dig @192.168.101.70 bj.com (@后是被查询的DNS服务器的IP地址,bj.com域名做为命令参数)
#dig ns.mail.bj.com
#dig –t mx bj.com
#dig mail.bj.com
#host 192.168.101.70 --测试主机
#host mail.bj.com
#host ns.bj.com
1. nslookup
2. ping