LINUX中DNS服务器反向解析

文章目录

  • 一,配置DNS 反向解析
    • 1.1 主配置文件设置
    • 1.2 修改区域配置文件,添加反向区域配置
    • 1.3 修改反向区域数据文件
    • 1.4 重启服务测试
  • 二: 构建主从DNS服务器
    • 2.1 修改 主 DNS 服务器的区域配置文件
    • 2.2 从DNS 服务器 下载软件包,修改主配置文件
    • 2.3 修改从DNS 服务器的区域域名配置文件
    • 2.4 启动主从DNS
    • 2.5 客户端测试

一,配置DNS 反向解析

DNS 反向解析: 就是将接收到的 IP 地址解析成对应的 域名

1.1 主配置文件设置

root@localhost ~]# yum -y install bind
[root@localhost ~]# vim /etc/named.conf
options {
        listen-on port 53 { 192.168.114.10; };     
        #监听53 端口,ip地址使用提供服务的本地ip,也可以使用any 表示所有

        #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; };     #允许使用本机DNS 解析的网段,any 表示所有
        ......
};     

1.2 修改区域配置文件,添加反向区域配置

[root@localhost ~]# vim /etc/named.rfc1912.zones 
#文件里有模板,可以复制粘贴后修改
zone "23.168.192.in-addr.arpa" IN {       #反向解析地址倒过来写,只写网络位,不用写主机位。如,子网掩码24 ,就只用写前面三段
        type master;
        file "mynet.com.zone.local";      
        #指定区域数据文件为 mynet.com.zone.local, 和正向解析的区域数据文件区别
        
        allow-update { none; };
};
#反向解析配置


zone "mynet.com" IN {
        type master;
        file "mynet.com.zone";          #正向解析区域数据配置文件
        allow-update { none; };
};
#正向解析配置

1.3 修改反向区域数据文件

复制代码

[root@localhost ~]# cd /var/named                                    #进入 /var/named 目录
[root@localhost named]# cp named.localhost  mynet.com.zone.local     # cp -p 保持源文件属性复制
[root@localhost named]# vim /var/named/mynet.com.zone.local          #配置反向解析区域配置文件
$TTL 1D
@       IN SOA  mynet.com.  admin.mynet.com. (                       # "@" 表示变量,这里代表192.168.23 网络位
                                        20216301      ; serial       #修改更新序列号,10位数以内的整数
                                           #配置主从时,如果主从的跟新序列号一样,从服务器就不会进行更新。所以,每次更新主服务器的区域数据配置文件时,都要更新序列号
                                        1D            ; refresh
                                        1H            ; retry
                                        1W            ; expire
                                       3H )          ; minimum
        NS      mynet.com.                       # 域名
        A       192.168.23.10                    # DNS 地址 
200 IN  PTR     www.mynet.com.                   # PTR 为反向指针,反向解析 192.168.23.200 的地址为 www.mynet.com 
100 IN  PTR     mail.mynet.com.
:wq     #保存退出


#正向区域数据配置文件,使用上一章“配置DNS正向解析” 里的即可,但是要修改跟新序列号 serial 值
[root@promote named]# vim /var/named/mynet.com.zone                   # 修改正向区域配置文件
$TTL 1D                                                               #有效解析记录的生存周期
@       IN SOA  mynet.com.  admin.mynet.com. (                        # @ 表示变量,代表当前DNS 区域名
                                                                      #  mynet.com.  域名是要完整合格域名 "." 不可以少
                                                                     #  admin.mynet.com  管理员邮箱
                                                                                                                                           
                                        20216302       ; serial             # 更新序列号,可以是 10位数 以内的整数。主从服务器不可以一样
                                        #配置主从时,如果主从的跟新序列号一样,从服务器就不会进行更新。所以,每次更新主服务器的区域数据配置文件时,都要更新序列号
                                        1D      ; refresh            # 刷新时间,重新下载地址数据的间隔
                                        1H      ; retry              # 重试延时,下载失败后的重试间隔
                                        1W      ; expire             # 失效时间,超过该时间仍无法下载则放弃
                                        3H )    ; minimum            # 无效解析记录的生存周期
                                        
           NS      mynet.com.                      # NS 用于记录当前区域的 DNS 名称, 使用完整合格域名
           A       192.168.23.10                   # 记录 主机的 IP 地址, 也就是 服务器IP 地址
IN   MX    10     mail.mynet.com.                  # MX 为邮件交换记录,数字越大越优先。 可以不配本条配置     
www  IN    A     192.168.23.10                     # 设置正向解析 www.mynet.com  对应的 IP
mail IN    A     192.168.23.11                     # 设置正向解析 mail.mynet.com  对应的 IP
ftp  IN    CNAME www                               # CNAME 使用别名 ,设置 ftp 是www 的别名
*    IN    A     192.168.23.12                     # 泛域名解析,"*" 代表任意主机名 ,代表除了上面设置的主机名,其他主机名

1.4 重启服务测试

[root@localhost named]# systemctl stop firewalld                 # 关闭防火墙
[root@localhost named]# setenforce 0                             #  设置 selinux 级别为 permissive
[root@localhost named]# systemctl restart named                  # 重启服务

[root@localhost named]# vim /etc/resolv.conf                     #设置 DNS 服务器地址
nameserver 192.168.23.10

[root@localhost named]# host 192.168.23.100                      # 测试反向解析
100.23.168.192.in-addr.arpa domain name pointer mail.mynet.com.

[root@localhost named]# host 192.168.23.200
200.23.168.192.in-addr.arpa domain name pointer www.mynet.com.

二: 构建主从DNS服务器

2.1 修改 主 DNS 服务器的区域配置文件

主服务器:
[root@localhost named]# vim /etc/named.rfc1912.zones    # 修改主DNS服务器的 区域配置文件
#修改反向区域设置
zone "23.168.192.in-addr.arpa" IN {                     
        type master;                                    #类型为主服务器
        file "mynet.com.zone.local";                    
        allow-transfer { 192.168.23.11; };              # 允许从服务器下载反向区域数据
};


#修改正向区域设置
zone "mynet.com" IN {
        type master;
        file "mynet.com.zone";
        allow-transfer { 192.168.23.11; };
};

###因为区域数据配置文件,已经在做反向解析时,已经配置,所以此处略过

2.2 从DNS 服务器 下载软件包,修改主配置文件

从服务器:

[root@localhost ~]# yum -y install bind         #下载 提供named 服务的软件包
[root@localhost ~]# vim /etc/named.conf 
options {
        listen-on port 53 {  192.168.23.11; };         
        #监听53 端口,ip地址使用提供服务的本地ip,也可以使用any 表示所有       
        
        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; };                     #允许使用本机DNS 解析的网段,any 表示所有
        ......
};  

2.3 修改从DNS 服务器的区域域名配置文件

从服务器:

[root@localhost ~]# vim /etc/named.rfc1912.zones
zone "mynet.com" IN {
        type slave;                       # 类型为从服务器
        masters { 192.168.23.10; };       # 指定 主服务器地址 (注意,手动配置本项参数时,大括号里的参数,两边要加空格,以分号结尾,括号外也要以分号结尾)
        file "slaves/mynet.com.zone";     # 这是相对路径。从/var/named/ 目录开始 
        #指定 从主服务器下载的 区域数据文件保存到 /var/named/slaves/ 目录下,叫 mynet.com.zone
};

zone "23.168.192.in-addr.arpa" IN {
        type slave;
        masters { 192.168.23.10; };
        file "slaves/mynet.com.zone.local";

2.4 启动主从DNS

主从DNS 服务器都要重启服务,并在从 DNS 服务器上查看 /var/named/slaves/目录下,是否有同步的区域数据配置文件

[root@localhost ~]# systemctl start named     #主服务器重启服务

从服务器
[root@localhost ~]# ls /var/named/slaves/       #/var/named/slaves/ 目录下空
[root@localhost ~]#
[root@localhost ~]# systemctl stop firewalld    #关闭防火墙
[root@localhost ~]# setenforce 0                # 设置selinux 级别
[root@localhost ~]# systemctl start named       #启动named 服务
[root@localhost ~]# ls /var/named/slaves/       # 查看 /var/named/slaves/ 目录下的文件
mynet.com.zone  mynet.com.zone.local            # 从服务器 从主服务器上下载的 正向,反向区域数据文件

2.5 客户端测试

[root@localhost ~]# vim /etc/resolv.conf        # 配置DNS 地址
nameserver  192.168.23.10
nameserver 192.168.23.11

#客户端: 
[root@localhost ~]# host www.mynet.com               #正向解析成功
www.mynet.com has address 192.168.23.10

[root@localhost ~]# host 192.168.23.100              #反向解析成功
100.23.168.192.in-addr.arpa domain name pointer mail.mynet.com.   

然后停止主服务器服务,模拟主服务器故障

[root@localhost named]# systemctl stop named

客户端:

[root@localhost ~]# host www.mynet.com
www.mynet.com has address 192.168.23.10
[root@localhost ~]# host 192.168.23.100
100.23.168.192.in-addr.arpa domain name pointer mail.mynet.com.

你可能感兴趣的:(linux,dns服务器)