环境:red hat6.5

安装包:bind、bing-chroot

DNS配置文件:

    主配置文件:/var/named/chroot/etc/named.conf

    区域数据(解析记录)文件:/var/named/chroot/var/named/.. ..

| --> bind-chroot包

DNS查询方式:

    递归查询:

    迭代查询:


一:快速搭建一台DNS服务器

提供解析记录:

          svr5.tarena.com --> 192.168.4.5

          pc205.tarena.com --> 192.168.4.205

          win7pc.tarena.com --> 192.168.4.110


1. 服务器安装 bind、bind-chroot

[root@svr5 ~]# yum -y install bind bind-chroot


2. 配置服务器的 named.conf

[root@svr5 ~]# mv  /etc/named.conf  /etc/named.conf.origin 

 //移除默认配置

[root@svr5 ~]# cd /var/named/chroot/etc/

[root@svr5 etc]# vim  named.conf  //建立新配置

options  {  directory  "/var/named";  };

zone "tarena.com" IN {

        type master;

        file "tarena.com.zone";

};


3. 配置解析数据库(区域文件)

[root@svr5 ~]# cd /var/named/chroot/var/named/

[root@svr5 named]# vim  tarena.com.zone

$TTL   86400

@   IN   SOA   @    root.tarena.com.  (

    2014052201;更新序列号

    4H;刷新时间

    15M;重试间隔

    4H;超时时间

    1D;无效记录的生存时间

)

@       IN      NS    svr5.tarena.com.;本区域DNS服务器的主机名

svr5   IN      A       192.168.4.5  ;本区域DNS服务器的IP地址

pc205    IN      A       192.168.4.205 ;其他解析记录 。。。

win7pc    IN       A      192.168.4.110


[root@svr5 ~]# service named restart

[root@svr5 ~]# netstat -anptu | grep named


4. 客户机测试

[root@pc205 ~]# vim /etc/resolv.conf

search tarena.com

nameserver 192.168.4.5


[root@pc205 ~]# host svr5.tarena.com

svr5.tarena.com has address 192.168.4.5


[root@pc205 ~]# host win7station.tarena.com

tts6.tarena.com has address 192.168.4.110



 如何检查配置语法:

named-checkconf   主配置文件的路径


[root@svr5 ~]# named-checkconf /var/named/chroot/etc/named.conf

/var/named/chroot/etc/named.conf:6: '{' expected near '"'


named-checkzone   区域名    区域数据文件的路径 


[root@svr5 ~]# named-checkzone tarena.com /var/named/chroot/var/named/tarena.com.zone

zone tarena.com/IN: loaded serial 2014052201

OK



二:新增DNS区域 baidu.com

目标:www.baidu.com  --> 1.2.3.4

           baidu.com --> 1.2.3.4

          music.baidu.com --> 5.6.7.8


1. 修改主配置,添加一个zone区域

[root@svr5 ~]# cd /var/named/chroot/etc/

[root@svr5 etc]# vim  named.conf

.. ..

zone "baidu.com" IN {

        type master;

        file "baidu.com.zone";     };


2. 为新增的 baidu.com区域建立一个数据文件

[root@svr5 ~]# cd /var/named/chroot/var/named/

[root@svr5 named]# cp  tarena.com.zone  baidu.com.zone

[root@svr5 named]# vim baidu.com.zone

$TTL 86400

@ IN SOA @  root.baidu.com. (

     .. ..

@       IN      NS      svr5.tarena.com.

@       IN      A      1.2.3.4

www     IN      A       1.2.3.4

music   IN      A       5.6.7.8


3. 重启 named 服务

[root@svr5 ~]# service named restart


4. 客户机测试

[root@svr5 ~]# service named restart

[root@svr5 ~]# host  baidu.com

[root@svr5 ~]# host  www.baidu.com

[root@svr5 ~]# host  music.baidu.com



三:添加反向解析区域

目标:192.168.4.100 --> www.tarena.com

          192.168.4.205 --> pc205.tarena.com


1. 修改主配置文件,添加

[root@svr5 ~]# cd /var/named/chroot/etc/

[root@svr5 etc]# vim  named.conf

.. ..

zone "4.168.192.in-addr.arpa" IN {

        type master;

        file "192.168.4.arpa";

};


2. 建立反向区域的解析文件

[root@svr5 ~]# cd /var/named/chroot/var/named/

[root@svr5 named]# cp tarena.com.zone 192.168.4.arpa

[root@svr5 named]# vim 192.168.4.arpa

.. ..

100       IN      PTR     www.tarena.com.

205       IN      PTR     pc205.tarena.com.

.. ..


3. 重启named服务

[root@svr5 ~]# service named restart


4. 客户端测试

[root@svr5 ~]# host 192.168.4.100

[root@svr5 ~]# host 192.168.4.205


四:基于DNS的站点轮询(负载均衡)

目标:www.tarena.com 

          -->192.168.4.100、192.168.4.110、192.168.4.120、……


[root@svr5 ~]# cd  /var/named/chroot/var/named/

[root@svr5 ~]# vim  tarena.com.zone

.. ..

www     IN      A       192.168.4.100

www     IN      A       192.168.4.110

www     IN      A       192.168.4.120


[root@svr5 ~]# service  named  restart



五:泛域名解析

1)简化以下记录:

station1.baidu.com  --> 192.168.7.1

.. ..

station200.baidu.com  --> 192.168.7.200


2)识别未知域名:

bj.baidu.com  --> 119.75.217.56

sh.baidu.com  --> 119.75.217.56

.. .. baidu.com  --> 119.75.217.56



[root@svr5 ~]# cd  /var/named/chroot/var/named/

[root@svr5 ~]# vim baidu.com.zone

.. ..

$GENERATE  1-200  station$        IN      A       192.168.7.$

*       IN      A       119.75.217.56


[root@svr5 ~]#  service named restart



六:主-从DNS构建

其中任何一台DNS服务器,都能解析 tts7.tarena.com --> 118.45.29.31 ,

但是从服务器的解析记录应取决于主服务器,主更新时从自动同步


1. 建主DNS服务器

.. ..

1)改主配置文件

options {

        .. ..

        allow-transfer { 192.168.4.6;  };

};


2)改区域数据文件

@       IN      NS      svr5.tarena.com.

        IN      NS      svr6.tarena.com.

svr5    IN      A       192.168.4.5

svr6    IN      A       192.168.4.6

tts7    IN      A       118.45.29.31

.. ..


3)重启named服务

[root@svr5 ~]# service named restart


2. 建从DNS服务器

1)装包 bind、bind-chroot,移除默认的 /etc/named.conf 配置

2)建立 named.conf 主配置文件

options {

        directory "/var/named";

};

zone "tarena.com" IN {

        type slave;

        file "slaves/tarena.com.zone";

        masters { 192.168.4.5; };

};


3)重启named服务

[root@svr6 ~]# service named restart



3. 客户机查询测试


[root@pc205 ~]# nslookup  tts7.tarena.com  192.168.4.5

.. ..  

Name:   tts7.tarena.com

Address:   118.45.29.31


[root@pc205 ~]# nslookup  tts7.tarena.com  192.168.4.6

.. ..  

Name:   tts7.tarena.com

Address:   118.45.29.31



4. 主从更新测试

1)修改主DNS的区域记录

    tts7.tarena.com  --->  4.4.4.4

    将序列号+1

2. 重启主DNS的named服务

3. 向从DNS查询域名 tts7.tarena.com


[root@pc205 ~]# nslookup  tts7.tarena.com  192.168.4.6

.. ..  

Name:   tts7.tarena.com

Address:   4.4.4.4