DNS BIND配置 配置基本缓存服务器 DNS正向解析 DNS反向解析

时间:2023-03-09 17:49:32
DNS BIND配置 配置基本缓存服务器 DNS正向解析 DNS反向解析

一. 缓存服务器配置

1.DNS:BIND
    Berkeley Internet Name Domain
    
版本bind97: RPM服务器端包的名字  安装bind-libs    bind-utils
    配置文件 /etc/named.conf
        BIND进程的工作属性
        区域的定义
     

rndc: Remote Name Domain Controller
        密钥文件 /etc/rndc.key
        配置信息:/etc/rndc.conf
        
    /var/named/
        存放区域数据文件

/etc/rc.d/init.d/named
        {start|stop|restart|status|reload}
        
    二进制程序:named

bind-chroot:     //一般不安装
    默认:named
        用户:named
        组:named
        
    /var/named/chroot/ 模拟root根目录,防止named进程被劫持,保障服务器安全
        etc/named.conf    主配置文件  options全局选项,对全局生效
        etc/rdnc.key
        sbin/named        
        var/named/    
            named.ca  存放根域dns相关信息
            named.loalhost  本地dns信息
            named.lookback  本地回环地址,反向解析

caching-nameserver                
缓存-->主-->从    先配置成缓存服务器,然后主服务器和从服务器

/etc/sbin/named-checkconfig    检查配置文件语法  
    /etc/sbin/name-checkzone       检查区域文件语法
    /etc/sbin/rndc                    远程控制文件
    
测试工具:
dig: Domain Information Gropher  到域名服务器查找相关信息,客户端工具,测试工具

-t   指定资源类型
    dig -t NS "."  查找根域的dns服务器信息
    dig -t NS .   @SERVER-NAME 到指定的服务器查找根信息

  dig -t NS mageedu.com  查询指定域的dns服务器

dig -x IP:           反向查询
    根据IP查找FQDN
host -t RT NAME: 查询名称的解析结果

nslookup:   交互式命令  windows也可以使用
nslookup>
        server IP  通过指定IP查询
          set q=RT   指定查询的资源记录类型
        NAME       指定名字      

DNS:
    监听的协议及端口:
        53/udp
        53/tcp
        953/tcp, rndc   remote  domain  control
        
        
2.缓存服务器文件配置
/etc/named.conf  配置文件语句必须以分号结尾,options是全局选项,花括号前面必须有空格

通用区域定义:
zone "ZONE NAME" IN {
    type {master|slave|hint|forward};   // 定义类型
    file  "对应的区域数据文件"         //相对于/etc/named.conf   options选项中directory的路径
};

例如主区域:

zone "." IN {                              // .  代表根
   type hint;          // 定义类型
   file "named.ca"    //相对于/etc/named.conf options选项中directory的路径
    };

      从区域:
      file "区域数据文件";
      masters { master1_ip;master2_IP };   指定主区域

缓存服务器文件配置

options {
directory "/var/named"; //区域文件存放的目录 }; zone "." IN { //定义根区域 type hint;
file "named.ca";
}; zone "127.0.0.1" IN { //定义本地区域 type master;
file "named.localhost"; // /var/named/named.localhost 文件可以自己创建命名 };
zone  "0.0.127-in-addr-arpa" IN {

        type   master;
file "named.loopback"; };
 

正向解析区域文件配置

$TTL 1D                                      //全局定义TTL,下面可省略  
@ IN SOA @ rname.invalid. (                      //“@” 可以代表主区域文件中的主区域名
; serial
1D ; refresh // ";"可以注释
1H ; retry
1W ; expire
3H ) ; minimum
NS @ //前面区域名不写自动继承上面的@
A 127.0.0.1

反向解析区域文件配置/var/named/named.loopback

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1
        PTR     localhost.
~                          

3.检查配置 
named-checkconf  检查配置文件语法

为了保证服务能正常运行需要关闭SELinux:

dig -t RT NAME @IP     //-t   RT 指定资源类型 NS MX A, NAME 区域名称  @IP通过指定IP查询

                                                                                              
[root@localhost named]# dig -t A www.baidu.com @127.0.0.1 //通过本地NS查询百度的A记录
; <<>> DiG 9.8.2rc1-RedHat-9.8.-0.17.rc1.el6_4. <<>> -t A www.baidu.com @127.0.0.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id:
;; flags: qr rd ra; QUERY: , ANSWER: , AUTHORITY: , ADDITIONAL: ;; QUESTION SECTION:
;www.baidu.com. IN A ;; ANSWER SECTION:
www.baidu.com. IN CNAME www.a.shifen.com.
www.a.shifen.com. IN A 111.13.100.91
www.a.shifen.com. IN A 111.13.100.92 ;; AUTHORITY SECTION:
a.shifen.com. IN NS ns3.a.shifen.com.
a.shifen.com. IN NS ns5.a.shifen.com.
a.shifen.com. IN NS ns1.a.shifen.com.
a.shifen.com. IN NS ns4.a.shifen.com.
a.shifen.com. IN NS ns2.a.shifen.com.

二.DNS正反向解析

1.解析要求

NS      192.168.136.135

www.test.com  192.168.136.135

www.test.com  192.168.136.136

mail.test.com   192.168.136.137

ftp   别名  www

2.配置区域文件/etc/named/named.conf添加下面配置

zone "test.com." IN {

type master;
file "test.com.conf";
};
zone "136.168.192.in-addr.arpa" IN {
        type  master;
        file  "136.168.192.zone"; };

3.配置正向区域数据文件

$TTL 

@  IN   SOA  ns1.test.com.  admin.test.com. (

        5D
5M
1H )
@ IN NS ns1
@ IN MX mail ns1 IN A 192.168.136.135
mail IN A 192.168.136.137 www IN A 192.168.136.136
www IN A 192.168.136.135
ftp IN CNAME www

4.配置反向区解析域数据文件

$TTL
@ IN SOA ns1.test.com. admin.test.com. ( //反向解析文件SOA除了区域不一样其他都一样 10D
5D
5M
1H )
IN NS ns1.test.com.                  // FQDN一定要写全称,邮件服务不需要反向NS IN PTR ns1.test.com.
IN PTR www.test.com.
IN PTR www.test.com.
IN PTR mail.test.com.

5.测试

正向

[root@localhost named]# dig -t NS test.com                       //测试NS记录

; <<>> DiG 9.8.2rc1-RedHat-9.8.-0.17.rc1.el6_4. <<>> -t NS test.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id:
;; flags: qr aa rd ra; QUERY: , ANSWER: , AUTHORITY: , ADDITIONAL: ;; QUESTION SECTION:
;test.com. IN NS ;; ANSWER SECTION:
test.com. IN NS ns1.test.com. ;; ADDITIONAL SECTION:
ns1.test.com. IN A 192.168.136.135 ;; Query time: msec
;; SERVER:
[root@localhost named]# dig -t A www.test.com              //测试www.test.com  的A记录

; <<>> DiG 9.8.2rc1-RedHat-9.8.-0.17.rc1.el6_4. <<>> -t A www.test.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id:
;; flags: qr aa rd ra; QUERY: , ANSWER: , AUTHORITY: , ADDITIONAL: ;; QUESTION SECTION:
;www.test.com. IN A ;; ANSWER SECTION:
www.test.com. IN A 192.168.136.135 //下一个请求会更换上下顺序,负载均衡
www.test.com. IN A 192.168.136.136 ;; AUTHORITY SECTION:
test.com. IN NS ns1.test.com.

反向

[root@localhost named]# dig -x 192.168.136.135    

; <<>> DiG 9.8.2rc1-RedHat-9.8.-0.17.rc1.el6_4. <<>> -x 192.168.136.135
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id:
;; flags: qr aa rd ra; QUERY: , ANSWER: , AUTHORITY: , ADDITIONAL: ;; QUESTION SECTION:
;135.136.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION:
135.136.168.192.in-addr.arpa. IN PTR www.test.com.
135.136.168.192.in-addr.arpa. IN PTR ns1.test.com. ;; AUTHORITY SECTION:
136.168.

注意:配置文件格式一定要写正确,名称也要写正确。