Linux中DNS域名解析服务(附DNS正反向解析实验及主从域名服务器实验详细过程)

本文详细介绍DNS的基本概念、工作原理及其实现方式。包括DNS的定义、作用、域名结构、查询流程,并介绍了DNS服务器的不同类型及其配置方法。

目录

一.DNS介绍

1.DNS的定义

2.DNS系统的作用

3.域名结构

4.DNS的完整过程

5.迭代查询和递归查询

6.打开网页经历的过程

7.DNS服务器的类型

7.1 缓存域名服务器

7.2 主域名服务器

7.3 从域名服务器

二.BIND构建域名服务器

1.BIND (Berkeley Internet Name Daemon)

2.BIND相关软件包

3.BIND服务器端程序

4.BIND服务控制

三.本地解析配置文件位置

四.实验:构建域名服务器正向解析

​五.实验:构建域名服务器反向解析

六.实验:配置主从DNS服务器


一.DNS介绍

1.DNS的定义

DNS(Domain Name Systern) 域名系统,应用层协议,是互联网的一项服务,是将域名转换成网络可以识别的IP地址,再通过IP地址访问主机。这种由文字组成的名称更容易记忆。

DNS是“域名系统"的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

2.DNS系统的作用

  • 正向解析:根据域名查找对应的IP地址
  • 反向解析:根据IP地址查看对应的域名
  • DNS系统的分布式数据结构

3.域名结构

例如:

http://www   .baidu.com   .cn              . /

http://主机名 .子域 .二级域.顶级域 根域 /

树状结构最顶层称为根域,用“."表示,相应服务器称为根服务器,整个域名空间解析权都归根服务器所有,但根服务器无法承担庞大的负载,采用“委派”机制,在根域下设置了–些顶级域,然后将不同顶级域解析权分别委派给相应的顶级域服务器,如将com域的解析权委派给com域服务器,以后但凡根服务器收到以com结尾的域名解析请求,都会转发给com域服务器,同样道理,为了减轻顶级域的压力,又下设了若干二级域,二级域又下设三级域或主机。

  • 根域:处于域名结构的最顶端,一般用一个“ . ” 表示;
  • 顶级域:一般代表一种类型的组织机构或者国家地区,如:
    • .net(网络供应商)
    • .com(工商企业)
    • .org(团体组织)
    • .edu(教育机构)
    • .gov(政府部门)
    • .cn(中国国家域名)
  • 二级域:用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家网络部门统一管理,顶级域名下面设置的是二级域名,如:
    • .com.cn
    • .net.cn
    • .edu.cn
  • 子域:二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名;
  • 主机:主机位于域名结构的最下层,就是一台具体的计算机,如:www、mail都是具体的计算机名字,可以用www.baidu.com.cn.来表示,这种方式称为FQDN(完全合格域名),也是这台主机在域名中的全名。

4.DNS的完整过程

第一步:先去查看本机的hosts文件,如果有直接访问hosts文件里的IP地址,没有去找缓存服务器(电信运营商)

第二步:缓存服务器有,直接反馈结果给用户,缓存没有,去找根服务器

第三步:根服务器只知道自己下级的服务位置,不会反馈给你直接结果,会透露有信息(迭代查询),让你去找顶级域(一级域)服务器

第四步:顶级域(一级域)服务器也(迭代查询),去找下级:二级域服务器

(具体找几次,与域名长度有关)

第五步:到达权威服务器,会直接反馈结果给缓存服务器,再由缓存服务器发给客户端

5.迭代查询和递归查询

  • 迭代查询:不给结果只给相关信息,需要自己动手
  • 递归查询:直接反馈结果,不需要自己动手

6.打开网页经历的过程

输入www.baidu.com  打开网页中间经历了那些过程?

7.DNS服务器的类型

7.1 缓存域名服务器

  • 也称为DNS高速缓存服务器
  • 通过向其他域名服务器查询获得域名-->IP地址记录
  • 将域名查询结果缓存到本地,提高重复查询时的速度

7.2 主域名服务器

  • 特定DNS区域的权威服务器,具有唯一性
  • 负责维护该区域内所有域名-->IP地址的映射记录
  • 需要自行建立所负责区域的地址数据文件

7.3 从域名服务器

  • 也称为辅助域名服务器,是对主域名服务器的热备份
  • 其维护的域名-->IP地址记录来源于主域名服务器
  • 需要从主域名服务器自动同步区域地址数据库

二.BIND构建域名服务器

DNS服务器软件:bind,powerdns,dnsmasq,unbound,coredns

1.BIND (Berkeley Internet Name Daemon)

  • BIND是应用最广泛的DNS服务器程序
  • 官方网站:http://www.isc.org/

2.BIND相关软件包

bind-9.9.4-37.el7.x86_64.rpm
bind-utils-9.9.4-37.el7.x86_64.rpm
bind-libs-9.9.4- -37.el7.x86_64.rpm
bind-chroot-9.9.4-37.el7.x86_64.rpm

3.BIND服务器端程序

  • 主要执行程序:/usr/sbin/named
  • 默认监听端口:53
  • 主配置文件:/etc/named.conf
  • 保存DNS解析记录的数据文件位于:/var/named

4.BIND服务控制

systemctl [status | start | stop | restart] named.service    
#查看状态、启动、停止和重启

三.本地解析配置文件位置

文件位置

  • Linux hosts文件位置:/etc/hosts
  • windows hosts文件位置 : c/windows/system32/drivers/etc/hosts

四.实验:构建域名服务器正向解析

第一步:安装bind程序

第二步:修改/etc/named.conf相关配置

第三步:修改区域配置文件

第四步:修改正向区域数据文件

第五步:开启named服务、关闭防火墙和增强防护功能,然后查看named服务的状态

第六步:在/etc/resolv.conf中修改域名地址

 第七步:测试结果域名解析

五.实验:构建域名服务器反向解析

第一步:修改/etc/named.rfc1912.zones配置文件,添加反向区域配置

第二步:复制并配置反向区域数据文件

第三步:修改反向配置的数据文件为下图

第四步:关闭防火墙重启服务后进行解析测试

六.实验:配置主从DNS服务器

第一步:修改主服务器的区域配置文件,修改正、反向区域配置

第二步:修改从服务器的主配置文件

第三步:修改从服务器的区域配置文件

第四步:从服务器关闭防火墙和安全防护功能,修改临时DNS域名地址,并重启named服务

第五步:在从服务中查看是否自动生成了区域资源配置文件,并将主服务器的域名ip添加进去

第六步:在主服务中也添加从服务器的域名ip

第七步:进行域名解析测试

主服务器:

 从服务器:

此项实验还可以使用

rndc reload:在不重新启动DNS服务的情况下,重新加载配置文件及zone 

### 实验目的达成情况 配置主从 DNS 服务器实验达成了多方面的目的。在可靠性方面,实现了热备份功能,从域名服务器作为主域名服务器的备份,当主域名服务器出现故障、维护或遭受攻击时,从域名服务器能够继续提供域名解析服务,确保网络服务的连续性和稳定性,避免因主服务器问题导致的域名解析中断,影响用户常访问网络资源。在负载均衡上,通过主从配置可以将域名解析请求分散到主从服务器上,减轻主服务器的负担,尤其是在高流量的网络环境下,从服务器能够分担一部分解析请求,提高整个 DNS 系统的处理能力,使域名解析服务更加高效,减少用户等待时间,提升用户体验。在数据备份与同步方面,从域名服务器会自动从主域名服务器同步区域地址数据库,保证了数据的一致性和实时性,也为数据恢复提供了保障。在实验学习层面,通过该实验可以深入理解 DNS 服务的工作原理、区域文件的配置、主从服务器之间的数据同步机制等知识,掌握 DNS 服务的搭建和管理技能,为实际网络环境中的 DNS 部署和维护积累经验。 ### 实验操作要点 主服务器的配置包括修改主配置文件和反向解析数据文件。主配置文件 `/etc/named.conf` 中需设置监听端口、工作目录、允许查询和允许传送的主机等信息,同时定义向和反向区域。反向解析数据文件则包含了具体的域名和 IP 地址的映射关系。例如,配置主服务器的主配置文件如下: ```plaintext options { listen-on port 53 { 192.168.235.128; }; directory "/var/named"; allow-query { any; }; allow-transfer { 192.168.235.131; }; # 允许传送资源记录文件到从服务器主机 }; zone "openlab.com" IN { type master; file "named.openlab.com"; }; zone "235.168.192.in-addr.arpa" IN { type master; file "name.192"; allow-update { none; }; }; ``` 从服务器的配置主要是修改区域配置文件,将区域类型设置为 `slave`,并指定主服务器的 IP 地址和数据文件位置。例如: ```plaintext zone "lg.com" IN { type slave; masters { 192.168.3.10; }; file "slaves/lg.localhost"; }; zone "3.168.192.in-addr.arpa" IN { type slave; masters { 192.168.3.10; }; file "slaves/lg.loopback"; }; ``` ### 实验问题与解决 在实验过程中可能会遇到一些问题,如数据同步失败、解析请求无法响应等。数据同步失败可能是由于主从服务器之间的网络不通、主服务器未允许从服务器进行数据传输等原因导致,需要检查网络连接和主配置文件中的 `allow-transfer` 选项。解析请求无法响应可能是由于配置文件语法错误、服务常启动等原因,需要仔细检查配置文件并重启 `named` 服务。 ### 实验结论 通过本次实验,成功搭建了主从 DNS 服务器,实现了域名解析服务的高可用性、负载均衡和数据备份。同时,也加深了对 DNS 服务原理和配置的理解,掌握了相关的操作技能。但在实际应用中,还需要考虑更多的因素,如安全性、性能优化等。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小啄学习日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值