详解"/>
【Linux篇<Day16>】——NDS解析详解
文章目录
- 🍎一、DNS工作原理
- 🥬1.1 DNS解析的作用
- 🥦2.2 DNS的分布式结构
- 🍓二、BIND服务分析
- 🥬2.1 BIND域名服务
- 🥦2.2 修改主配置文件
- 🥕2.3 建立地址库文件
- 🌶️2.4 DNS特殊解析
- 🍑三、/etc/hosts 与 /etc/resolv.conf 的区别
- 🥭四、DNS查询
- 🥬4.1 查询方式
- 🌶️4.2 DNS查询工作方式
🍎一、DNS工作原理
在上一期搭建web服务时,我们已经初步感受到了DNS服务时干什么用的,它主要是用来做域名解析,有了DNS服务器,我们才能更好地使用web服务,本期就让我们更加细致的了解一下DNS吧!
🥬1.1 DNS解析的作用
- 为什么需要DNS解析
大家在显示的网络环境中,应该没有用 http://192.168.88.240 这样去访问网站的吧,想必大家都是像www.qq 这样去访问的,后面的访问方式不仅好记忆,而且更加适用于虚拟web主机的技术,用来实现单台服务器显示多页面的网站,所以NDS技术应运而生。 - DNS解析的作用
正向解析
:根据注册的域名查找其对应的IP地址
反向解析
:根据IP地址查找对应注册的域名(不常用)
🥦2.2 DNS的分布式结构
-
域名的组成结构
看上图可知,一个域名的起始点是根域名,根域名下面有一级域名、二级域名、三级域名和主机站点。 -
Full Qualified Domain Name
译为一个完全合格的域名。一个完全合格的域名必须同同事具备站点名和域名后缀,可以同时有多级域。注意,其实每个域名的最后都有一个点
,比如:www.qq.
,只是平时我们省略了,浏览器帮我们补上的。
-
常见的顶级/一级域名
🍓二、BIND服务分析
🥬2.1 BIND域名服务
- 所需软件包
bind:提供域名服务
bind-chroot:提供虚拟根支持,也就是牢笼政策,当bind出现问题时就会将bind囚禁 - bind服务端程序
主要执行程序:/usr/sbin/named
系统服务:named
默认端口:TCP/UDP 53
运行时的虚拟根环境:/var/named/chroot - 主配置文件:/etc/named.conf
设置负责解析的域名 - 地址库文件:/var/named/
完全合格的域名与IP地址的对应关系
🥦2.2 修改主配置文件
我们先看看主配置文件里面比较重要的几行代表什么意思
-
全局配置部分如下:
设置监听地址/端口、地址库存放位置等
-
区域配置如下:
定义NDS区域、类型、地址文件路径等
关键词 IN 表示Internet,可以省略
-
由于主配置文件极为重要,所以我们在修改主配置文件之前,一定要将其备份一份到 /root 下面,然后再做修改。我们就修改的简单一点:如下图所示
这样配置完之后我们的主配置文件就写完了,注意,地址库文件的名称是随意的,但是我们一般取名都要达到见名知意的效果,所以我们一般会用域名加zone结合在一起作为地址库文件的名字。目的是为 tedu 这个域名做解析。接下来我们配置一下地址库文件。
🥕2.3 建立地址库文件
- NDS服务器资源解析记录类型
NS
:DNS服务器声明记录
A
:正向解析记录
CNAME
:解析记录别名
MX
:邮件服务器记录 - 书写地址库文件
我们在 /var/named/ 下面创建出我们的地址库文件 qq.zone。
我们分别对www.qq和ftp.qq做出解析,我们需要重启一下named服务再来验证解析结果,解析结果可以用nslookup这个命令来验证。
从结果我们可以看出,这个解析成功了。
🌶️2.4 DNS特殊解析
-
泛域名解析
用*代表站点,当其他站点都匹配不上时,就进入该站点。
我们测试一下
从解析结果可以看出,成功解析了。 -
NDS解析记录的别名
CNAME代表解析别名,他的意思就是本条记录的解析结果和某某一样,如下图
这条配置的意思就是,mail这个站点的解析结果和ftp一样,我们来看下解析结果:
-
如果我们想要要其他的客户机也可以认识这些域名,我们必须再书写一个配置文件,该配置文件为 /etc/resolv.conf。该配置文件可以告诉电脑,你上哪台主机去寻找NDS服务器进行域名解析。
这样我们用客户机就可以成功访问网站了。
🍑三、/etc/hosts 与 /etc/resolv.conf 的区别
/etc/hosts 文件的解析优先级高于 /etc/resolv.conf
/etc/hosts 适用于没有NDS服务器但又需要做域名解析的场景
🥭四、DNS查询
🥬4.1 查询方式
- nslookup
这个上面已经演示过了,下面的host比这个命令精简 - host
🌶️4.2 DNS查询工作方式
-
递归查询
客户端发送请求给首选DNS服务器,首选服务器与其他的DNS服务器交互,最终将解析结果带回来。
注意:只有首选服务器能进行递归查询;首选服务器就是办理宽带是分配的服务器 -
迭代查询
客户端发送请求给首选DNS服务器,首选服务器先去找根域服务器,根域服务器提供前一个域的的服务器地址,首选服务器再去找这台服务器,这台服务器再次提供前一个域的地址,依次下去,知道找到完整的域名
。
👆回到顶部👆
更多推荐
【Linux篇<Day16>】——NDS解析详解
发布评论