DNS服务搭建(3)

发布时间:2019-07-07 16:27:11编辑:auto阅读(1801)

    ★配置DNS转发

      我之前配置的DNS服务只能解析我定义过的zone,而没有定义的zone是不能解析的,因此存在着很大的弊端。但是配置了DNS转发之后,就可以顺利解析互联网上了其他域名了,当然,解析此域名的前提是这个域名在互联网中确实存在并且正在使用,也就是说这个域名已经被某个DNS服务器解析了。

      我们可以先试一下

    [root@yue named]#  dig @127.0.0.1 www.qq.com

    ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.1 <<>> @127.0.0.1 www.qq.com
    ; (1 server found)
    ;; global options: +cmd
    ;; connection timed out; no servers could be reached    <== 不能解析

      接下来开始配置DNS转发

    • 编辑主配置文件 /etc/named.conf

        在options{}中加入下面的内容:

        forward first;
        forwarders { 8.8.8.8; };

        这两行的内容就是用来配置DNS转发的,我们配置的DNS服务器不能解析的域名会转发到8.8.8.8这个DNS服务器上去解析。

    • 我们测试一下

      重启named服务

      在此解析www.qq.com

    [root@yue named]#  dig @127.0.0.1 www.qq.com

    ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.1 <<>> @127.0.0.1 www.qq.com
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28726
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

    ;; QUESTION SECTION:
    ;www.qq.com.            IN    A

    ;; ANSWER SECTION:
    www.qq.com.        299    IN    A    119.188.89.220
    www.qq.com.        299    IN    A    119.188.89.202

    ;; Query time: 2166 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Wed Feb  4 07:07:14 2015               <== 现在可以成功解析了

    ;; MSG SIZE  rcvd: 60           

    ★配置主从

    • 我们再开一台虚拟机作为从,并安装bind

    • 我们要将主上的三个配置文件/etc/named.conf, /var/named/localhost.zone, /var/named/named.local 拷贝到从上去。我们需要先安装scp命令:yum install -y openssh-clients


        注意:我们要在两台虚拟机上都安装scp命令才可以正常传输,否则会报错。

        scp /etc/named.conf 192.168.16.106:/etc/

        scp /var/named/localhost.zone /var/named/named.local 192.168.16.106:/var/named/

    • 在从上修改一下拷贝过来的/etc/named.conf文件

      options {
          directory "/var/named";               <== 可以把之前做DNS转发时添加的内容删去
      };
                                                  如果从上删去了,主要也要相应改动

      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 "hera.com" IN {                       <== 标粗的部分为要改动的内容
          type
      slave;                           <== 设置为从
          file "slaves/hera.com.zone";        <== 我们之前拷贝时并没有拷贝hera相关文件,

                                                     在从上可以自动生成
          masters { 192.168.16.100; };         <== 主的ip
      };

      zone "16.168.192.in-addr.arpa" IN {
          type slave;
          file "slaves/192.168.zone";
          masters { 192.168.16.100; };

    • 在从上生成rndc.key:

      rndc-confgen -r /dev/urandom -a

    • 更改key的属组:

      chown named:named /etc/rndc.key

    • 在从上启动named服务:

      /etc/init.d/named start

    • 启动成功后会在 /var/named/下生成一个slaves目录,这个目录下会有192.168.zone, hera.com.zone这两个文件,内容是和主上的一样的

      [root@yue etc]# ls !$/slaves
      ls /var/named/slaves
      192.168.zone  hera.com.zone

    • 在从上进行测试:

      [root@yue etc]# dig @127.0.0.1 www.hera.com

      ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.1 <<>> @127.0.0.1 www.hera.com
      ; (1 server found)
      ;; global options: +cmd
      ;; Got answer:
      ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26741
      ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

      ;; QUESTION SECTION:
      ;www.hera.com.            IN    A

      ;; ANSWER SECTION:
      www.hera.com.        600    IN    A    192.168.16.100

      ;; AUTHORITY SECTION:
      hera.com.        600    IN    NS    ns.hera.com.

      ;; ADDITIONAL SECTION:
      ns.hera.com.        600    IN    A    192.168.16.100

      ;; Query time: 1 msec
      ;; SERVER: 127.0.0.1#53(127.0.0.1)
      ;; WHEN: Thu Feb  5 01:07:57 2015
      ;; MSG SIZE  rcvd: 79

    ★测试主从同步

    • 修改主上的配置文件(/var/named/hera.com.zone)后要改一下第三行的数字串,而且这个数字串只能改大不能改小,只有这个数字变化了,才可以让从自动跟着变化

    • 编辑配置文件 vim /var/named/hera.com.zone

      在最后添加一行内容,并修改第三行的数字串2015020401

      test             IN      A        1.1.1.1

    • 重启named服务:/etc/init.d/named restart

    • 通过测试我们发现从同步主上的数据更改会有延迟,我测试的时候即使重启了从上的named服务hera.com.zone文件中还是没有及时显示我们之前添加的test

    • 为了避免从同步的特别慢,我们可以在主上做一个特殊操作

      编辑主上的/etc/named.conf 文件,在hera.com的zone中加入下面两行内容

      notify yes;                       <== 此两行内容的作用相当于主把做的相关改动主动推送
      also-notify { 192.168.16.106; };        到从上去

    • 这时候我们再进行测试,会发现从这时候从同步的很快了


    dnspod



关键字