欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > Linux网络之DNS域名解析服务

Linux网络之DNS域名解析服务

2025/4/18 12:40:05 来源:https://blog.csdn.net/yinglongdiwan/article/details/147095925  浏览:    关键词:Linux网络之DNS域名解析服务

目录

一.DNS相关介绍

1.DNS分布式结构数据图

2.DNS服务器类型

3.DNS查询类型及原理

1查询方式

2.查询原理过程

二.DNS正向解析配置方法(centos7)

1.关闭防火墙 和核心防护

2.安装软件

3.修改主配置文件

4.修改区域配置文件

5.准备数据库文件

6.重启服务

7.验证

三.DNS主从复制(ubuntu)

3.1 主服务器上的操作

1.安装软件

2.修改区域配置文件

3.新建数据库文件

4.重启服务器

5.验证解析结果 

3.2 从服务器上的操作 

1.安装软件

2.修改区域配置文件

3.验证是否有文件

4.重启服务器

5.验证解析结果 


一.DNS相关介绍

DNS:Domain Name System 域名系统,应用层协议,是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,基于C/S架构,服务器端:53/udp, 53/tcp实际上,每一台 DNS 服务器都只负责管理一个有限范围(一个或几个域)内的主机域 名和 IP 地址的对应关系,这些特定的 DNS 域或 IP 地址段称为 zone(区域)。根据地址解 析的方向不同,DNS 区域相应地分为正向区域(包含域名到 IP 地址的解析记录)和反向区 域(包含 IP 地址到域名的解析记录)

1.DNS分布式结构数据图

根域: 全球根服务器节点只有13个,10个在美国,1个荷兰,1个瑞典,1个日本

  • 一级域名:Top Level Domain: tld;三类:组织域、国家域(.cn, .ca, .hk, .tw)、反向域(com, edu, mil, gov, net, org, int)

  • 二级域名:magedu.com

  • 三级域名:study.magedu.com

  • 最多可达到127级域名

2.DNS服务器类型

  • 缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,

    但是没有自己控制的区域地址数据。构建缓存域名服务器时,必须设置根域或指定

    其他 DNS 服务器作为解析来源。

  • 主域名服务器:管理和维护所负责解析的域内解析库的服务器

  • 从域名服务器:从主服务器或从服务器"复制"(区域传输)解析库副本

  1. 序列号:解析库版本号,主服务器解析库变化时,其序列递增
  2. 刷新时间间隔:从服务器从主服务器请求同步解析的时间间隔
  3. 重试时间间隔:从服务器请求同步失败时,再次尝试时间间隔
  4. 过期时长:从服务器联系不到主服务器时,多久后停止服务
  5. 通知机制:主服务器解析库发生变化时,会主动通知从服务器

3.DNS查询类型及原理

1查询方式

  • 递归查询:一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后, 若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结 果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)

  • 迭代查询:一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需 要发起多次查询。(需要自己动手)

当用户想去访问  www.baidu.com
1.先去看 /etc/hosts  文件  是否有对应的条目   如果有直接访问相应的条目,如果没有去问DNS代理服务器;
2.如果 DNS 代理服务器有缓存,直接返回结果 ,如果代理服务器没有缓存,代理服务器会去问根域服务器;
3.由于我需要知道的域名是  www.baidu.com   根域服务器无法直接解析,就告诉一级域服务器地址 让我去问 一级域服务器;
4.由于我需要知道的域名是  www.baidu.com    一级域服务器也无法解析,就告诉二级域服务器地址 让我去问 二级域服务器; 
5.由于我需要知道的域名是  www.baidu.com  二级域服务器可以解析,就告诉我www.baidu.com的地址;
6.这个时候  DNS代理服务器拿到了相应的地址,缓存好后,再回复给客户端,这样客户端就拿到了   www.baidu.com  域名对应的ip地址了。

2.查询原理过程

正向解析查询过程:

①先查本机的缓存记录

②查询hosts文件

③查询dns域名服务器,交给dns域名服务器处理 以上过程成为递归查询:我要一个答案你直接会给我结果

④这个dns服务器可能是本地域名服务器,也有个缓存,如果有直接返回结果,如果没有则进行下一步

⑤求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域服务器

⑥求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器然他去找二级域服务器

⑦求助二级域服务器,二级域服务器查询发现是我的主机,把查询到的ip地址返回给本地域名服务器

⑧本地域名服务器将结果记录到缓存,然后把域名和ip的对应关系返回给客户端

二.DNS正向解析配置方法(centos7)

1.关闭防火墙 和核心防护

systemctl   stop firewalld 
setenforce  0

2.安装软件

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum  install   -y   bind   bind-utils 

systemctl   start  named

3.修改主配置文件

vim  /etc/named.conf
#注释  文件中的此 两行
//      allow-query     { localhost; };
//      allow-query     { localhost; };

4.修改区域配置文件

vim  /etc/named.rfc1912.zones
zone "wyf.com" IN {
        type master;
        file "wyf.zone";
};

5.准备数据库文件

cd  /var/named
cp -a  named.localhost    wyf.zone 
vim   wyf.zone
$TTL 1D
@       IN SOA  master  admin.wyf.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
master  A       192.168.91.100
www     A       192.168.91.100
ftp     A       192.168.91.101

6.重启服务

systemctl  restart   named 

7.验证

dig  @192.168.91.100  ftp.wyf.com
 

三.DNS主从复制(ubuntu)

3.1 主服务器上的操作

1.安装软件

apt update
apt install   bind9  bind9-utils -y
cd  /etc/bind

2.修改区域配置文件

vim  /etc/bind/named.conf.default-zones
zone "cxk.com" {
        type master;
        file "/etc/bind/cxk.zone";
        allow-transfer { 192.168.91.32; };
};

3.新建数据库文件

cd  /etc/bind 
cp   -a  /etc/bind/db.local     /etc/bind/cxk.zone
vim     /etc/bind/cxk.zone
@       IN      SOA     master.cxk.com.  admin.cxk.com. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
                NS       master
                NS       slave 
master  A       192.168.91.31
slave   A       192.168.91.32
www     A       192.168.91.31
ftp     A       192.168.91.32


4.重启服务器

systemctl   restart  named

5.验证解析结果 

dig   @192.168.91.31(你自己的ip地址)   www.cxk.com

3.2 从服务器上的操作 

1.安装软件

apt update
apt install   bind9  bind9-utils -y

2.修改区域配置文件

mkdir  /var/cache/bind/slaves
vim  /etc/bind/named.conf.default-zones
zone "cxk.com" {
        type slave;
        file "slaves/cxk.zone";
        masters { 192.168.91.31; };
};

systemctl   restart   named

3.验证是否有文件

ls  /var/cache/bind/slaves/

4.重启服务器

systemctl   restart  named

5.验证解析结果 

dig   @192.168.91.31(你自己的ip地址)   www.cxk.com

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词