关于客户计算机访问DNS请求的工作流程

[原创]关于客户计算机访问DNS请求的工作流程

by it.server  on Winmag.com.cn

--------------------------------------------------------------------------------
 
看了devilman关于DNS的不完全总结一文,心里也怪痒的,我也来跟上一帖作为《关于DNS的不完全总结》查询子集的一个补充!要知道作为MS的三大服务之一的DNS,仅在Resource Kit里就有近200页的介绍,这里还需要大家对这些基础性概念和服务进一步补充,能够使大家更全面的了解!废话少说,让我们来看一看,本文的“中心思想”
 --客户计算机访问DNS请求对AA.Microsoft.COM文件服务器进行访问工作的工作流程
如图


详解

1、客户计算机使用LAN Manager Workstation 和网络文件系统MRXSMB.SYS共同建立一个SMB消息,与AA.Microsoft.COM建立会话。

2、重定向器将该消息交给TCPIP.SYS进行打包传输。TCPIP.SYS与NETBT.SYS一起为此SMB建立一个数据报,面向会话的SMB通信使用TCP139端口。

3、TCPIP.SYS需要解析该目标计算机的IP地址,于是使用内含的DNS解析器;同时NETBT.SYS也将使用其自身的服务进行查找该计算机名字。双方同时访问各自的缓存空间。如果没有的话,就进入各自的下一步。其中Netbt.sys见前面的WINS服务。(在名称访问过程中,TCPIP.SYS和NETBT.SYS是同时在查找名称的解析,谁先找到,就使用谁的,没有被用到的将被存入缓存中。)

4、DNS解析器将向其指向的本地DNS服务器(LDNS)发出递归查询请求。LDNS接受到相关信息后,在本机缓存中查找相关信息,找到后,……直接反馈客户机。如果没有找到,就……在本地的区域中查找,查看自己是否是对于Microsift.con的一个权威服务器。如果是,就在其中查找主机AA记录。如果找不到,将返回“资源未找到”。DNS解析器从LDNS得到这个消息将不再进行进一步查找。

5、如果LDNS不是一个对于此区域的一个权威管理器,就将信息发送到根域服务器上,全球有13台根域服务器。

6、根域服务器没有任何主机记录,当然不包含AA.Microsoft.COM的记录,但是INTERNIC是Com的SOA,这就是标示其拥有名称服务器NS的记录,这些NS纪律指向被委派的区域的DNS服务器,它们存有直接位于Com 下面的域的区域表。但是根不接受递归查询,因此他将在NS记录中搜索并找到一个最接近的COM管理的服务器及其IP地址回返给LDNS。

7、LDNS服务器将向管理Com的DNS发出迭代请求,请求Microsof.com的A记录。该DNS将把最接近的Microsoft.com的DNS地址反馈给LDNS。

8、LDNS将再次访问Microsoft.comDNS服务器,并发出请求。该DNS服务器将把AA的地址反馈给LDNS

9、LDNS将此信息反馈给客户端计算机,并将该信息保存在自己的缓存列表中,以北后来再使用。

10、本地的DNS解析器收到该信息后,将使用ARP找到与该记录对应的MAC地址。

11、TCPIP.SYS将把IP包和MAC地址交给NDIS(Network Driver Interface System)网络微驱动模块。

12、NDIS将建立与目标计算机之间的连接,并传输数据。

13、同时TCPIP.SYS还将该记录保存给DNS解析器缓存,按照规定的TTL值进行保存。

基本完成,至于涉及到流程细节中更全面的过程,还希望大家加以补充!
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值