nslookup 是排查 DNS 问题最常用的工具之一。它有两种工作模式:非交互式(适合单次快速查询)和交互式(适合连续查询多种记录类型或调整配置)。本文整理了它的基本语法、常见查询示例、交互式子命令以及错误提示的含义,方便日常查阅。
基本语法
- 非交互式:
nslookup [选项] 目标域名或IP [指定DNS服务器] - 交互式:直接输入
nslookup回车,进入>提示符后逐条输入命令
常用查询示例(非交互式)
1. 正向解析(查 IP)
这是最基础的用法,查询域名对应的 IPv4 地址(A 记录)。
nslookup www.example.com
2. 反向解析(查域名)
已知 IP 地址,反查其对应的主机名(PTR 记录)。
nslookup 8.8.8.8
3. 指定 DNS 服务器查询
默认使用系统配置的 DNS。若想测试特定服务器(如 Google 的 8.8.8.8)的解析结果,将服务器地址作为第二个参数。
nslookup www.example.com 8.8.8.8
4. 查询特定类型的记录(需用交互模式)
非交互式默认查 A 记录,查 MX(邮件)、NS(域名服务器)等记录时,通常需进入交互模式设置 type。
nslookup
> set type=mx
> example.com
> exit
注:部分 Linux 发行版的
nslookup也支持通过-query=mx参数在非交互式中直接指定类型。
交互式核心子命令
进入 > 提示符后,可使用以下命令调整查询行为:
server <IP或域名>:临时切换当前使用的 DNS 服务器set type=<类型>:切换查询的记录类型。常用类型包括A(IPv4)、AAAA(IPv6)、MX(邮件)、NS(域名服务器)、CNAME(别名)、TXT(文本)、ANY(所有)set debug:开启调试模式,显示详细的 DNS 报文交互过程,适合排错exit:退出交互模式
常见错误提示含义
查询失败时,留意返回的提示:
Non-existent domain:域名不存在No records:域名存在,但没有你查询的那种类型(如该域名没有 MX 记录)的记录Timed out:服务器无响应,可能是网络不通或 DNS 服务器故障