如本文第2.4节所述,域名系统(DNS)将主机名转换为IP地址,在互联网基础设施中发挥着关键作用。在本实验中,我们将仔细研究DNS的客户端。回想一下,客户端在DNS中的角色相对简单—客户端向其本地DNS服务器发送查询,并收到响应。如教科书中的图2.19和图2.20所示,很多事情可以“隐藏”进行,对DNS客户端是不可见的,因为分层DNS服务器相互通信,以递归或迭代地解析客户端的DNS查询。然而,从DNS客户机的角度来看,该协议非常简单——向本地DNS服务器制定查询,然后从该服务器接收响应。
在开始本实验之前,您可能希望通过阅读本文第2.4节来复习DNS。特别是,您可能希望查看有关本地DNS服务器、DNS缓存、DNS记录和消息以及DNS记录中的TYPE字段的资料。
1. 网路资讯查询
在本实验中,我们将广泛使用nslookup工具,该工具目前在大多数Linux/Unix和Microsoft平台上都可以使用。要在Linux/Unix中运行nslookup,只需在命令行中键入nslookup命令。要在Windows中运行它,打开命令提示符并在命令行上运行nslookup。
nslookup工具在其最基本的操作中,允许运行该工具的主机在指定的DNS服务器上查询一条DNS记录。查询的DNS服务器可以是根DNS服务器、顶级域DNS服务器、权威DNS服务器或中间DNS服务器(这些术语的定义参见教科书)。为了完成此任务,nslookup向指定的DNS服务器发送DNS查询,并从同一DNS服务器接收DNS应答,并显示结果。

上面的屏幕截图显示了三个独立的nslookup命令的结果(显示在Windows命令提示符中)。在本例中,客户端主机位于布鲁克林理工大学的校园内,其中默认的本地DNS服务器是DNS -prime.poly.edu。当运行nslookup时,如果没有指定DNS服务器,则nslookup将查询发送到默认的DNS服务器,在本例中是dnsprime.poly.edu。考虑第一个命令:
nslookup www.mit.edu
换句话说,这个命令的意思是“请给我发送主机www.mit.edu的IP地址”。如截图所示,该命令的响应提供了两条信息:(1)提供应答的DNS服务器的名称和IP地址;(2)答案本身,即www.mit.edu的主机名和IP地址。虽然响应来自理工大学的本地DNS服务器,但很有可能这个本地DNS服务器迭代地联系了其他几个DNS服务器来获得答案,如教科书第2.4节所述。
现在考虑第二个命令:
nslookup –type=NS mit.edu
在本例中,我们提供了选项“type=NS”和域“mit.edu”。这会导致nslookup向默认的本地DNS服务器发送type-NS记录的查询。换句话说,这个查询说,“请把mit。edu的权威DNS主机名发给我”。(当不使用type选项时,nslookup使用默认值,即查询A类记录。)在上面的屏幕截图中显示的答案首先指示了提供答案的DNS服务器(这是默认的本地DNS服务器)以及三个MIT名称服务器。每个服务器都是MIT校园主机的权威DNS服务器。然而,nslookup还表明答案是“非权威的”,这意味着该答案来自某些服务器的缓存,

本文介绍了DNS在互联网中的作用,详细讲解了nslookup工具的使用,包括查询不同类型记录和指定DNS服务器。通过Wireshark追踪DNS,展示了DNS查询和响应的过程,以及DNS缓存管理和IP配置的相关操作。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



