BIND 配置DNS服务器以及子域授权

1、安装bind

     [root@www ~]# yum -y install bind

2、查看安装生成的文件      [root@www ~]# rpm -ql bind | less

3、程序路径     /var/named

4、配置文件路径    /etc/named.conf

          全局配置:options {}

          日志子系统配置:logging {}

          区域定义:本机能够为哪些zone进行解析,就是要定义哪些zone

                         zone "ZONE_NAME" IN {}

备份主配置文件   [root@www named]# cp /etc/named.conf{,.bak}

修改配置文件:

Image.png

   BIND  配置DNS服务器以及子域授权

然后启动该服务    service named start     查看监听端口    ss -tunlp | grep :53

关闭dnssec   注释掉即可

配置主DNS服务器

     1、在主配置文件中定义区域

               zone "ZONE_NAME" IN {

                         type {master|slave|hint|forward}

                         file “ZONE_NAME.zone”;

};

[root@www named]# vim /etc/named.rfc1912.zones

BIND  配置DNS服务器以及子域授权Image.png

     2、定义区域解析库文件

                    出现的内容: 宏定义   资源记录定义

vim /var/named/security00.com.zone

BIND  配置DNS服务器以及子域授权Image.png

[root@www named]# named-checkconf  //检查主配置文件是否有错

[root@www named]# named-checkzone "security00.com" /var/named/security00.com.zone   //检查指定的zone文件是否有语法错误

修改文件权限

[root@www named]# chmod 640 security00.com.zone

[root@www named]# chown :named security00.com.zone

[root@www named]# service named reload

[root@www named]# rndc status    //查看当前状态

使用dig命令来测试解析配置

[root@www named]# dig -t A www.security00.com @192.168.246.129  //使用本机来解析

测试命令:dig的使用

     dig [-t type] name [@SERVER] [query options]

     dig命令用来测试dns系统,因此,不会查询hosts文件进行解析

     查询选项:

                   +[no]trace:跟踪解析过程

                   +[no]recurse:进行递归解析

                    -x:测试反向解析

                    -axfr:测试区域传送

EXAMPLE: 

          [root@www named]# dig -t A www.security00.com +trace

     

     host命令:

          host [-t type] name [SERVER]

          example:  [root@www named]# host -t A www.security00.com 192.168.246.129

         nslookup命令:

               nslookup [-option] [name | -] [server]

     交互式模式:

          nslookup>

                    server IP:指明使用哪个DNS server进行查询

                    set q = RR_TYPE:指明查询的类型

                    NAME:要查询的名称

反向区域:

     

     区域名称:网络地址反写.in-addr.arpa.

                    192.168.246. –> 246.168.192.in-addr.arpa.

     (1) 定义区域

          zone "ZONE_NAME" IN {

                    type {master | slave | forward};

                    file "网络地址.zone";

}

[root@www named]# vim /etc/named.rfc1912.zones

BIND  配置DNS服务器以及子域授权Image.png

        (2) 区域解析库文件

               PS:不需要MX 和 A,以及AAA记录,以PTR记录为主

vim  /var/named/192.168.246.zone

BIND  配置DNS服务器以及子域授权Image.png

[root@www named]# named-checkconf  //检查主配置文件是否有错

[root@www named]# named-checkzone "246.168.192.in-addr.arpa" 192.168.246.zone   //检查指定的zone文件是否有语法错误

修改文件权限

[root@www named]# chmod 640 192.168.246.zone

[root@www named]# chown :named 192.168.246.zone

[root@www named]# service named reload

[root@www named]# rndc status    //查看当前状态

通过host来测试反向解析:

[root@www named]# host -t PTR 192.168.246.129 192.168.246.129

通过dig来进行反向解析测试:

[root@www named]# dig -x 192.168.246.131 @192.168.246.129

通过dig来测试区域传送漏洞:

[root@www named]# dig -t axfr security00.com @192.168.246.129

[root@www named]# dig -t axfr 246.168.192.in-addr.arpa @192.168.246.129

主从复制:

     1、应该为一台独立的名称服务器

     2、主服务器的区域解析库文件中必须有一条NS记录是指向从服务器

     3、从服务器只需要定义区域,无须提供解析库文件,解析库文件应该放置于/var/named/slaves/目录中

     4、主服务器应该允许从服务器作区域传送

     5、主从服务器时间应该同步,可通过ntp进行

     6、bind版本程序应该保持一致 否则 应该 从高 主低

     定义区域传送的方法:

          zone “ZONE_NAME” IN {

                   type slave;

                   masters { MASTER_IP; };

                   file "slaves/ZONE_NAME.zone";

              }; 

     一台独立的服务器,安装bind 然后修改配置文件!

     [root@www named]# vim /etc/named.rfc1912.zones

     BIND  配置DNS服务器以及子域授权Image.png

     测试配置文件是否有语法错误

     启动named服务

     rndc reload //重读配置文件

     rndc status  //查看当前状态

     BIND  配置DNS服务器以及子域授权Image.png

     配置反向:

     [root@www ~]# vim /etc/named.rfc1912.zones

     BIND  配置DNS服务器以及子域授权Image.png

     rndc reload  //重读配置文件

     

     PS:在主服务器在更改完资源库文件之后,记录数需要手动+1,否则从服务器不会同步!

     rndc: tcp/953

          reload: 重载主配置文件和区域解析库文件

          reload zone:只重载区域解析库文件

          retransfer zone:手动启动区域传送过程,不管序列号是否增加

          notify zone:重新对区域传送发通知

          reconfig:重载主配置文件

          querylog:开启/关闭查询日志     日志路径: /var/log/messages

          trace Level:指定debug的开启级别

子域授权 —–    分布式数据库

正向解析区域子域授权方法:

     

     定义一个子区域: 编辑区域配置文件    

                                 [root@www ~]# vim /var/named/security00.com.zone

                                   BIND  配置DNS服务器以及子域授权Image.png

 

另一台(192.168.246.130)服务器上编辑资源解析库文件:

                               [root@www ~]# vim /etc/named.rfc1912.zones

                          BIND  配置DNS服务器以及子域授权      Image.png

创建子域的的区域解析库文件:

          [root@www ~]# vim /var/named/test.security00.com.zone

                    Image.pngBIND  配置DNS服务器以及子域授权

执行  rndc reload 重新读取配置文件    

查看日志:  tail  /var/log/message

BIND  配置DNS服务器以及子域授权Image.png

本机查询,查看解析结果:

 Image.png    BIND  配置DNS服务器以及子域授权

定义转发服务器:

     PS:被转发的服务器需要能够为请求者做递归,否则,转发请求不予进行;

(1) 全局转发:凡是对本机所有负责解析的区域的请求,统统转发给指定的服务器

          Option {

                   forward {first | only}

                   forwarders

             }

编辑配置文件:     [root@www ~]# vim /etc/named.conf

                Image.png             BIND  配置DNS服务器以及子域授权

(2) 区域转发:仅转发对特定区域的请求至某服务器

              zone "ZONE_NAME" IN {

                         type forward;

                         forward {first | only}

                         forwarders

          }

编辑子域的区域资源库文件:     [root@www named]# vim /etc/named.rfc1912.zones

                       Image.pngBIND  配置DNS服务器以及子域授权

原创文章,作者:消逝文字,如若转载,请注明出处:http://www.178linux.com/13021

评论列表(2条)

  • stanley
    stanley 2016-03-22 10:43

    代码格式化后,配置现有的内容可以置顶推荐了~现在格式乱

    • 消逝文字
      消逝文字 2016-03-22 16:17

      @stanley嗯 谢谢 stanley 老师 下次会注意格式