主从DNS的配置:
bind.i386 #DNS服务器端包,用于提供bind服务
bind-sdb.i386 #用于将DNS的数据放到数据库里面,是DNS的一个驱动
bind-chroot.i386
yum install bind
caching-nameserver.i386 #可以简化用户配置DNS的过程
bind安装完配置文件一般有两个,/etc/named.conf #DNS主配置文件
/etc/rndc.key(或者rndc.conf) #bind的远程管理辅助工具
数据文件一般放在/var/named 下
vim /etc/named.conf 内容格式如下:
options {
directory "/var/named";
}; #全局
zone "." IN {
type hint;
file "named.ca";
}; #定义到“根” 的解析
zone "localhost" {
type master;
file "localhost.zone";
}; #定义自己到自己的正向解析
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
}; #定义自己IP地址到自己主机名的反向解析
以上是在配置DNS必须要写的内容,以下就是配置内容中的定义的三个文件的具体配置(named.ca和localhost.zone和named.local):
dig -t NS . > /var/named.ca #配置named.ca文件
vim /etc/localhost.zone 内容如下:
@ 600 IN SOA localhost. admin.localhost. (
2011081601
1H #从服务器每隔多久同步一次
10M
7D
1D ) #否定回答的TTL值
IN NS localhost.
localhost. IN A 127.0.0.1
......................................................................................
named.local文件如下:
cp localhost.zone named.local
vim named.local
@ 600 IN SOA localhost. admin.localhost. (
2011081601
1H #从服务器每隔多久同步一次
10M
7D
1D ) #否定回答的TTL值
IN NS localhost.
1 IN PTR localhost.
....................................................................................
以上三个文件建立完毕,但是要注意建完三个文件后要把他们的属组改为named!此时我们已经配好了一个基本的缓存名称解析服务器了
语法检查:
service named configtest #检查语法错误
named-checkconf #检查主配置文件错误
named-checkzone #检查区域文件语法错误(只检查语法错误,不检查逻辑错误) eg:named-checkzone “localhost” /var/named/localhost.zone
named-checkzone "0.0.127.in-addr.arpa" /var/named/named.local
service named start #启动服务
netstat -tunl | grep 53
测试我们的缓存服务器是否能用:
dig -t A
此时假如我们申请了一个域名a.org然后我们想用两台DNS做成主从服务器,那么我们应该如下写:
在named.conf里面加入:
zone "a.org" IN {
type master;
file "a.org.zone";
};
然后在/var/named下面建立文件a.org.zone 内容如下:
$TTL 1200
@ IN SOA ns1.a.org. admin.a.org. (
2011081601
1H
10M
7D
1D )
IN NS ns1.a.org.
IN NS ns2.a.org.
IN MX 10 mail.a.org.
ns1.a.org. IN A 172.16.100.1
ns2.a.org. IN A 172.16.100.2
mail.a.org. IN A 172.16.100.1
. IN A 172.16.100.3
bbs.a.org. IN CNAME .
. IN A 172.16.100.100
............................................文件建立OK
chown :named a.org.zone #更改属组
service named reload
host -t NS a.org #测a.org的NS的记录
host -t A a.org #测。。。A记录
dig -t A
.......................................
dig -t axfr a.org #把a.org的全部记录都显示出来
.......................................
下面是编辑a.org的反向解析记录:
同样是再/etc/named.conf中加入以下内容:
zone "16.172.in-addr.arpa" IN {
type master;
file "172.16.zone";
};
.......................................
同样编辑/var/named下文件172.16.zone 内容如下:
$TTL 1200
@ IN SOA ns1.a.org. admin.a.org. (
2011081601
1H
10M
7D
1D )
IN NS ns1.a.org.
IN NS ns2.a.org.
1.100 IN A ns1.a.org.
2.100 IN A ns2.a.org.
1.100 IN A mail.a.org.
100.100 IN A .
. IN A 172.16.100.100
......................................
named-checkzone "16.172.in-addr.arpa" /var/named/172.16.zone
service named restart
dig -x 172.16.100.2
正向反向都能解析使我们以后做邮件服务器所必须的
.......................................................主DNS服务器建立完毕
以下讲解rndc.conf(DNS的远程配置工具)文件:
rndc-confgen > /etc/rndc.conf #生成一个rndc.conf 文件
mv /etc/rcdc.key /etc/rcdc.key.bak #留着备以后用
rndc flush #清空服务器缓存
以下是如何测试DNS的响应能力:
ab : 对apache进行压力测试
yum install bind
主要是装queryperf 工具
..................................................
dig +recurs -t A #强行使DNS递归查询
dig +norecurs -t A #自己去查询(迭代查询)
dig +trace -t A #以追踪的方式显示解析过程
.....................................
以下是做从DNS服务器:
安装过程与主DNS相同,三个文件named.ca 和 localhost.zone和 named.local与主DNS相同
vim /etc/named.conf 增加以下内容:
zone "a.org" IN {
type slave;
file "slaves/a.org.zone";
master { 172.16.100.1; };
}; #一定要注意格式!!!
......................................
service named restart
tail /var/log/message #根据日志可以查看到正向数据被同步过来
vim /etc/named.conf 增加以下内容
zone "16.172.in-addr.arpa" IN {
type slave;
file "slaves/172.16.zone";
masters { 172.16.100.1; };
}; #注意格式
service named restart #重启服务
vim /var/named/slaves/172.16.zone文件是否同步了主DNS内容
dig -t A @127.0.0.1 #强行要求通过本机来解析
如果想明确指定只允许哪个主机或者哪个网段主机来同步(增加安全性):
zone "a.org" IN {
type master;
file "a.org.zone";
allow-transfer { 172.16.100.2; }; #只允许100.2主机来同步主DNS服务内容
};
allow-query
allow-rescursion
allow-query
recursion no;
区域类型:
master
slave
hint
forward