DNS配置及主从同步

Posted 运维讲堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DNS配置及主从同步相关的知识,希望对你有一定的参考价值。

一、DNS简介


二、DNS资源记录类型

CNAME记录:也是别名记录,用于定义A记录的别名

NS记录:用于标识区域的DNS服务器,即是说负责此DNS区域的权威名称服务器,用哪一台DNS服务器来解析该区域。一个区域有可能有多条ns记录,例如zz.com有可能有一个主服务器和多个辅助服务器。

SOA记录:用于一个区域的开始,SOA记录后的所有信息均是用于控制这个区域的,每个区域数据库文件都必须包括一个SOA记录,并且必须是其中的第一个资源记录,用以标识DNS服务器管理的起始位置,SOA说明能解析这个区域的dns服务器中哪个是主服务器。

MX记录:邮件交换器记录,用于告知邮件服务器进程将邮件发送到指定的另一台邮件服务器。(该服务器知道如何将邮件传送到最终目的地)。优先级:0-99,数字越小优先级越高

  TXT记录:TXT记录,一般指某个主机名或域名的说明

 

资源记录的定义格式

  语法:name [TTL] IN RR_TYPE  value

name:名称字段,此字段是资源记录引用的域对象名,可以是一台单独的主机也可以是整个域。字段值:"."是根域,@是默认域,即当前域。

TTL:生存时间字段,它以秒为单位定义该资源记录中的信息存放在DNS缓存中的时间长度。通常此字段值为空,表示采用SOA记录中的最小TTL(1小时)

IN:此字段用于将当前记录标识为一个INTERNETDNS资源记录。

RR_TYPE:类型字段,用于标识当前资源记录的类型。

value:用于描述资源的信息且长度可变的必要字段。


三、DNS安装

测试环境centos7.3 x86_64

3.1安装bind

yum -y install bind bind-utils

3.2设置rndc


rndc-confgen -r /dev/urandom –a

3.3修改named.conf配置文件


options {
        listen-on port 53 { 192.168.214.89; };
        //listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        forwarders      { };
        recursion no;
        version  none;

        dnssec-enable no;
        dnssec-validation no;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
   channel warning
      {
         file "log/dns_warnings" versions 3 size 20m;
         severity warning;
         print-category yes;
         print-severity yes;
         print-time yes;
      };
   channel general_dns
      {
         file "log/dns_logs" versions 3 size 20m;
         severity info;
         print-category yes;
         print-severity yes;
         print-time yes;
      };
   category default { warning; } ;
   category config { warning; } ;
   category queries { general_dns; } ;
};

controls {
        inet 127.0.0.1 port 953
        allow { 127.0.0.1; } keys { "rndc-key"; };
};

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

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
include "/etc/rndc.key";

3.4 修改rndc.key 权限


chown named.named /etc/rndc.key

3.5定义zone区域文件


vi /etc/named.rfc1912.zones
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "master/localhost.rev";
        allow-update { none; };
        notify no;
};

zone "opdevos.cn" IN {
      type master;
      file "master/opdevos.cn.zone";
      allow-update {none; };
};

3.6创建文件夹
mkdir /var/named/master
mkdir /var/named/log
chown named.named master log


3.7配置本地文件



 vi /var/named/master/localhost.rev
$TTL    3600

@       IN      SOA     ns1.opdevos.cn. root.opdevos.cn.  (
                                2018060701        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
        IN      NS      ns1.opdevos.cn.
1       IN      PTR     localhost.

3.8配置opdevos域
cat /var/named/master/opdevos.cn.zone

$TTL 3600
@       IN SOA  ns1.opdevos.cn support(
                                        2018060701      ; serial
                                        3600    ; refresh
                                        900     ; retry
                                        3600000 ; expire
                                        1800 )  ; minimum
        IN      NS      ns1.opdevos.cn.
        IN      TXT     "monitor"
ns1     IN      A       192.168.214.133
www     IN      A       192.168.214.254
patch   IN      A       192.168.214.1
cdnpatch        IN      CNAME   patch.opdevos.cn.
charles      IN      A       192.168.214.81

3.9启动named服务
systemctl start named

3.10重新加载配置
rndc reload


3.11测试


dig @192.168.214.89 charles.opdevos.cn a


在客户端上使用nslookup查询

nslookup -qt=TXT opdevos.cn 192.168.214.89

DNS配置及主从同步


3.12 查看统计信息

rndc stats
more /var/named/data/named_stats.txt

DNS配置及主从同步


四、DNS主从同步
这边设定192.168.214.89为DNS master,192.168.214.92为DNS SLAVE
修改主配置文件/etc/named.rfc1912.zones,添加允许从传输ip

zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "master/localhost.rev";
        #allow-update { none; };
        allow-transfer { 192.168.214.92; };
        notify no;
};

zone "opdevos.cn" IN {
      type master;
      file "master/opdevos.cn.zone";
      #allow-update {none; };
      allow-transfer { 192.168.214.92; };
};

在master的opdevos.cn.zone里添加slave相应的ns记录


vi /var/named/master/opdevos.cn.zone

$TTL 3600
@       IN SOA  ns1.opdevos.cn support(
                                        2018060702      ; serial
                                        3600    ; refresh
                                        900     ; retry
                                        3600000 ; expire
                                        1800 )  ; minimum
        IN      NS      ns1.opdevos.cn.
        IN      NS      ns2.opdevos.cn.
        IN      TXT     "monitor"
ns1     IN      A       192.168.214.89
ns2     IN      A       192.168.214.92
www     IN      A       192.168.214.254
patch   IN      A       192.168.214.1
cdnpatch        IN      CNAME   patch.opdevos.cn.
charles      IN      A       192.168.214.81


接下来我们来配置下slave 192.168.214.92

从的配置文件/etc/named.conf和主的一致

修改named.rfc1912.zones
[root@localhost slaves]# cat /etc/named.rfc1912.zones

zone "0.0.127.in-addr.arpa" IN {
        type slave;
        file "slaves/localhost.rev";
        #allow-update { none; };
        allow-transfer { none; };
        masters { 192.168.214.89; };
        #notify no;
};

zone "opdevos.cn" IN {
      type slave;
      file "slaves/opdevos.cn.zone";
      #allow-update {none; };
      allow-transfer { none; };
      masters { 192.168.214.89; };
};

分别重启master 192.168.214.89和slave 192.168.214.92的DNS服务

然后我们看下slave有没有同步主的配置文件过来
cd /var/named/slaves/
[root@localhost slaves]# ls -l
total 8
-rw-r--r-- 1 named named 238 Jun  7 15:10 localhost.rev
-rw-r--r-- 1 named named 512 Jun  7 14:22 opdevos.cn.zone
文件已经成功同步过来了,用dig测试一下

dig @192.168.214.92 opdevos.cn ns

DNS配置及主从同步


最后我们测试下,在master添加,修改下记录,从是否能正常同步
每修改一次记录serial后面的值加1,大家要养成习惯

[root@localhost named]# vi /var/named/master/opdevos.cn.zone
$TTL 3600
@       IN SOA  ns1.opdevos.cn support(
                                        2018060703      ; serial
                                        3600    ; refresh
                                        900     ; retry
                                        3600000 ; expire
                                        1800 )  ; minimum
        IN      NS      ns1.opdevos.cn.
        IN      NS      ns2.opdevos.cn.
        IN      TXT     "monitor"
ns1     IN      A       192.168.214.89
ns2     IN      A       192.168.214.92
www     IN      A       192.168.214.254
patch   IN      A       192.168.214.22
test   IN      A       192.168.214.33
cdnpatch        IN      CNAME   patch.opdevos.cn.
charles      IN      A       192.168.214.81

rndc reload重新加载配置

在从192.168.214.92上用dig再测试一下,看是否同步成功

OK,测试成功



以上是关于DNS配置及主从同步的主要内容,如果未能解决你的问题,请参考以下文章

RedHat 6配置DNS服务实现主从同步与正反向解析

DNS 主从同步配置

DNS服务器的基础应用及主从同步

+++++++DNS基本工作原理DNS正反向解析及主从同步

DNS域名解析服务(正向解析反向解析主从同步)

配置DNS主从同步