nslookup
  

王龙龙 9172人觉得有帮助

{{ttag.title}}
nslookup是一种网络管理命令行工具,可用于查询DNS域名和IP地址输入指令nslookup默认服务器和Address是当前上网所用的DNS服务器域名和地址A记录A(Address)记录指的是用来指定主机名或域名对应的IP记录。在提示符>后直接输入域名,可以查看该域名的A记录(也可以用set type=a指令设置):MX记录MX(mail exchanger)记录,邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。输入set type=mx,再输入域名可查询mx类型记录MX perference = 10 指MX记录的优先级NS记录NS(nameserver)记录,用来指定改域名由那个DNS服务器来进行解析。先输入set type=ns再输入域名CNAME记录cname记录是别名记录,也成为规范名字。这种记录允许将多个名字映射到同一台计算机输入set type=cname可以查询


用了域名服务器后,经常要查询域名的解析情况,nslookup是常用工具之一,无论是linux或者是window下都有这个工具,用好它对平常的域名解析情况,或者对域名服务器的维护都有帮助。

nslookup 命令以两种方式查询域名服务器。交互式模式允许查询名称服务器获得有关不同主机和域的信息,或打印域中主机列表。在非交互式模式,打印指定的主机或域的名称和请求的信息。

当没有给出参数时进入交互式模式,或者当第一个参数是 -(减号)并且第二个是主机名或名称服务器的因特网地址时,nslookup 命令进入交互式模式。当没有给出参数时,命令查询缺省名称服务器。-(减号)调用可选的子命令(-Option... 变量)。除了 set 命令,这些命令在命令行指定并且必须在nslookup 命令参数之前。set 子命令选项能在用户主目录的 .nslookuprc 文件有选择的指定。

当第一个参数是正在搜索的主机的名称或地址,nslookup 命令在非交互式模式下执行。在此情况下,主机名或名称服务器的因特网地址是可选的。

非交互式命令使用缺省名称服务器或由 NameServer 参数指定的名称服务器为指定的主机搜索信息。如果Host 参数指定因特网地址并且查询类型是 A 或 PTR,则返回主机名称。如果 Host 参数指定名称并且名称没有结尾句点,缺省的域名追加到名称后。不在当前域中查找主机,在名称后追加单一的句点。

注:如果在用户主目录的 .nslookuprc 文件指定,set 子命令的domain、srchlist、defname 和 search 选项能影响非交互式命令的行为。
子命令

下列命令可以随时输入 Ctrl-C 按键顺序终止。要退出,请输入 Ctrl-D 按键顺序或输入 exit。将内置命令作为主机名,在它之前带转义字符 \。不能标识的命令解释为主机名。

下列子命令由 nslookup 命令标识:


finger [Name] [> FileName]finger [Name] [>> FileName]

在当前主机连接 finger 守护程序服务器。当前一个查询主机成功并且返回地址信息,如返回 set querytype=A 命令时,定义当前主机。Name 参数指定用户名,它是可选的。> 和 >> 字符可以用来重定向输出到新建或现有的文件。

server Domainlserver Domain

更改缺省服务器为 Domain 参数指定的值。lserver 子命令使用初始服务器查询有关域的信息。server 子命令使用当前的缺省服务器。如果未发现授权应答,则任何可能有应答的附加服务器名返回。

root

更改缺省服务器为 root 域名空间服务器。当前,使用主机 ns.nic.ddn.mil 。root 服务器名可以使用 set root 子命令更改。(root 子命令与 lserver ns.nic.ddn.mil子命令同义)。

ls [Option] Domain [> FileName]ls [Option] Domain [>>FileName]

为指定的 Domain 列出可获得的信息,有选择的创建或追加输出到 FileName 参数指定的文件。缺省输出包含主机名和它们的因特网地址。Option 参数的可能值是:
-t QueryType
列出指定类型的所有记录。缺省记录类型是 A。有效类型是:
A主机的因特网地址CNAME为别名规范名称HINFO主机 CPU 和操作系统KEY安全性密钥记录MINFO邮箱或邮件列表信息MX邮件交换器NS指定区域的名称服务器PTR如果查询是因特网地址则指向主机名;否则,指向其他信息SIG特征符记录SOA域的“start-of-authority”信息TXT文本信息UINFO用户信息WKS支持众所周知的服务-a列出域中主机的别名(与 -t CNAME 选项相同)。-d列出域中所有记录(与 -t ANY 选项同义)。-h列出域中 CPU 和操作系统信息(与 -t HINFO 选项同义)。-s列出域中众所周知的主机服务(与 -t WKS 选项同义)。
注: 当输出重定向到文件,每从服务器接收 50 条记录,打印散列标记。


view FileName

将以前 ls 命令的输出排序并且使用 more 命令将其列出。

help



?

显示命令的简要总结。

exit

退出程序。

set Keyword[=Value]

改变影响查询的状态信息。该命令可以在命令行指定或有选择的在用户主目录的.nslookuprc 文件指定。有效的关键字是:
all显示频繁地使用的选项要设置的当前值。有关当前缺省服务器和主机的信息也显示。class=Value
更改查询类为下列之一。类指定信息的协议组。缺省值是 IN。
INInternet 类CHAOSChaos 类HESIODMIT Althena Hesiod 类ANY通配符(上面任意之一)[no]debug打开调试模式。缺省值是 nodebug (关闭)。[no]d2打开全面调试模式。缺省值是 nod2(关闭)。domain=Name更改缺省域名为 Name 参数指定的域名。缺省域名追加到查询请求,取决于defname 和 search 选项的状态。如果搜索列表在其名称中至少包含两部分则域搜索列表包含缺省域的父域。例如,如果缺省域是 CC.Berkeley.EDU,搜索列表是CC.Berkeley.EDU 和 Berkeley.EDU。使用 set srchlist 命令指定不同列表。使用 setall 命令显示列表。domain=Name 选项的缺省值是在系统的hostname、/etc/resolv.conf、或 LOCALDOMAIN 文件指定的值。srchlst=Name1/Name2/...
更改缺省域名为 Name1 参数指定的值,并且更改域搜索列表为Name1、Name2......参数指定的名称。可以指定由斜杠分开的六个名称的最大值。使用 set all 命令显示名称列表。缺省值是在系统的 hostname、/etc/resolv.conf或 LOCALDOMAIN 文件指定的值。

注:该命令覆盖缺省域名和 set domain 命令选项的搜索列表。
[no]defname追加缺省域名到单一的组成部分的查询请求(不包含句点的请求)。缺省值是defname (追加)。[no]search如果查询请求包含结尾句点以外的句点,追加域搜索列表中的域名到请求直到接收到应答。缺省值是 search。port=Value更改缺省 TCP/UDP 名称服务器端口为 Value 参数指定的数。缺省值是 53。querytype=Value

type=Value

更改信息查询为下列值之一。缺省值是 A。
A主机的因特网地址ANY任何可用的选项。CNAME为别名规范名称HINFO主机 CPU 和操作系统KEY安全性密钥记录MINFO邮箱或邮件列表信息MX邮件交换器NS为指定区域的命名服务器PTR如果查询因特网地址则指向主机名;否则,指向其他信息SIG特征符记录SOA域的“start-of-authority”信息TXT文本信息UINFO用户信息WKS支持众所周知的服务[no]recurse如果没有信息则通知名称服务器查询其他服务器。缺省值是 recurse。retry=Number设置请求企图重试次数值为 Number 参数指定的值。当请求的应答没有在 settimeout 命令指定的时间帧之内接收,则超时周期加倍,请求重新发送。该子命令控制超时之前请求发送的次数。缺省值是 4。root=Host更改 root 服务器名称为 Host 参数指定的名称。缺省值是 ns.nic.ddn.mil。timeout=Number更改初始等待应答超时间隔为 Number 参数指定的秒数。缺省值是 5 秒。[no]vc当发送请求到服务器使用虚拟电路。缺省值是 novc(没有虚拟电路)。[no]ignoretc忽略数据包截断错误。缺省值是 noignoretc(不忽略)。

示例

更改缺省查询类型类型为主机信息(HINFO)并且初始超时时间为 10 秒,请输入:

nslookup -query=hinfo -timeout=10

设置域和搜索列表为三个名称,lcs.MIT.EDU、ai.MIT.EDU 和 MIT.EDU,请输入:

nslookup -set srchlist=lcs.MIT.EDU/ai.MIT.EDU/MIT.EDU
该命令覆盖缺省域名和 set domain 命令的搜索列表。使用 set all 命令显示列表。

确定名称是否指定主机、域、或其他实体,请输入:

nslookup -querytype=ANY austin.ibm.com
nslookup 命令返回有关名称 austin.ibm.com 的所有可用的信息,包括权限语句(SOA)、名称服务器、邮件交换器和主机因特网地址信息,如下:

Server: benames.austin.ibm.comAddress: 9.3.199.2 austin.ibm.com origin = ausname1.austin.ibm.com mail addr = brian.chriss.austin.ibm.com serial=1993081210,refresh=3600,retry=300,expire=604800, min=86400 austin.ibm.com nameserver = ausname1.austin.ibm.com austin.ibm.com
nameserver = bb3names.austin.ibm.com austin.ibm.com nameserver = benames.austin.ibm.com austin.ibm.com nameserver = b45names.austin.ibm.com austin.ibm.com nameserver = bbcnames.austin.ibm.com austin.ibm.com nameserver = netmail.austin.ibm.com austin.ibm.com
preference = 10, mail exchanger = netmail.austin.ibm.com austin.ibm.com inet address = 129.35.208.98 ausname1.austin.ibm.com inet address = 129.35.17.2 bb3names.austin.ibm.com inet address = 129.35.208.99 benames.austin.ibm.com inet address = 9.3.199.2 b45names.austin.ibm.com
inet address = 129.35.49.2 bbcnames.austin.ibm.com inet address = 129.35.17.68 netmail.austin.ibm.com inet address = 129.35.208.98

要在 opus 主机上执行非交互式查询,请输入:

nslookup opus
nslookup 命令与 host 命令的应答相同。命令返回域名和 opus 主机的因特网地址,如下:

Name: opus.austin.ibm.com Address: 129.35.129.223
如果主机 opus 已经是名称服务器(以空 /etc/resolv.conf 文件正在运行 named 守护程序的主机),下列信息将会显示:

Server: loopback Address: 0.0.0.0

退出状态

当查询请求不成功,则 nslookup 命令返回下列错误消息之一:


Timed Out

表示服务器在超出指定的重试次数后不响应请求。

No Response from Server

表示名称服务器不在服务器上运行。

No Records

表示服务器没有主机的指定查询类型的资源记录,即使主机名有效。

Non-Existent Domain

表示主机或域名不存在。

Connection Refused

表示在查询时,不能连接到名称或远程用户信息服务命令服务器。该错误是与 ls 和 finger 请求有关的典型错误。

Network Is Unreachable

表示在查询时,不能连接到名称或远程用户信息服务命令服务器。该错误是与 ls 和 finger 请求有关的典型错误。

Server Failure

表示名称服务器遇到内部矛盾并且不能返回有效的应答。

Refused

表示名称服务器拒绝请求服务。

Format Error

表示名称服务器拒绝数据包请求因为格式不正确。

文件


/usr/bin/nslookup

包含 nslookup 命令。

/etc/resolv.conf

包含初始域名和名称服务器地址。

$HOME/.nslookuprc

包含用户的初始选项。

HOSTALIASES

包含主机别名。

LOCALDOMAIN

包含覆盖的缺省域。


***值得提醒的是命令行参数中的[- name server]上的-后要有一空格,实际上 - 是第一个参数,曾经许多人都觉得这个参数不对,不能在命令行指定域名服务器,实际上都是这个原因。这个用法对检查某个域名服务器的解析是否正确很有用。比如三个运营商在当地的域名解析是否正确,就不用采用每次都修改电脑的域名服务器来实现,只要在命令行加上这个参数就行。
***nslookup不能查询dns的递归或者迭代,功能也比dig弱。

打赏鼓励作者,期待更多好文!

打赏
4人已打赏

新手078326 发表于 2023-6-29 14:23
  
感谢分享~联网获取还是很方便的。
小鱼儿 发表于 2023-7-1 10:18
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
小西北 发表于 2023-7-1 10:19
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
鲤鲤 发表于 2023-7-1 10:20
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
蔺嘉宾 发表于 2023-7-1 10:21
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
小德 发表于 2023-7-1 10:25
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
小小胖 发表于 2023-7-1 10:26
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
德德 发表于 2023-7-1 10:30
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
飞飞侠 发表于 2023-7-1 10:31
  

楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
技术咨询
功能体验
产品连连看
新版本体验
GIF动图学习
2023技术争霸赛专题
自助服务平台操作指引
标准化排查
运维工具
通用技术
秒懂零信任
技术晨报
信服课堂视频
用户认证
安装部署配置
安全攻防
SDP百科
设备维护
深信服技术支持平台
社区帮助指南
答题自测
每日一记
玩转零信任
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人