NSlookup最详细图文讲解

NSLookupNslookup(name server lookup)(域名查询):是一个用于查询Internet 域名信息或诊断DNS 服务器问题的工具.用来诊断 域名系统(DNS,DNS 是域名

NSLookup

Nslookup(name server lookup)(域名查询):是一个用于查询Internet 域名信息或诊断DNS 服务器问题的工具.

用来诊断 域名系统(DNS,DNS 是域名系统 (Domain Name System)) 基础结构的信息

nslookup 最简单的用法就是查询域名对应的 IP 地址,包括 A 记录和

CNAME 记录,如果查到的是 CNAME记录还会返回别名记录的设置情况。

可以指定查询的类型

可以查到DNS 记录的生存时间

可以指定使用那个DNS 服务器进行解释

如何用本地计算机查询DNS 记录?

nslookup 的语法为 nslookup –qt=类型 目标域名

(注意qt 必须小写,qt 代表query type)

类型主要有:

A 地址记录(Ipv4)

AAAA 地址记录(Ipv6)

CNAME 别名记录

,

HINFO 硬件配置记录,包括CPU 、操作系统信息

ISDN 域名对应的ISDN 号码

MB 存放指定邮箱的服务器

MG 邮件组记录

MINFO 邮件组和邮箱的信息记录

MR 改名的邮箱记录

MX 邮件服务器记录

NS 名字服务器记录

PTR 反向记录

RP 负责人记录

SRV TCP服务器信息记录

TXT 域名对应的文本信息

如何使用指定DNS 服务器查询?

语法为 nslookup -qt=类型 目标域名 指定的DNS 服务器IP 或域名 例子:nslookup -qt=A tool.chinaz.com 8.8.8.8

qa 段标记

语法为 nslookup –qt=类型 目标域名(注意qt 必须小写)

类型主要有:

A 地址记录(Ipv4)

AAAA 地址记录(Ipv6)

AFSDB Andrew 文件系统数据库服务器记录

ATMA ATM地址记录

CNAME 别名记录

HINFO 硬件配置记录,包括CPU 、操作系统信息

ISDN 域名对应的ISDN 号码

MB 存放指定邮箱的服务器

MG 邮件组记录

MINFO 邮件组和邮箱的信息记录

MR 改名的邮箱记录

MX 邮件服务器记录

NS 名字服务器记录

,

PTR 反向记录

RP 负责人记录

RT 路由穿透记录

SRV TCP服务器信息记录

TXT 域名对应的文本信息

X25域名对应的X.25地址记录

“Non-suthoritativeanswer:”,这不是一个授权的答案

指定使用的名字服务器

在默认情况下 nslookup 使用的是我们在本机 TCP/IP 配置中的 DNS 服务器进行查询,但有时候我们需要指定一个特定的服务器进行查询试验。这时候我们不需要更改本机的 TCP/IP 配置,只要在命令后面加上

指定的服务器 IP 或者域名就可以了。这个参数在我们对一台指定服务器排错是非常必要的,另外我们可以

通过指定服务器直接查询授权服务器的结果避免其他服务器缓存的结果。命令格式如下:

,

nslookup [-qt=类型] 目标域名 指定的 DNS 服务器 IP 或域名

这个命令直接从顶级域名服务器查询NS 记录。所有的二级域名的 NS 记录都存放在顶级域名服务器中,这是最权威的解释。注意这次没有非授权结果的提示。对于二级域名的 NS 记录查询来说这肯定是授权结果。顶级域名服务器的名称是a 到j.gtld-servers.net 共十台服务器。(gtld 是 Global Top Level Domain 的缩写) 。当我们修改域名的 NS 记录的时候可以通过上述查询知道修改的结果是不是已经在顶级域

名服务器上生效。不过即使已经生效也可能不能正常解释,注意我在上一篇文章中提到的缓存时间的问题

检查域名的缓存时间

检查域名的缓存时间需要我们使用一个新的参数:-d

格式如下:

,

nslookup –d [其他的参数] 目标域名 [指定的服务器地址]

我们忽略其他的看看 Got answer 后面几行,包括了一个 ttl 数值。这个数值就是域名记录的生存时间。

这种查询将整个 DNS 数据包的所有部分都揭示出来,大家可以看到 DNS 实际上并不是想象中那么简单

的东西。具体的各部分解释大家可以去看看相关的标准文档。需要提醒大家的是一定要找到 ANSWER:的内

容,其他的东西都不是描述最终的结果。上面就不止一个地方又 TTL 数值。

,

域名解释过程的模拟

我们现在来模拟一下一台 DNS 服务器接到一个不是自己管理的域的域名解释过程。回忆一下第一篇文

章的过程:

首先我们会询问根服务器,然后根服务器会让我们去找对应的顶级服务器。如果查询的是 oray.net,

就会要求我们去找 net 的服务器。

看看下面的范例:

这里我们让 21cn.com 的服务器解释 www.oicp.net 的域名,很显然这台服务器不用有这个域,需要询

问根服务器。一般情况下 DNS 服务器会帮我们完成全部的过程。这种解释方式我们称之为递归解析,为了

让大家看到这个过程我家了一个参数让 21cn.com 的服务器不要这样做。这个参数是-norecurse 。这样理论

上 21cn.com 会让我们去问根服务器,不过由于它已经缓存了顶级服务器的记录,所以直接返回了管理 net

的顶级服务器记录。实际上大部分的查询都不需要从根服务器开始。大家看到了所有的顶级域名服务器的

地址都被返回。

我们随便选择一个在进行查询。

这次顶级服务器就返回了 oicp.net 的服务器地址记录的。然后我们就向这些记录之一进行查询,一定

,

能够得到答案。可能是一个地址、一个 CNAME 记录或者告诉你不存在。

nslookup 的命令就介绍到这里,其实 nslookup 还有许多其他参数。不过常用的就俄这么几个,另外

如果大家不喜欢命令行方式的话。还有几个图形界面的 nslookup 功能的工具。不过大家还是需要了解域名

解释都有些什么才能够正确使用这些工具。

标签: