您现在的位置:主页 > 服务器 > Dns服务器 >

一起学DNS系列(八)DNS 客户端查询过程

来源:建站吧 责任编辑:Jzq8 发表时间:2011-12-15 点击:

DNS客户端的注册信息在DNS服务器中是以记录的方式体现出来的,那么客户端就可以用一些方式进行查询各类记录。相对应的,服务器会对这些查询进行响应,我们称之为解析,至于DNS内部的工作机制,我们不得而知,但可以通过一些命令和方法间接地了解DNS查询过程。为了更好的描述这个问题,我做了一张简单的TOPO图,其中DNS1为DNS服务器,主机XP3是一个DNS客户端。拓扑图如下:

学DNS系列(八)DNS 客户端查询过程

在客户端向DNS服务器提交一个查询消息中,通常都会包含3条基本信息,1、需要制定查询的DNS域名;2、指定查询请求的基本类型;3、DNS域名的指定类别。对于windows系统的DNS服务器而言,第三条即DNS域名的指定类别总是Internet,即我们常说的IN类别,这个关键字无论是在正向还是反向区域的DNS文件中都可以看的到,我们以正向查找区域的DNS文件为例,如下图:

学DNS系列(八)DNS 客户端查询过程

所以,通常我们在提交一个查询时只需要包含DN S域名和查询请求的类型这两部分内容就可以了,通过一个实例来讲解吧。在a.com区域内存在2条A记录,如下图:

学DNS系列(八)DNS 客户端查询过程

那么我们在XP3上查询DNS1的A记录。为了更好的理解整个过程,我们依然会使用wireshark来进行辅助分析。整个过程如下图:

学DNS系列(八)DNS 客户端查询过程

在上图中用到几个命令 ,如nslookup、set 等,这些命令在DNS应用和排错中用的很普遍。所以后面会单独有一节来讲这部分内容。我们再来看看wireshark都发生了什么,整个过程经历了2个步骤。如下图:

数据包1的分析过程:

学DNS系列(八)DNS 客户端查询过程

数据包2的分析过程:

学DNS系列(八)DNS 客户端查询过程

上面是查询A记录的过程分析,同理,在查询NS记录或者PTR指针记录时也是类似的过程,只是查询的类型和结果不同而已,这里不再熬述。

DNS客户端在第一次查询某条记录时,会按照上述的过程进行,当再次查询时则会首先使用本地缓存信息来解析查询请求,如果有对应的记录则完成此次解析,否则就会向自身的DNS服务器发起查询。而这样的本地解析依据来源于2个地方,如下:

1、即为本地预先配置的主机名到地址的映射关系,也就是我们常提的HOSTS文件。

2、以及系统保存在查询缓存中的记录。

其实,从上面不难看出,客户端解析的过程也就是记录匹配的过程,如果有匹配的选项,则会返回相应信息给客户端,反之则提示无法找到相应记录。

但对于互联网上的DNS的查询和解析,就比这个复杂许多,下节会讨论有关迭代和递归查询的内容,敬请期待!

谢谢!

出处: http://jeffyyko.blog.51cto.com/28563/206891

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    评价:
    表情:
    验证码:点击我更换图片

    今日头条

    更多>>

    推荐图文

    • 一起学DNS系列(一)基础、概览
    • DNS服务器地址配置
    • 让windows自带的DNS服务支持泛解析
    • 深入研究DNS原理
    • 使用DNS服务器实现负载均衡
    • 免费升级DNS服务器提高电脑效率
    • 网络技术应用 使用DNS服务器实现负载均衡
    • 一起学DNS系列(六)详解正向、反向查找区域
    • 一起学DNS系列(三)理解计算机的多种DNS后缀选项
    Alexa - 客户服务 - 联系方法 - 招聘信息 - 友情链接 - 网站地图 - TAG标签 - RSS订阅
    Copyright © 2010-2012 JZQ8.COM. 建站吧|建站去吧 版权所有
    冀ICP备09002514号
    冀ICP备09002514号 网络报警 企业法人营业执照 中国互联网协会 支付宝付款 网银在线付款