域名解析系统DNS诊断命令nslookup详解【转】

转自:http://www.renhaibo.com/archives/29.htmlhtml

Ping指令咱们很熟悉了,它是一个检查网络情况的命令,在输入的参数是域名的状况下会经过DNS进行查询,但只能查询A记录和CNAME(别名)记录,还会返回域名是否存在,其余的信息都是没有的。若是你须要对DNS(域名解析系统)的故障进行排错就必须熟悉另外一个强大的命令-nslookup,Nslookup能够用来诊断域名解析系统 (DNS) 的基础结构信息,能够指定查询的类型,能够查到DNS记录的生存时间,还能够指定使用那个DNS服务器进行解释,该命令在安装 TCP/IP 协议后方可使用。数据库

 

下面以海波博客的域名http://www.renhaibo.com为例,详细介绍nslookup命令在命令提示符(DOS)下的用法:缓存

1、查询IP地址服务器

nslookup能够方便地查询到域名对应的IP地址,包括A记录和CNAME记录,若是查到的是CNAME记录还会返回别名记录的设置状况。网络

用法格式:nslookup 域名,如图:
http://www.renhaibo.com/archives/29.htmldom

回车后有三种不一样的结果:工具

1.A记录的返回,如图:
http://www.renhaibo.com/archives/29.html
前面两行是您电脑所使用的DNS服务器名及其IP地址,出错也能够不理会,重点是最后的两行是renhaibo.com的IP地址是74.53.25.162,请注意,即便renhaibo.com的主机没有在线也一样可以返回结果。操作系统

2.别名记录(CNAME)的返回状况,如图:
http://www.renhaibo.com/archives/29.html
这就显示出和ping命令不一样了,请看查看CNAME记录的结果。因为CNAME和A记录最后都是活的IP地址,因此通常状况下二者是等同看待的,命令的格式相同。此次nslookup返回了三行信息,前两行显示这是一个CNAME记录,对应的域名和IP地址。最后显示的就是目标域名, 并注明是Alias(别名)。命令行

3.域名不存在的状况,如图:
http://www.renhaibo.com/archives/29.html
最后一行的英文表示目标域名不存在,也多是:No response from server。你选择不一样的域名商或不一样的DNS解析系统,返回的结果也可能有差别,但大同小异。server

2、查询其它类型的域名

咱们的域名通常还配置了其余类型的记录,如MX邮件服务器记录,查看解析是否正常,这时候用ping命令就不行了。邮件服务器只能发信不能收信,是域名解析的问题仍是其余的问题,Ping命令的检查只能让你误入歧途。nslookup这时候能够模拟你的其余碰见服务器进行域名解析的状况。咱们须要在nslookup上加上适当的参数。指定查询记录类型的指令格式以下:nslookup –qt=类型 目标域名(注意qt必须小写)

如下是能够用的类型的格式(不区分大小写),仅提供经常使用的MX和NS的截图:

1.A 地址记录(Ipv4)

2.AAAA 地址记录(Ipv6)

3.AFSDB Andrew文件系统数据库服务器记录(不懂)

4.ATMA ATM地址记录(不是自动提款机)

5.CNAME 别名记录

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

7.ISDN 域名对应的ISDN号码

8.MB 存放指定邮箱的服务器

9.MG 邮件组记录

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

11.MR 更名的邮箱记录

12.MX 邮件服务器记录
http://www.renhaibo.com/archives/29.html
注意:preference为优先级,该数值越小则优先级越高。

13.NS 名字服务器记录
http://www.renhaibo.com/archives/29.html

14.PTR 反向记录(从IP地址解释域名)

15.RP 负责人记录

16.RT 路由穿透记录

17.SRV TCP服务器信息记录

18.TXT 域名对应的文本信息

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

3、指定使用的DNS解析服务

默认状况下nslookup使用的是咱们在本机TCP/IP配置中的DNS服务器进行查询,但有时候咱们须要指定一个特定的服务器进行查询试验。此时咱们不须要更改本机的DNS配置,只要在命令后面加上指定的服务器IP或者域名就能够了。这个参数在咱们对一台指定服务器排错是很是必要的,另外咱们能够经过指定服务器直接查询受权服务器的结果避免其余服务器缓存的结果。

命令格式以下:nslookup [-qt=类型] 目标域名 指定的DNS服务器IP或域名

如咱们使用河北电信的另外一个DNS服务器:219.146.0.130查询renhaibo.com的NS记录,全部的二级域名的NS记录都存放在顶级域名服务器中,这是最权威的解释。注意此次没有非受权结果的提示。对于二级域名的NS记录查询来讲这确定是受权结果。顶级域名服务器的名称是ns57.domaincontrol.com,ns58.domaincontrol.com等2台服务器。当咱们修改域名的NS记录的时候能够经过上述查询知道修改的结果是否是已经在顶级域名服务器上生效。不过即便已经生效也可能不能正常解释,还有缓存时间的问题,详查下文。

返回如图:
http://www.renhaibo.com/archives/29.html

4、检查域名的缓存时间

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

格式:nslookup –d [其余的参数] 目标域名
http://www.renhaibo.com/archives/29.html
咱们忽略其余的,看看Got answer后面几行,包括了一个ttl数值。这个数值就是域名记录的生存时间。

这种查询将整个DNS数据包的全部部分都揭示出来,你们能够看到DNS实际上并非想象中那么简单的东西。具体的各部分解释你们能够去看看相关的标准文档。须要提醒你们的是必定要找到ANSWER:的内容,其余的东西都不是描述最终的结果。上面就不止一个地方有TTL数值。

nslookup的命令还有许多其余参数,这里就介绍经常使用的这么几个。另外若是不喜欢命令行方式的话,还有图形界面的nslookup工具,本身去网上搜索一下吧。

转载请注明,转自:RenHaibo.com
本文连接地址:http://www.renhaibo.com/archives/29.html

相关文章
相关标签/搜索