当前位置:文档之家› Nslookup命令详解 (域名DNS诊断)

Nslookup命令详解 (域名DNS诊断)

Nslookup显示可用来诊断域名系统(DNS)基础结构的信息。

只有在已安装TCP/IP 协议的情况下才可以使用Nslookup 命令行工具。

语法nslookup [-option][hostname][server]Nslookup 有两种模式:交互式和非交互式。

要随时中断交互式命令,请按CTRL+C。

要退出,请键入exit。

要将内置命令当作计算机名,请在该命令前面放置转义字符(\)如果查找请求失败,nslookup 将打印错误消息。

下表列出可能的错误消息。

错误消息说明Timed out 重试一定时间和一定次数之后,服务器没有响应请求。

可以通过set timeout 子命令设置超时期。

而利用set retry 子命令设置重试次数。

No response from server 服务器上没有运行DNS 名称服务器。

No records 尽管计算机名有效,但是DNS 名称服务器没有计算机当前查询类型的资源记录。

查询类型使用set querytype 命令指定。

Nonexistent domain 计算机或DNS 域名不存在。

Connection refused or Network is unreachable无法与DNS 名称服务器或指针服务器建立连接。

该错误通常发生在ls 和finger 请求中。

Server failure DNS 名称服务器发现在其数据库中内部不一致而无法返回有效应答。

Refused DNS 名称服务器拒绝为请求服务。

Format error DNS 名称服务器发现请求数据包的格式不正确。

可能表明nslookup 中存在错误。

范例每个命令行选项均由连字符(-)后紧跟命令名组成,有时是等号(=)后跟一个数值。

例如,要将默认的查询类型更改为主机(计算机)信息,并将初始超时更改为10秒,请键入:nslookup -querytype=hinfo-timeout=10概要Nslookup.exe 是命令行管理工具,用于测试或解决DNS 服务器问题。

此工具是通过“控制面板”与TCP/IP 协议一起安装的。

本文包含使用Nslookup.exe 的若干提示。

更多信息要使用Nslookup.exe,请注意以下方面:•TCP/IP 协议必须安装在运行Nslookup.exe 的计算机上。

•在Microsoft TCP/IP 属性页的DNS 选项卡的“DNS服务搜索顺序”字段中必须至少指定一个DNS 服务器。

•如果已经使用Microsoft TCP/IP 属性页DNS 选项卡上定义的“域后缀搜索顺序”(Domain Suffix Search order )中的搜索列表,将不会发生抽取操作。

查询将被附加到列表中指定的域后缀中。

要避免使用搜索列表,请始终使用“完全合格的域名称”(即,在名称中添加尾随点)。

Nslookup.exe 可以在两种模式下运行:交互式和非交互式。

当需要返回单块数据时,请使用非交互式模式。

非交互模式的语法如下:nslookup [-option][hostname][server]要在交互模式下启动Nslookup.exe,只需在命令提示符下输入nslookup:C:\>nslookupDefault Server:Address:10.0.0.1>在命令提示符下输入help 或?将生成可用的命令列表。

在命令提示符下输入的任何内容,如果它不是有效命令,则假设它是主机名,尝试使用默认服务器来解析它。

要中断交互命令,请按CTRL+C。

要退出交互模式并返回到命令提示符下,并在命令提示符下输入exit。

以下是帮助输出,其中包含选项的完整列表:Commands:(identifiersare shown in uppercase,[]means optional)NAME -print info about the host/domain NAME using defaultserverNAME1NAME2-as above,but use NAME2as serverset OPTION -set an optionall -print options,current server and host[no]debug-print debugging information[no]d2-print exhaustive debugging information[no]defname-append domain name to each query[no]recurse-ask for recursive answer to query[no]search-use domain search list[no]vc-always use a virtual circuitdomain=NAME -set default domain name to NAMEsrchlist=N1[/N2/.../N6]-set domain to N1and search list to N1,N2, and so onroot=NAME -set root server to NAMEretry=X -set number of retries to Xtimeout=X -set initial time-out interval to X secondstype=X -set query type (forexample,A,ANY,CNAME,MX,NS,PTR,SOA,SRV)querytype=X -same as type[no]msxfr-use MS fast zone transferixfrver=X -current version to use in IXFR transfer requestserver NAME -set default server to NAME,using current default server lserver NAME -set default server to NAME,using initial serverfinger [USER]-finger the optional NAME at the current default host root -set current default server to the rootls [opt]DOMAIN [>FILE]-list addresses in DOMAIN (optional:output to FILE)-a-list canonical names and aliases-d-list all records-tTYPE -list records of the given type (forexample,A,CNAME,MX,NS,PTR,and so on)view FILE -sort an 'ls'output file and view it with pgexit -exit the program通过在命令提示符下运行set 命令,可以在Nslookup.exe 中设置许多不同的选项。

要得到这些选项的完整列表,只需输入set all。

请参见以上内容,在set 命令下,得到可用选项的打印输出。

查找不同的数据类型要在域名空间中查找不同的数据类型,请在命令提示符下使用set type 或set q[uerytype]命令。

例如,要查询邮件交换器数据,请输入:C:\>nslookupDefault Server:Address:10.0.0.1>set q=mx>mailhostServer:Address:10.0.0.1直接从另一个名称服务器中进行查询要直接查询另一个名称服务器,请使用server 或lserver 命令切换到该名称服务器。

lserver 命令使用本地服务器得到要切换的服务器地址,而server 命令使用当前默认服务器得到该地址。

例如:C:\>nslookupDefault Server:Address:10.0.0.1>server 10.0.0.2Default Server:Address:10.0.0.2>使用Nslookup.exe 转移整个区域使用ls 命令,Nslookup 可以用于转移整个区域。

查看远程域中的所有主机,这是有用的。

ls 命令的语法如下:ls [-a |d |t type]domain [>filename]不带参数使用ls 命令将返回所有地址和名称服务器数据的列表。

-a参数将返回别名和正式名称,-d将返回所有数据,而-t将按类型进行筛选。

例如:nameserver1A 10.0.0.1nameserver2A 10.0.0.2>在DNS 服务器中可以按块转移区域,以便只有授权的地址和网络才可以执行此操作。

如果设置了区域安全,将返回以下错误消息:Query refusedNslookup.exe 的疑难解答默认服务器超时当启动Nslookup.exe 工具时,以下错误可能出现:***Can't find server name for address w.x.y.z :Timed out备注:w.x.y.z 是在“DNS服务搜索顺序”列表中列出的第一个DNS 服务器。

***Can't find server name for address 127.0.0.1:Timed out第一个错误指出不能连接DNS 服务器,或者该计算机上的服务没有运行。

要解决此问题,启动该服务器上的DNS 服务,或检查可能存在的连接问题。

第二个错误指出在“DNS服务搜索顺序”列表中还没有定义服务器。

要解决此问题,请将有效DNS 服务器的IP 地址添加到此列表中。

启动Nslookup.exe 时找不到服务器名启动Nslookup.exe 工具时,可能出现以下错误:***Can't find server name for address w.x.y.z:Non-existent domain当没有名称服务器IP 地址的PTR 记录时,会出现此错误。

当Nslookup.exe 启动时,它执行反向搜索,以得到默认服务器的名称。

如果没有PTR 数据,则返回此错误消息。

要解决此问题,请确保反向搜索区域存在,并包含名称服务器的PTR 记录。

Nslookup 在子域上无法执行当在子域上执行查询或进行区域转移时,Nslookup 可能返回以下错误:Non-existent domainNon-existent domain在DNS Manager 中,可以在主区域下添加一个新域,这样就创建了一个子域。

相关主题