Ubuntu常用必会Nslookup指令

本文涉及的产品
.cn 域名,1个 12个月
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 它是一个很小但功能非常强大的网络管理命令行软件。Nslookup命令可用于当前主流的计算机操作系统,如Windows、macOS和Linux。您可以使用它来执行DNS查询域名或IP地址,或任何其他特定的DNS记录。也有Nslookup在线工具,Windows的Nslookup是系统自带的,在dos下可以直接调用使用。Linux的Nslookup工具则要安装一个工具包。

@[toc]

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参数,可以改变默认的应答超时间隔。这个对于网络品质不佳的情况下会用到。
image.png

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模式。
image.png

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记录。

推荐阅读

目录
相关文章
|
6月前
|
Ubuntu Linux
Centos 7、Debian、Ubuntu中tree指令的检查与下载
Centos 7、Debian、Ubuntu中tree指令的检查与下载
|
28天前
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(三):Linux下操作指令大全
Ubuntu学习笔记,介绍了Linux操作系统中常用的命令和操作,如文件管理、系统信息查看、软件安装等。
42 3
|
3月前
|
Ubuntu 网络安全
【ubuntu】目录下文件太多导致rm指令无法执行问题解决方法
【ubuntu】目录下文件太多导致rm指令无法执行问题解决方法
60 0
|
6月前
|
存储 缓存 监控
自己整理的Ubuntu NFS常用指令及调优方法
NFS(Network File System)网络文件系统是一种分布式文件系统协议,最初由Sun Microsystems开发,并在1984年首次发布。 NFS允许不同计算机通过网络共享资源,特别是文件和目录,就像它们是本地存储的一部分一样。使用NFS的客户端可以挂载远程服务器上的文件系统,使得用户能够以透明的方式访问远程数据,实现跨多个系统的文件共享。
375 0
|
6月前
|
Ubuntu 安全 算法
Ubuntu通过gpg指令生成并本地密钥文件
GPG 是GNU Privacy Guard的缩写,是一个开源的加密软件,主要用于数据的安全性和隐私保护。GPG 是基于 OpenPGP 标准的实现,该标准定义了一种用于加密、签名和验证数据的标准格式。今天我们的实验就是在本地产生一个密钥文件。
214 0
|
Ubuntu Linux Shell
Linux Crontab 定时任务 及 Ubuntu 中cron指令使用
本文是博主学习linux定时任务的记录,希望对大家有所帮助
694 0
Linux Crontab 定时任务 及 Ubuntu 中cron指令使用
|
编解码 Ubuntu
系统类配置(六) ubuntu16.04命令行安装Nvidia显卡驱动(操作指令详细注释版)
系统类配置(六) ubuntu16.04命令行安装Nvidia显卡驱动(操作指令详细注释版)
227 0
|
28天前
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(五):18.04安装多版本CUDA
这篇博客文章介绍了在Ubuntu 18.04系统上如何安装和切换不同版本的CUDA,以及如何安装不同版本的cuDNN。
149 2
|
28天前
|
并行计算 PyTorch TensorFlow
Ubuntu安装笔记(一):安装显卡驱动、cuda/cudnn、Anaconda、Pytorch、Tensorflow、Opencv、Visdom、FFMPEG、卸载一些不必要的预装软件
这篇文章是关于如何在Ubuntu操作系统上安装显卡驱动、CUDA、CUDNN、Anaconda、PyTorch、TensorFlow、OpenCV、FFMPEG以及卸载不必要的预装软件的详细指南。
2460 3
|
22天前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
77 4
Linux系统之Ubuntu安装cockpit管理工具