您当前的位置:首页 > 计算机 > 系统应用 > Linux

Ubuntu常用必会Nslookup指令

时间:03-26来源:作者:点击数:

Nslookup是什么?

它是一个很小但功能非常强大的网络管理命令行软件。Nslookup命令可用于当前主流的计算机操作系统,如Windows、macOS和Linux。您可以使用它来执行DNS查询域名或IP地址,或任何其他特定的DNS记录。

也有Nslookup在线工具,Windows的Nslookup是系统自带的,在dos下可以直接调用使用。Linux的Nslookup工具则要安装一个工具包。

Ubuntu Nslookup工具安装方法

Ubuntu Nslookup工具安装方法如下:

sudo apt-get update
sudo apt-get install dnsutils

Nslookup工具语法

nslookup [-option] [name | -] [server]

Options:将想要使用的选项与域名或IP地址放在一起。该选项可以与DNS记录的类型、超时、正在使用的端口、调试或其他相关。

Name:要查询的主机名或域名。

Server:可选参数,指定要查询的特定DNS服务器的名称或IP地址。

常用Nslookup指令


nslookup example.com

可以通过该指令查看域名的A记录。

mirror@Ubuntu22:~$ nslookup baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
Name:   baidu.com
Address: 39.156.66.10
Name:   baidu.com
Address: 110.242.68.66

mirror@Ubuntu22:~$

nslookup -type=ns example.com

可以通过该指令查看域名的NS记录。

mirror@Ubuntu22:~$ nslookup -type=ns baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
baidu.com       nameserver = dns.baidu.com.
baidu.com       nameserver = ns4.baidu.com.
baidu.com       nameserver = ns7.baidu.com.
baidu.com       nameserver = ns3.baidu.com.
baidu.com       nameserver = ns2.baidu.com.

Authoritative answers can be found from:

mirror@Ubuntu22:~$

nslookup -type=soa example.com

可以通过该指令查看域名的SOA记录。

mirror@Ubuntu22:~$ nslookup -type=soa baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
baidu.com
        origin = dns.baidu.com
        mail addr = sa.baidu.com
        serial = 2012147587
        refresh = 300
        retry = 300
        expire = 2592000
        minimum = 7200

Authoritative answers can be found from:

mirror@Ubuntu22:~$

nslookup -query=mx example.com

判断邮件服务器是否正常工作,可以查看邮件服务器的MX记录是否能正常解析。

mirror@Ubuntu22:~$ nslookup -query=mx baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
baidu.com       mail exchanger = 20 mx50.baidu.com.
baidu.com       mail exchanger = 20 usmx01.baidu.com.
baidu.com       mail exchanger = 20 jpmx.baidu.com.
baidu.com       mail exchanger = 10 mx.maillb.baidu.com.
baidu.com       mail exchanger = 20 mx1.baidu.com.
baidu.com       mail exchanger = 15 mx.n.shifen.com.

Authoritative answers can be found from:

mirror@Ubuntu22:~$

nslookup -type=any example.com

可以通过该指令查看域名所有的DNS记录。

nslookup example.com dnsserver

可以通过该指令查看特定DNS服务器是否能解析指定域名。

mirror@Ubuntu22:~$ nslookup baidu.com 223.5.5.5
Server:         223.5.5.5
Address:        223.5.5.5#53

Non-authoritative answer:
Name:   baidu.com
Address: 39.156.66.10
Name:   baidu.com
Address: 110.242.68.66

mirror@Ubuntu22:~$ nslookup baidu.com 114.114.114.114
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
Name:   baidu.com
Address: 110.242.68.66
Name:   baidu.com
Address: 39.156.66.10

mirror@Ubuntu22:~$

nslookup 8.8.8.8

可以通过该指令反向解析IP对应的域名。并非所有IP都可以解析为域名。

mirror@Ubuntu22:~$ nslookup 110.242.68.66
** server can't find 66.68.242.110.in-addr.arpa: NXDOMAIN

mirror@Ubuntu22:~$ nslookup 8.8.8.8
8.8.8.8.in-addr.arpa    name = dns.google.

Authoritative answers can be found from:

mirror@Ubuntu22:~$

nslookup -type=ptr 8.8.8.8.in-addr.arpa

可以通过DNS反向查询,可以验证IP地址对应的域名。为此,您需要检查将IP地址链接到域名的PTR记录。您需要将IP地址反过来(185.136.96.96更改为96.96.136.185),并且您需要添加in-addr。因为它存储在ARPA的顶级域中。

mirror@Ubuntu22:~$ nslookup -type=ptr 8.8.8.8.in-addr.arpar.arpa
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
8.8.8.8.in-addr.arpa    name = dns.google.

Authoritative answers can be found from:

mirror@Ubuntu22:~$

PTR:DNS的PTR记录(Pointer记录)是一种反向DNS记录,用于将IP地址解析回域名。与常见的DNS记录类型(如A记录将域名映射到IP地址)相反,PTR记录允许将IP地址映射回域名。

PTR记录通常由ISP(互联网服务提供商)或网络管理员在DNS服务器上设置。

PTR记录常常用于逆向解析、邮件服务器验证、网络故障诊断、日志记录、反向代理、安全审计等。


nslookup -timeout=20 example.com

增加timeout参数,可以改变默认的应答超时间隔。这个对于网络品质不佳的情况下会用到。

在这里插入图片描述
mirror@Ubuntu22:~$ nslookup -timeout=20 baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53

Non-authoritative answer:
Name:   baidu.com
Address: 39.156.66.10
Name:   baidu.com
Address: 110.242.68.66
;; communications error to 114.114.114.114#53: timed out

mirror@Ubuntu22:~$

nslookup -debug example.com

可以通过该指令开启debug模式。

在这里插入图片描述
mirror@Ubuntu22:~$ nslookup -debug baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53

------------
    QUESTIONS:
        baidu.com, type = A, class = IN
    ANSWERS:
    ->  baidu.com
        internet address = 39.156.66.10
        ttl = 435
    ->  baidu.com
        internet address = 110.242.68.66
        ttl = 435
    AUTHORITY RECORDS:
    ADDITIONAL RECORDS:
------------
Non-authoritative answer:
Name:   baidu.com
Address: 39.156.66.10
Name:   baidu.com
Address: 110.242.68.66
------------
    QUESTIONS:
        baidu.com, type = AAAA, class = IN
    ANSWERS:
    AUTHORITY RECORDS:
    ->  baidu.com
        origin = dns.baidu.com
        mail addr = sa.baidu.com
        serial = 2012147587
        refresh = 300
        retry = 300
        expire = 2592000
        minimum = 7200
        ttl = 1697
    ADDITIONAL RECORDS:
------------

mirror@Ubuntu22:~$

为什么必会Nslookup指令

Nslookup指令是一个非常常用和强大的DNS问题排查工具。因此,许多网络管理员使用它来测试和排除网络故障。

Nslookup指令可以在Windows、macOS、Linux等不同的操作系统中使用,而且使用非常方便

Nslookup的平行替代工具

DNS故障排查工具除了Nslookup外,还有dig和host。

Linux dig指令的十三种用法

Nslookup和ping的区别

Ping也可以解析域名的IP,那么和Nslookup有些什么区别呢:

  • Ping本质上是一个用于测试网络连接的诊断工具。它用于通过发送ICMP回显请求并等待响应来验证网络中主机是否可达。
  • Nslookup则是一个内置的网络命令行工具,用于调试和查找有关您的域名服务器(DNS)包括查找域名或IP地址映射以及任何相关的dns记录。
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门