06
2023
07
08:16:00

DNS 客户端查询过程



推荐点击下面图片,通过本站淘宝优惠价购买:

image.png

DNS客户端的注册信息在DNS服务器中是以记录的方式体现出来的,那么客户端就可以用一些方式进行查询各类记录。相对应的,服务器会对这些查询进行响应,我们称之为解析,至于DNS内部的工作机制,我们不得而知,但可以通过一些命令和方法间接地了解DNS查询过程。为了更好的描述这个问题,我做了一张简单的TOPO图,其中DNS1为DNS服务器,主机XP3是一个DNS客户端。拓扑图如下:
在客户端向DNS服务器提交一个查询消息中,通常都会包含3条基本信息,1、需要制定查询的DNS域名;2、指定查询请求的基本类型;3、DNS域名的指定类别。对于windows系统的DNS服务器而言,第三条即DNS域名的指定类别总是Internet,即我们常说的IN类别,这个关键字无论是在正向还是反向区域的DNS文件中都可以看的到,我们以正向查找区域的DNS文件为例,如下图:
所以,通常我们在提交一个查询时只需要包含DN S域名和查询请求的类型这两部分内容就可以了,通过一个实例来讲解吧。在a.com区域内存在2条A记录,如下图:
那么我们在XP3上查询DNS1的A记录。为了更好的理解整个过程,我们依然会使用wireshark来进行辅助分析。整个过程如下图:
在上图中用到几个命令 ,如nslookup、set 等,这些命令在DNS应用和排错中用的很普遍。所以后面会单独有一节来讲这部分内容。我们再来看看wireshark都发生了什么,整个过程经历了2个步骤。如下图:
数据包1的分析过程:
数据包2的分析过程:
上面是查询A记录的过程分析,同理,在查询NS记录或者PTR指针记录时也是类似的过程,只是查询的类型和结果不同而已,这里不再熬述。
DNS客户端在第一次查询某条记录时,会按照上述的过程进行,当再次查询时则会首先使用本地缓存信息来解析查询请求,如果有对应的记录则完成此次解析,否则就会向自身的DNS服务器发起查询。而这样的本地解析依据来源于2个地方,如下:
1、即为本地预先配置的主机名到地址的映射关系,也就是我们常提的HOSTS文件。
2、以及系统保存在查询缓存中的记录。
其实,从上面不难看出,客户端解析的过程也就是记录匹配的过程,如果有匹配的选项,则会返回相应信息给客户端,反之则提示无法找到相应记录。


本文链接:https://hqyman.cn/post/4261.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:





休息一下,本站随机推荐观看栏目:


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

您的IP地址是: