用于 DNS 查找的 Linux nslookup 命令示例
nslookup 是一种网络管理工具,用于查询域名系统 (DNS) 以获取域名或 IP 地址映射或任何其他特定的 DNS 记录。
它还用于解决与 DNS 相关的问题。本文提供了一些有关使用 nslookup 命令的示例。
nslookup 可以在“交互模式”和“非交互模式”上运行。交互模式允许用户查询有关各种主机和域的 DNS 服务器。非交互模式允许用户查询主机或域的信息。在本文中,所有解释的命令都是“非交互模式”。
1. nslookup – 简单示例
nslookup 后跟域名将显示域的“A 记录”(IP 地址)。
$ nslookup redhat.com
Server: 192.168.19.2
Address: 192.168.19.2#53
Non-authoritative answer:
Name: redhat.com
Address: 209.132.183.181
在上面的输出中,server 指的是 DNS 服务器的 IP 地址。然后下面的部分提供了域“redhat.com”的“A 记录”(IP 地址)。
nslookup 命令的默认输出没有 dig 命令的默认输出那么混乱。你们中的一些人可能习惯于使用dig 命令进行 DNS 查找。
2. 使用 -query=mx 查询 MX 记录
MX(邮件交换)记录将域名映射到该域的邮件交换服务器列表。MX 记录告诉发送到“@redhat.com”的所有邮件都应该路由到该域中的邮件服务器。
$ nslookup -query=mx redhat.com
Server: 192.168.19.2
Address: 192.168.19.2#53
Non-authoritative answer:
redhat.com mail exchanger = 10 mx2.redhat.com.
redhat.com mail exchanger = 5 mx1.redhat.com.
Authoritative answers can be found from:
mx2.redhat.com internet address = 66.187.233.33
mx1.redhat.com internet address = 209.132.183.28
在上面的示例中,我们有 2 条 MX 记录,用于域“redhat.com”。与 MX 记录相关联的数字 ( 5, 10 ) 表示邮件服务器的偏好。数字越小,偏好越高。因此,当邮件发送到“@redhat.com”时,首选将是“mx1.redhat.com”,然后是“mx2.redhat.com”。
权威答案与非权威答案
您可能还注意到上述输出中的关键字“Authoritative Answer”和“Non-Authoritative Answer”。
任何源自具有可用于域的完整区域文件信息的 DNS 服务器的答案都被称为权威答案。
在许多情况下,DNS 服务器不会拥有可用于给定域的完整区域文件信息。相反,它维护一个缓存文件,其中包含过去执行的所有查询的结果,这些查询已获得权威响应。当给出 DNS 查询时,它会搜索缓存文件,并将可用信息作为“非权威答案”返回。
3. 使用-query=ns 查询NS Record
NS(名称服务器)记录将域名映射到对该域具有权威性的 DNS 服务器列表。它将输出与给定域关联的名称服务。
nslookup -type=ns redhat.com
Server: 192.168.19.2
Address: 192.168.19.2#53
Non-authoritative answer:
redhat.com nameserver = ns4.redhat.com.
redhat.com nameserver = ns2.redhat.com.
redhat.com nameserver = ns1.redhat.com.
redhat.com nameserver = ns3.redhat.com.
Authoritative answers can be found from:
ns4.redhat.com internet address = 209.132.188.218
ns2.redhat.com internet address = 209.132.183.2
ns1.redhat.com internet address = 209.132.186.218
ns3.redhat.com internet address = 209.132.176.100
4. 使用 -query=soa 查询 SOA 记录
SOA 记录(权限开始),提供有关域的权威信息、域管理员的电子邮件地址、域序列号等……
$ nslookup -type=soa redhat.com
Server: 192.168.19.2
Address: 192.168.19.2#53
Non-authoritative answer:
redhat.com
origin = ns1.redhat.com
mail addr = noc.redhat.com
serial = 2012071601
refresh = 300
retry = 180
expire = 604800
minimum = 14400
Authoritative answers can be found from:
ns1.redhat.com internet address = 209.132.186.218
- mail addr – 指定域管理员的邮件地址 ( noc@redhat.com )
- 序列号——一种修订编号系统。标准约定是使用“YYYYMMYYNN”格式。(2012-07-16. 01 将增加,如果在同一天进行了多个编辑)
- refresh – 指定(以秒为单位),辅助 DNS 将轮询主 DNS 以查看序列号是否已增加。如果增加,secondary 将发出新的请求以复制新的区域文件。
- retry – 指定重新连接主 DNS 的时间间隔
- expire – 指定辅助 DNS 将缓存区域文件保持有效的时间
- minimum – 指定辅助 DNS 缓存区域文件的时间
5. 使用 -query=any 查看可用的 DNS 记录
我们还可以使用 -query=any 选项查看所有可用的 DNS 记录。
$ nslookup -type=any google.com
Server: 192.168.19.2
Address: 192.168.19.2#53
Non-authoritative answer:
Name: google.com
Address: 173.194.35.7
Name: google.com
Address: 173.194.35.8
google.com nameserver = ns1.google.com.
google.com nameserver = ns2.google.com.
google.com
origin = ns1.google.com
mail addr = dns-admin.google.com
serial = 2012071701
refresh = 7200
retry = 1800
expire = 1209600
minimum = 300
google.com mail exchanger = 20 alt1.aspmx.l.google.com.
google.com mail exchanger = 30 alt2.aspmx.l.google.com.
google.com mail exchanger = 40 alt3.aspmx.l.google.com.
google.com mail exchanger = 50 alt4.aspmx.l.google.com.
google.com mail exchanger = 10 aspmx-v4v6.l.google.com.
google.com has AAAA address 2a00:1450:4002:801::1004
Authoritative answers can be found from:
ns4.google.com internet address = 216.239.38.10
ns3.google.com internet address = 216.239.36.10
6.反向DNS查找
您还可以通过将 IP 地址作为参数提供给 nslookup 来执行反向 DNS 查找。
$ nslookup 209.132.183.181
Server: 192.168.19.2
Address: 192.168.19.2#53
Non-authoritative answer:
181.183.132.209.in-addr.arpa name = origin-www2.redhat.com.
7.使用特定的DNS服务器
除了使用默认 DNS 服务器进行查询外,您还可以指定特定的名称服务器来解析域名。
$ nslookup redhat.com ns1.redhat.com
Server: 209.132.186.218
Address: 209.132.186.218#53
Name: redhat.com
Address: 209.132.183.181
在上面的命令中,我们使用了 ns1.redhat.com 作为 DNS 服务器。在这里你可能会注意到,我们没有得到任何“Non-authoritative answer:”标题,因为 ns1.redhat.com 拥有 redhat.com 的所有区域信息
8.更改要连接的端口号
默认情况下,DNS 服务器使用端口号 53。如果由于任何原因,端口号被更改,那么我们可以使用 -port 选项指定端口号
$ nslookup -port 56 redhat.com
9.更改超时间隔等待回复
您可以使用 -timeout 选项更改默认超时以等待回复。
$ nslookup -timeout=10 redhat.com
10.使用-debug启用调试模式
您可以在命令行中使用 -debug 选项打开/关闭调试
$ nslookup -debug redhat.com
Server: 192.168.19.2
Address: 192.168.19.2#53
------------
QUESTIONS:
redhat.com, type = A, class = IN
ANSWERS:
-> redhat.com
internet address = 209.132.183.181
ttl = 5
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
------------
Non-authoritative answer:
Name: redhat.com
Address: 209.132.183.181
调试模式将在搜索过程中显示数据包信息。
与 nslookup 命令类似,您也可以使用dig 命令查询 DNS 信息。
- 点赞
- 收藏
- 关注作者
评论(0)