搭建DNS服务

一、yum install -y bind

cp /etc/named.conf /etc/named.conf.bak

> /etc/named.conf

vim /etc/named.conf 加入下面内容:

options {

   directory "/var/named";

};

zone "." IN  {

   type hint;

   file "named.ca";

};

zone "localhost" IN {

   type master;

   file "localhost.zone";

};

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

   type master;

   file "named.local";

};

     cd /var/named

     dig -t NS . > named.ca

vim named.local  加入下面内容:

$TTL 86400

@                    IN      SOA     localhost.  admin.localhost.      (

                                                                       2013081601

                                                                       1H

                                                                       10M

                                                                       7D

                                                                       1D

                                                                       )

@                    IN          NS          localhost.

1                    IN          PTR         localhost

vim localhost.zone  加入下面内容:

$TTL 86400

@                   IN      SOA     localhost.  admin.localhost.     (

                                                                       2013081601

                                                                       1H

                                                                       10M

                                                                       7D

                                                                       1D

                                                                          )

@                   IN          NS          localhost.

localhost.          IN          A           127.0.0.1

保存退出:wq

l检测配置是否有问题: named-checkconf

检测正解析: named-checkzone "localhost" /var/named/localhost.zone   //出现ok正确;

检测反解析: named-checkzone "0.0.127.in-addr.arpa" /var/named/named.local  //出现OK正确;

       rndc-confgen -r /dev/urandom -a  // 这一步是生成rndc.key,如果没有这个keynamd是启动不了的。

      chown named named/etc/rndc.key

      /etc/init.d/named start

首先测试正向解析:dig @127.0.0.1 localhost.

接着测试反解析:dig @127.0.0.1 -x 127.0.0.1

二、加入一个域名

我以abc.com这个域名为例

       vim /var/named/abc.com.zone  加入下面内容:

$TTL    600

@               IN      SOA     abc.com.      root.abc.com.    (

                                                       2013081601

                                                       1H

                                                       10M

                                                       7D

                                                       1D

)

                IN      NS      ns1.abc.com.

                IN      NS      ns2.abc.com.

                IN      MX  10  mail.abc.com.

ns1            IN      A       192.168.174.10

ns2            IN      A       192.168.174.11

www          IN      A       192.168.174.88

mail            IN      A       192.168.174.10

bbs            IN      CNAME   www.abc.com.

#vim /var/named/192.168.zone   加入下面内容(这个是反向解析):

$TTL 600

@               IN      SOA     ns1.abc.com.      root.abc.com. (

                                                       2013081601

                                                       1H

                                                       10M

                                                       7D

                                                       1D

)

@               IN      NS      ns1.abc.com.

               IN      NS      ns2.abc.com.

10              IN      PTR     ns1.abc.com.

11              IN      PTR     ns2.abc.com.

11              IN      PTR     mail.abc.com.

73              IN      PTR     www.abc.com.

修改  named.conf  配置文件:

      vim /etc/named.com  在最后面加入现在内容:

zone "abc.com" IN {

   type master;

   file "abc.com.zone";

};

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

   type master;

   file "192.168.zone";

};

l分别检测两个配置文件是否有问题:

lnamed-checkzone "abc.com" abc.com.zone  //出现OK正确;

lnamed-checkzone "174.168.192.in-addr.arpa" 192.168.zone   //出现OK正确;

l重启named服务,测试dig @127.0.0.1 www.abc.com

ldig @127.0.0.1 -x 192.168.137.11

三、配置DNS转发

vim  /etc/named.conf //options{} 里面增加

forward first;  

forwarders { 8.8.8.8; };

四、配置主

从dns主服务器上复制以下三个文件:

copy:/etc/named.conf  /var/named/localhost.zone /var/named/named.local

 vim /etc/named.conf 修改成下面的内容:

options {

   directory "/var/named";

};

zone "." IN  {

   type hint;

   file "named.ca";

};

zone "localhost" IN {

   type master;

   file "localhost.zone";

};

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

   type master;

   file "named.local";

};

zone "abc.com" IN {

   type slave;

   file "slaves/abc.com.zone";

   masters { 192.168.0.11; };   //这里的ip为主服务器的地址;

};

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

   type slave;

   file "slaves/192.168.zone";

   masters { 192.168.0.11; };    //这里的ip为主服务器的地址;

};

rndc-confgen -r /dev/urandom -a         //生成一个启动key;

chownnamed:named /etc/rndc.key

在从服务器启动上named:   /etc/init.d/named start

启动成功后会在/var/named/下生成一个slaves目录,这个目录下

有192.168.zone, abc.com.zone这两个文件,内容是和主上的一样的  //如果发现

  slaves目

录下没有

生成这两个文件,先查看named.conf里配置的主服务器的ip地址有没有错,然后再

   看selinux

有没有关

闭,如果还是不行,就把iptables关闭,(关闭方法:/etc/init.d/iptables 

  stop)或者也

可以用规

则开通53端中;

在从服务器上测试: dig @127.0.0.1 www.abc.com

测试主从同步

在主上修改abc.com.zone   一定要修改编号,必须往大的写

在从服务器上的named.conf 中,abc.com的zone中添加

notifyyes;

also-notify { 192.168.0.12; };

启动查看是否一样!