nslookup
是一个用于查询 DNS(域名系统)记录的命令行工具,主要用来将域名解析为 IP 地址或从 IP 地址反向解析出域名。它对网络排错和 DNS 配置检查非常有用。
命令
nslookup [选项] [域名/IP地址] [DNS服务器]
参数说明
- 域名/IP地址:要查询的域名或 IP 地址。
- DNS服务器(可选):指定使用的 DNS 服务器,默认是系统设置的 DNS。
- 选项:
-type=<record_type>
:指定查询的 DNS 记录类型,如 A、AAAA、MX、NS、CNAME、PTR 等。-debug
:启用调试模式,显示详细的查询过程。-timeout=<秒>
:指定等待 DNS 服务器响应的时间,默认是 5 秒。-port=<端口号>
:指定查询 DNS 的端口号,默认是 53。
常见 DNS 记录类型
类型 | 描述 |
---|---|
A | 将域名解析为 IPv4 地址 |
AAAA | 将域名解析为 IPv6 地址 |
CNAME | 别名记录,将域名映射到另一个域名 |
MX | 邮件交换记录,指定接收邮件的服务器 |
NS | 指定域名的权威 DNS 服务器 |
PTR | 反向解析,将 IP 地址解析为域名 |
SOA | 权威记录的起始信息 |
TXT | 文本记录,通常存储 SPF 或验证信息 |
常见使用实例
1. 查询域名对应的 IPv4 地址
nslookup www.dzy.com
输出:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: www.dzy.com
Address: 93.184.216.34
2. 查询域名的邮件服务器(MX 记录)
nslookup -type=mx dzy.com
输出:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
dzy.com mail exchanger = 10 mail.dzy.com.
dzy.com mail exchanger = 20 backupmail.dzy.com.
3. 查询权威 DNS 服务器(NS 记录)
nslookup -type=ns dzy.com
输出:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
dzy.com nameserver = ns1.dzy.com.
dzy.com nameserver = ns2.dzy.com.
4. 查询指定 DNS 服务器的结果
nslookup www.dzy.com 8.8.4.4
此命令使用 Google 的 DNS 服务器 8.8.4.4
进行解析。
5. 查询域名的别名记录(CNAME)
nslookup -type=cname www.dzy.com
输出:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
www.dzy.com canonical name = alias.dzy.com.
6. 反向解析 IP 地址(PTR 记录)
nslookup 93.184.216.34
输出:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
34.216.184.93.in-addr.arpa name = www.dzy.com.
7. 查询域名的所有记录
nslookup -type=any dzy.com
输出(包括 A、MX、NS 等记录):
Server: 8.8.8.8
Address: 8.8.8.8#53
dzy.com
origin = ns1.dzy.com.
mail addr = admin.dzy.com.
serial = 2024112301
refresh = 3600
retry = 1800
expire = 1209600
minimum = 86400
dzy.com mail exchanger = 10 mail.dzy.com.
dzy.com internet address = 93.184.216.34
8. 启用调试模式
nslookup -debug www.dzy.com
此模式会输出更详细的查询信息,包括请求报文和响应报文。
注意事项
nslookup
是一个交互式工具,可以直接输入nslookup
进入交互模式,逐条查询:> www.dzy.com > server 8.8.8.8 > exit