DNS服务器配置

     DNS就是域名系统,在网络上是通过ip地址的方式传输的,由于ip地址是由数字组成的,很容易将不同网站的ip地址弄混,所以就出现了域名,而在网络中时通过ip地址传输的,所以就有了DNS服务--将域名转换成网络上可以识别的ip地址。

    下面就在linux下对DNS服务进行安装配置

由于是在虚拟机下做的,所以先要挂载镜像文件

[root@localhost ~]# mkdir /mnt/ cdrom
mkdir: cannot create directory `/mnt/': File exists
[root@localhost ~]# mount -o loop /dev/cdrom /mnt/cdrom
 

挂载完后开始对DNS进行安装

[root@localhost ~]# cd /mnt/cdrom/Server
[root@localhost Server]# ll bind*
-r--r--r-- 64 root root 1001253 Jul 31  2009 bind-9.3.6-4.P1.el5.i386.rpm
-r--r--r-- 64 root root   44959 Jul 31  2009 bind-chroot-9.3.6-4.P1.el5.i386.rpm
-r--r--r-- 73 root root 2900989 Jul 31  2009 bind-devel-9.3.6-4.P1.el5.i386.rpm
-r--r--r-- 73 root root  450930 Jul 31  2009 bind-libbind-devel-9.3.6-4.P1.el5.i386.rpm
-r--r--r-- 76 root root  877241 Jul 31  2009 bind-libs-9.3.6-4.P1.el5.i386.rpm
-r--r--r-- 64 root root  233804 Jul 31  2009 bind-sdb-9.3.6-4.P1.el5.i386.rpm
-r--r--r-- 64 root root  173772 Jul 31  2009 bind-utils-9.3.6-4.P1.el5.i386.rpm
上面是有关DNS服务的rpm包,我们只安装前两个

[root@localhost Server]# rpm -ivh bind-9.3.6-4.P1.el5.i386.rpm
warning: bind-9.3.6-4.P1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:bind                   ########################################### [100%]
[root@localhost Server]# rpm -ivh bind-chroot-9.3.6-4.P1.el5.i386.rpm
warning: bind-chroot-9.3.6-4.P1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:bind-chroot            ########################################### [100%]
在安装完以上两种以后还可以安装一个caching-nameserver,这是一个bind配置文件例子

[root@localhost Server]# rpm -vih caching-nameserver-9.3.6-4.P1.el5.i386.rpm
warning: caching-nameserver-9.3.6-4.P1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:caching-nameserver     ########################################### [100%]
一切工作就绪,下面开始对DNS文件进行配如果没有使用chroot机制(也就是没安装bind-chroot-9.3.6-4.P1.e15.i386.rpm),默认的配置文件在/etc/named.conf下,如果安装了chroot机制,则在/var/named/chroot/etc下,只是名字不是named.conf.在etc下有一个名为named.caching-nameserver.conf的全局配置文件模板,将模板的内容复制到named.conf下便于以后进行配置。

[root@localhost Server]# cd /var/named/chroot/etc
[root@localhost etc]# ll
total 32
-rw-r--r-- 1 root root  2819 Sep 22 14:26 localtime
-rw-r----- 1 root named 1230 Jul 29  2009 named.caching-nameserver.conf
-rw-r----- 1 root named  955 Jul 29  2009 named.rfc1912.zones
-rw-r----- 1 root named  113 Oct 25 22:59 rndc.key
[root@localhost etc]# cp -p named.caching-nameserver.conf named.conf
需要注意的是复制的时候要加-p以保留原文件的权限。

进入全局配置文件

[root@localhost etc]# vi named.conf 

listen-on port 53 { 127.0.0.1; };允许所有的机器发送NDS请求
  allow-query     { localhost; };接受任何客户端发送DNS请求
 match-clients      { localhost; };指定view处理源和目标任意的查询请求
        match-destinations { localhost; };指定view处理源和目标任意的查询请求
将以上大括号内的地址全改为any。

复制主配置文件到named.cones,同时保留原文件的权限。

[root@localhost etc]# cp -p named.rfc1912.zones named.zones
对主配置文件进行配置

在主配置文件内创建正向查询区域和反向查询区域,在named.zones中添加以下内容

正向查询区域:zone "wang.com" IN {
        type master;说明区域类型为主要区域
        file "wang.com.db";指定正向区域配置文件名
        allow-update { none; };
};
反向查询区域:zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "1.168.192.local.db";
        allow-update { none; };
};
对两个查询区域进行配置,区域查询的配置文件的模板在/var/named/chroot/var/named下。

[root@localhost named]# cp -p named.zero wang.com.db
[root@localhost named]# cp -p named.local 1.168.192.local.db
进入正向查询区域配置文件

[root@localhost named]# vi wang.com.db对里面内容进行一下配置

$TTL    86400
@               IN SOA  ns.wang.com.      root. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
        IN      NS      ns.wang.com.
www     IN      A       192.168.1.6
mail    IN      A       192.168.1.7
进入反向查询区域配置文件

[root@localhost named]# vi 1.168.192.local.db 对里面内容进行一下配置
$TTL    86400
@       IN      SOA     ns.wang.com. root.localhost.  (
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum

@        IN      NS      ns.wang.com.
2       IN      PTR     www.wang.com.
3       IN      PTR     mail.wang.com.
退出,重启服务

至此DNS服务器配置完成

下面在linux下进行测试

[root@localhost ~]# nslookup www.wang.com
Server:         192.168.1.6
Address:        192.168.1.6#53

Name:   www.wang.com
Address: 192.168.1.6

[root@localhost ~]# nslookup 192.168.1.2
Server:         192.168.1.6
Address:        192.168.1.6#53

2.1.168.192.in-addr.arpa        name = www.wang.com.

正向反向都能解析,说明配置成功