DNS 域名解析服务

一、DNS 系统的作用及类型

1.1 DNS是什么

是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串

1.2 TCP与UDP在DNS中的作用

TCP 是用来做区域传送,多用于主从同步  
在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息

UDP 是用来做DNS解析的
域名:通常由一个完全合格域名(FQDN)标识。FQDN 全称 Fully Qualified Domain Name ,它能准确表示出其相对于 DNS 域树根的位置, 也就是节点到DNS 树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用“.”分隔,对于DNS 域google来说,其完全正式域名(FQDN)为google.com

1.3 DNS服务器正向解析

正向解析是 DNS 最常见的使用方式之一,它通过将域名转换为 IP 地址,实现了用户和网络服务之间的无缝连接和信息传递

  1. 用户请求:用户在浏览器中输入一个域名,如www.baidu.com

  2. 本地 DNS 查询:操作系统向本地 DNS 服务器发送正向解析查询请求,询问该域名对应的 IP 地址

  3. 递归查询:如果本地 DNS 服务器不知道该域名的 IP 地址,它会依次向根 DNS 服务器、顶级域(TLD)服务器和权威 DNS 服务器发送查询请求,直到找到该域名的权威 DNS 服务器

  4. 获取 IP 地址:权威 DNS 服务器返回该域名对应的 IP 地址给本地 DNS 服务器

  5. 返回结果:本地 DNS 服务器将获取到的 IP 地址返回给操作系统,然后传递给用户的浏览器,使用户可以访问目标网站

1.4 DNS服务器的两种查询方式

递归查询
递归查询是一种 DNS 服务器的查询模式,在该模式下 DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果 DNS 服务器本地没有存储查询 DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机

迭代查询
DNS 服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果,而是告诉客户机另一台 DNS 服务器地址,客户机再向这台 DNS 服务器提交请求,依次循环直到返回查询的结果为止

总结:客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反
 

1.5 DNS系统的分布式数据结构

1.6 DNS服务器系统类型

主域名服务器: 负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件


从域名服务器: 当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库
注:

缓存域名服务器: 只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但没有域名数据库。它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源

转发域名服务器: 负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果

二、BIND安装与配置

BIND 是目前最广泛使用的 DNS 服务器软件,在互联网域名解析中占有非常重要的地位,并且被广泛应用于各种操作系统

2.1 BIND 下载

BIND的软件包下载

bind-9.9.4-37.el7.x86_64.rpm       #提供了域名服务的主要程序及相关文件。
bind-utils-9.9.4-37.el7.x86_64.rpm     #提供了对 DNS 服务器的测试工具程序,如 nslookup 等
bind-libs-9.9.4-37.el7.x86_64.rpm      #提供了 bind、bind-utils 需要使用的库函数。
bind-chroot-9.9.4-37.el7.x86_64.rpm     #为 BIND 服务提供一个伪装的根目(将/var/named/chroot/文件夹 作为 BIND 服务的根目录),以提高安全性

为了方便也可以直接下载bind所有:

使用rpm  -qc  bind 可以查到配置文件所在目录

2.2. 正向解析配置

vim   /etc/named.conf         修改主配置文件

vim   /etc/named.rfc1912.zones         修改区域配置文件,添加正向区域配置 

cp  -p  named.localhost   benet.com.zone                 复制源文件到benet

vim   /var/named/benet.com.zone                      配置正向区域数据文件

vim    /etc/resolv.conf                 客户端的域名解析配置文件中添加DNS服务器地址

systemctl    start    named      开启服务

host    域名          即可正向解析 或使用nslookup

2.3 反向解析配置

vim   /etc/named.conf          修改主配置文件

vim   /etc/named.rfc1912.zones         修改区域配置文件,添加反向区域配置 

vim   /var/named/benet.com.zone.local                    配置反向区域数据文

systemctl    restart    named              重启服务

host   IP地址              反向解析域名

三、DNS主从服务器及自动同步

DNS主从服务器(也称为主辅服务器或主备服务器)架构是一种用于提高DNS服务可靠性和性能的设计。主DNS服务器(Primary DNS Server)保存了DNS区域的原始数据,而从DNS服务器(Secondary DNS Server)则从主服务器获取这些数据,并为客户端提供冗余和负载分担

实验部署:

主服务器:192.168.192.20

从服务器:192.168.192.10

3.1 配置主服务器192.168.192.20

主配置文件

vim    /etc/named.conf        修改主配置文件

区域配置文件

vim    /etc/named.rfc1912.zones          添加正、反解析配置文件

配置正向区域数据文件

cd    /var/named

vim     benet.com.zone  

配置反向区域数据文件

vim    benet.com.zone.local

vim    /etc/resolv.conf       修改域名解析

systemctl restart named      重启服务

3.2 配置从服务器192.168.192.10

vim    /etc/named.conf        修改主配置文件

vim    /etc/named.rfc1912.zones      添加正、反解析配置文件

vim    /etc/resolv.conf       修改从域名解析

在主从服务器重启服务后,从服务器 /var/named/slaves 下自动同步正反向解析的配置文件

停止主服务器的服务,模拟主服务器故障:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值