“五分钟学命令系列”之十七《nslookup命令》

2015年10月16日15:52:13 评论 7,106

nslookup命令,是Linux里非常常用的网络命令,简而言之就是“查DNS信息用的"。他有两种工作模式,即“交互模式”和“非交互模式”。

如果你的Linux系统没有nslookup命令,直接yum install bind-utils就可以。

一、直接查询域名

# nslookup www.baidu.com

Server: 223.5.5.5   ##上连的DNS服务器

Address: 223.5.5.5#53  ##上连的DNS服务器的IP地址与端口号

Non-authoritative answer:   ##非权威答案,即从上连DNS服务器的本地缓存中读取出的值,而非实际去查询到的值

www.baidu.com canonical name = www.a.shifen.com.   ##说明www.baidu.com有个别名叫www.a.shifen.com

Name: www.a.shifen.com   ##域名www.a.shifen.com

Address: 115.239.211.112   ##对应的IP地址之一

Name: www.a.shifen.com

Address: 115.239.210.27   ##对应的IP地址之二

二、指定DNS查询域名

nslookup先会连接到当前的默认上连DNS服务器去查询domain的IP地址,并将之作为当前默认上连DNS服务器。如果用server[domain]命令,nslookup则会通过domain指定的DNS作为上连DNS

# nslookup

www.baidu.com

>Server: 223.5.5.5

Address: 223.5.5.5#53

Non-authoritative answer:

www.baidu.com canonical name = www.a.shifen.com.

Name: www.a.shifen.com

Address: 115.239.211.112

Name: www.a.shifen.com

Address: 115.239.210.27

>server 114.114.114.114  ##更改了上连的DNS服务器地址

Default server: 114.114.114.114

Address: 114.114.114.114#53

>www.baidu.com  ##以更改后的上连DNS服务器来查询

Server: 114.114.114.114

Address: 114.114.114.114#53

Non-authoritative answer:

www.baidu.com canonical name = www.a.shifen.com.

Name: www.a.shifen.com

Address: 119.75.218.70

Name: www.a.shifen.com

Address: 119.75.217.109

PS :可以看到两个不同的上连DNS服务器返回的IP地址是不同的

三、列出常用选项的当前设置值

使用set all命令可以列出nslookup工具的常用选项的当前设置值

>set all

Default server: 223.5.5.5

Address: 223.5.5.5#53

Set options:

novc nodebug nod2

search recurse

timeout = 0 retry = 3 port = 53

querytype = A class = IN

srchlist = hostname

四、开启调试模式

可以用来设置是否进入调试模式。使用命令set debug,则会进入到调试模式,查询过程中会显示完整的响应包以及其中的交互包。

>set debug

>www.baidu.com

Server: 223.5.5.5

Address: 223.5.5.5#53

------------

QUESTIONS:

www.baidu.com, type = A, class = IN

ANSWERS:

-> www.baidu.com

canonical name = www.a.shifen.com.

-> www.a.shifen.com

internet address = 115.239.211.112

-> www.a.shifen.com

internet address = 115.239.210.27

AUTHORITY RECORDS:

ADDITIONAL RECORDS:

------------

Non-authoritative answer:

www.baidu.com canonical name = www.a.shifen.com.

Name: www.a.shifen.com

Address: 115.239.211.112

Name: www.a.shifen.com

Address: 115.239.210.27

PS:使用命令set d2则会进入高级调试模式,会输出很多nslookup内部工作的信息,包括了许多函数调用信息

五、更改默认DNS端口

DNS默认的服务端口是53。当某些特殊情况,此端口改变时,可以通过命令set port=[value]来设置

六、设置信息查询类型

默认情况下,nslookup是查询域名所对应的A记录,而如果你想查询其对应的MX记录等信息时,就需要专门设置type值了。使用命令set querytype=[value]

常见的type值如下:

A:查看主机的IPv4地址

AAAA:查看主机的IPv6地址

ANY:查看关于主机域的所有信息

CNAME:查找与别名对应的正式名字

HINFO:查找主机的CPU与操作系统类型

MINFO:查找邮箱信息

MX:查找邮件交换信息

NS:查找主机域的域名服务器

PTR:查找与给定IP地址匹配的主机名

RP:查找域负责人记录

SOA:查找域内的SOA地址

UINFO:查找用户信息

weinxin
聂扬帆博客
一个分享IT运维相关工作经验和实战技巧的个人博客

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: