RHEL5下DNS配置详解2

这一次主要是说的辅助DNS服务器的配置,在后面又说到了如何用RNDC控制一个正在运行的named进程,如果你有这方面的需求,那就看看吧
今天我们说说配置辅助DNS,也就是从DNS服务器。我们试验的具体环境如下:
我们首先安装 bind.i386软件包和caching-nameserver.i386 这样我们就少去很多麻烦,接着配置主配置文件,我的主服务器的主配置文件/etc/named.conf内容如下:
[root@db ~]# cat /etc/named.conf 
options {
directory "/var/named";
listen-on port 53 { 192.168.0.131; };
allow-query { 192.168.0.0/24; };
allow-notify { 192.168.0.12; };
notify yes ;
};

zone "." IN {
type hint;
file "named.ca";
};

zone "localhost" IN {
type master;
file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" {
type master;
file "named.local";
};

zone "0.168.192.in-addr.arpa" IN {
type master;
allow-update { none; };
file "0.168.192.in-addr.arpa.zone";
};


zone "example.com" IN {
type master;
allow-update { none; };
file "example.com.zone";
};

zone "movie.com" IN {
type master;
file "movie.com.zone";
};
在我们安装caching-nameserver.i386软件包时,已经有了named.ca localhost.zone和named.local等区文件了,这里就不需要配置了。我们只需配置 
0.168.192.in-addr.arpa.zone   example.com.zone和 movie.com.zone文件就行了。我的配置如下:
下面是/var/named/movie.com.zone配置文件的内容
下面是/var/named/0.168.192.in-addr.arpa.zone文件中的内容;
到这里我们的主服务器就配置好了。下面我们配置辅助DNS服务器,在配置之前先看看我们的基本配置是否完成了。

看来我们配置的还可以啊,下面我们看我们的软件包是否已经安装好了:
这也就是说我们的软件包也安装上了,别忘了安装caching-nameserver软件包,不过你也可以自己编辑,只是有点麻烦而已。
下面我们开始配置我们的主配置文件,我的配置如下:
 
我们就不需要在配置区文件了,因为有些是在安装caching-nameserver软件包时就自动生成了,有些可以从主服务器中同步过来。我们来检查一下语法是否有错误,重新启动服务器:
看来还不错,我们现在看看我们的区文件是否同步过来了:
[root@web ~]# ll /var/named/slaves/
total 12
-rw-r--r-- 1 named named 650 Sep 19 21:29 192.168.0.zone
-rw-r--r-- 1 named named 432 Sep 19 21:29 example.com.zone
-rw-r--r-- 1 named named 467 Sep 19 21:01 movie.com.zone
嗯 可以,那么我们就查询一下试试
查询成功了,我们换一台客户机查询一下:

也成功了,到这里我们的辅助服务器就建好了。
好了 试验才刚刚开始啊,那我们接着试验,下面我想说说使用RNDC控制一个正在运行的named进程的。
constrols语句规定了rndc如何控制一个正在运行的named进程,rndc可以启动和停止named,转储其状态,将其转入调试模式等。其语法如下:
controls {
         inet ip_addr port ip-port allow { address_match_list } keys{ key_list };
        }
如果没有出现port子句的指定端口,那么rndc与named通信的默认端口是953
在BIND9中,你可以使用rndc-confgen命令生成一个在rndc和named之间使用的验证密钥。设置他基本上有两种方法:你可以让named和rndc都参考同一个配置文件,以获得密钥(/etc/rndc.key)您也可以在每个程序各自的配置文件中告诉它密钥。第二种选择更为复杂,当时当named和rndc运行在不同的机器上时,就必须这么做。我是在一台机器上做得所以比较简单,我的配置如下:
首先使用rndc-confgen -b 256 命令将生成的密钥追加到/etc/rndc.conf,然后查看里面的内容
接下来我们将里面注释掉的内容复制到named的主配置文件/etc/named.conf中,并除去相应的注释

 
我们重新启动主服务器,并重新装入配置文件和区域:

我没有出现什么异常就成功了,也不知道会有什么问题,如果你有的话就提出来,我们一起讨论。下面我们在客户端看看能否正常解析

好了能正常解析到。
我们在主服务器上运行命令 rndc stop
再在客户端查询你会发现查询不到了。
# host 192.168.0.131
;; connection timed out; no servers could be reached
如果你重新启动服务器,再重新加载那就又可以了。
这个比较简单,我们就不多说了。




本文出自 “猎人部落” 博客,谢绝转载!

你可能感兴趣的:(职场,RHEL,休闲,rndc,辅助DNS)