自学内容网 自学内容网

DNS域名解析服务器

一、dns简介及域名

  • DNS(Domain Name System) : 作为将域名和IP地址相互映射的一个分布式数据库,能便捷互联网的访问。使用53端口,通常以UDP较快的数据传输协议来查询,如果没有查询到,将再次启动TCP重新查询,两者同时启动port53.

  • 因特网在采取命名的时候采用层次树状结构命名方法。

  • 国家顶级域名(cn代表中国等)、通用顶级域名(com公司企业)

二、域的划分

根域名服务器:最高层次的域名服务器,也是最重要的域名服务器。所有的根域名服务器都知道所有的 顶级域名服务器的域名和IP地址。全世界只有13台。

顶级域名服务器:负责管理在该顶级域名服务器注册的二级域名。

权限域名服务器:负责一个“区”的域名服务器。

本地域名服务器:本地域名服务器不属于域名服务器的层次结构,但是它对域名系统非常重要。当一个 主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器。

三、解析过程

当DNS服务器收到查询请求后,首先在浏览器/系统缓存中找,接着在host文件中找,再在本地DNS服务器找(先找区域记录---->再找DNS服务器缓存),如果查不到,可能是因为该服务器不是请求域的授权服务器,并且以前查询的缓存中没有需要的记录,这时DNS服务器必须向转发域名服务器(转发域名服务器负责所有非本地域名的查询)发送请求。如果没有转发域名服务器则找根域名服务器(采用迭代查询)。
当主域名服务器关闭、出现故障或负载过重时,辅助域名服务器作为备份服务器提供域名解析服务。辅助服务器从主域名服务器获得授权,并定期向主服务器询问是否有新数据,如果有则调入并更新域名解析数据,以达到与主域名服务器同步的目的。

四、服务器配置

1.相关服务端

软件安装包bind
服务名称named
主配置文件/etc/named.conf
数据目录/var/named
端口tcp/53   udp/53

2.安装启用

dnf install bind -y

systemctl enable --now named

3.开放服务

[root@dns-sever ~]# vim /etc/named.conf

options {
        listen-on port 53 { any; };                 # 本地所有网络接口开启53端口
        listen-on-v6 port 53 { ::1; };     
        allow-query     { any; };                   # 允许查询A记录的客户端列表
        forwarders     {114.114.114.114;};          #  非本域的DNS查询请求将被转发
        dnssec-validation no;          # 禁用DNS检测使dns能够缓存外部信息到本记录

4.高速缓存

(1)含义

是一个非权威的dns,在dns服务器中本身并没有数据,当客户需要解析解析域名十四首先查询缓存中是否有数据,如果没有就会从指定的dns服务器中缓存;它可以大大节省内网在做地址解析上所需要花费的时间。

(2)配置参数
[root@dns-sever ~]# vim /etc/named.conf 

>      forwarders { 114.114.114.114; };

[root@dns-sever ~]# systemctl restart named
[root@hai ~]# vim /etc/resolv.conf 
>  namserver  172.25.254.100

测试:

5.DNS正向解析

(1)  在zones文件中设定维护的域
[root@dns-sever ~]# vim /etc/named.rfc1912.zones
 
#配置文件内容
  zone "long.org" IN {
        type master;
        file "long.org.zone";
        allow-update { none; };
};
(2)指定生成A记录文件
[root@dns-sever ~]# cd /var/named/

[root@dns-sever named]# cp -p named.localhost  long.org.zone


$TTL 1D                              # dns地址保存时间默认"S"
@       IN SOA dns.ling.org.  root.long.org. (               #SOA授权起始
                                        0       ; serial     # 域名版本序列号
                                        1D      ; refresh    # 刷新时间(辅助dns)
                                        1H      ; retry      # 重试时间
                                        1W      ; expire     # 过期时间
                                        3H )    ; minimum    # A记录最短有效时间
        NS      dns.long.org.          # nameserver 域名
haha    A      172.25.254.100          # A 记录
dns     A      172.25.254.100          
www     CNAME  long.a.long.org.        # Canonical Name (规范名称,A记录别名)
long.a   A      172.25.254.100
long.a   A      172.25.254.200
long.org. MX 1 172.25.254.111.         # 邮件解析记录

(3)测试:

查询邮件记录

(4)查询结果反馈值
状态码状态码含义
NOERROR查询成功
REFUSED查询被拒绝
SERVFAIL查询失败
NXDOMAIN查询无此结果

6.DNS反向解析

(1)  作用

       当客户设定当前dns服务器为dns解析服务器时,正向解析即为客户提供PRT记录 客户提供域名,dns服务器负责把域名解析成对应IP

(2)  zones文件设定要维护的域
[root@dns-sever ~]# vim /etc/named.rfc1912.zones

 zone "254.25.172.in-addr.arpa" IN {
        type master;
        file "172.25.254.ptr";
        allow-update { none; };
 };

(3)  指定生成A记录文件
[root@dns-sever ~]# cd /var/named/
[root@dns-sever named]# cp -p named.loopback 172.25.254.ptr
[root@dns-sever named]# vim 172.25.254.ptr

$TTL 1D
@       IN SOA dns.long.org. root.long.org. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.long.org.
dns     A       172.25.254.100
        AAAA    ::1
111     PTR     www.long.org.

(4)  测试

7.DNS多向解析方案

(1)  作用

     在企业中服务器不可能在同一个网段,不同网段的服务器是不是需要用多台dns来满足服务器需求? 根据这一企业需求我们可以在DNS中通过访问设置,让不同网段的服务器都解析到自己网段的相应地址 这就是DNS多项解析

(2)  配置实验环境

      本实验需要用到一台服务器以及两个客户端,服务器需要双网卡配置不同网段IP,两台客户端配置服务器的不同网段IP地址。本次实验服务器为172.25.254.0/24和192.168.0.0/24网段,客户端long为192.168.0.0/24网段。

(3)  主配置文件
# 注释在主配置文件中默认的zone语句块
vim /etc/named.conf

/*
 zone "." IN {
 type hint;
 file "named.ca";
 };
 include "/etc/named.rfc1912.zones";
 */



# 添加view语句块来限制访问数据走向


view localnet {
           match-clients { 192.168.0.0/24;};     #  匹配访问来源的,匹配访问来源可以填写多个,每个之间用空格分隔
           zone "."IN {
           type hint;
           file "named.ca";
            };
           include "/etc/named.rfc1912.localnets";
};
view  any{
           match-clients { any; };
           zone "."IN {
           type hint;
           file "named.ca";
            };
           include "/etc/named.rfc1912.zones";
};
(4)  生成并配置zones文件
[root@dns-sever ~]# cp -p /etc/named.rfc1912.zones  /etc/named.rfc1912.localnets

[root@dns-sever ~]# vim /etc/named.rfc1912.localnets

zone "long.org" IN {
 type master;
 file "long.org.zone";
 allow-update { none; };
 };
(5)  生成并配置A记录文件
[root@dns-sever ~]# cp -p /var/named/long.org.zone  /var/named/long.org.localnet


[root@dns-sever ~]# vim /var/named/long.org.localnet

(6)  测试

分别在两台客户端主机中修改dns

# 客户端1

[root@hai ~]# vim /etc/resolv.conf

nameserver  172.25.254.100

# 客户端2
[root@long ~]# vim /etc/resolv.conf

nameserver  192.168.0.100

8.主从DNS服务器(两台服务器)

(1)  作用

      为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保存,其中的一个就 是主DNS服务器(Master name server),负责解析至少一个域。其他的是辅助(从)DNS服务器 (Slave name server):负责解析至少一个域,是主DNS服务器的辅助。当主域名服务器出故障时,辅 助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制到辅助域名服务器中, 而更改数据只能在主域名服务器中进行。这样就保证了数据的一致性

(2)  对辅助DNS进行配置
#  修改zones文件设定要做主从的域

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

zone "long.org" IN {
        type slave;
        masters { 172.25.254.100;};
        file "slaves/long.org.zone";

};

[root@hai ~]# systemctl  restart  named
(3)  解决数据同步问题(决下数据同步的延迟问题)
[root@dns-sever ~]# vim /etc/named.rfc1912.zones

zone "long.org" IN {
        type master;
        file "long.org.zone";
        allow-update { none; };

        also-notify { 172.25.254.200;};    # 在主dns中设置数据更改后主动通知对象
};


[root@dns-sever ~]# vim /var/named/long.org.zone #serial 更改A记录后一定要更新serial值

(4)  测试


原文地址:https://blog.csdn.net/m0_64469733/article/details/143872565

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!