DNS 查询命令生成
想确认某条记录存不存在、值对不对,先在这里拼好命令,再到终端里跑。dig、nslookup、host 三种写法一次给全。
这个页面不会发起任何 DNS 查询。整站是静态文件、没有后端,浏览器的安全模型也不允许网页直接发 UDP 53 端口的查询。下面生成的是可以在你本机终端里执行的命令,文末另附在线查询入口。
A:域名指向的 IPv4 地址,最常见的一条
从窄到宽排查的顺序:先 dig 指定记录类型看答案段,再 dig NS 确认权威服务器,最后 dig @权威 NS 直接问,排除本地递归解析器的缓存干扰。
记录类型速查
| 类型 | 用途 | 值的形状 |
|---|---|---|
| A | 域名指向的 IPv4 地址,最常见的一条 | 192.0.2.1 |
| AAAA | 域名指向的 IPv6 地址(读作 quad-A) | 2001:db8::1 |
| CNAME | 别名记录,把域名指到另一个域名上,只用于主机名不能用于裸域 | cdn.example.net. |
| MX | 收邮件的服务器,带优先级,数字越小越优先 | 10 mail.example.com. |
| TXT | 任意文本,常放 SPF、DKIM、DMARC、域名验证码 | "v=spf1 include:_spf.example.com ~all" |
| NS | 这个域由哪些域名服务器解析 | ns1.example.com. |
| SOA | 解析区域的起始记录,含主 NS、管理员邮箱、序列号和各类超时时间 | ns1.example.com. hostmaster.example.com. 2024010101 7200 3600 1209600 3600 |
| SRV | 指定某个服务的主机和端口,如 SIP、XMPP、AD 域控 | _sip._tcp.example.com. 10 60 5060 sipserver.example.com. |
| PTR | IP 反查域名,写反查区(in-addr.arpa / ip6.arpa),收信服务器常用它做核对 | host.example.com. |
| CAA | 限定哪些 CA 可以给这个域签发证书,防误签发 | 0 issue "letsencrypt.org" |
| NAPTR | 把号码或字符串映射成新记录,早年用于 ENUM 电话和 SIP | 100 10 "u" "E2U+sip" "!^.*$!sip:info@example.com!" . |
| DS | DNSSEC 的父区委派签名摘要,配合 DNSKEY 建立信任链 | 12345 8 2 <摘要> |
| DNSKEY | DNSSEC 的区域公钥,用来验证区里的记录签名 | 257 3 8 <公钥> |
| TLSA | 把证书或公钥钉到域名上(DANE),比 CA 体系更窄 | 3 1 1 <证书摘要> |
| HTTPS | HTTPS 的 SVCB 特化,声明 HTTP/3、端口和备用端点 | 1 . alpn="h3,h2" |
| SVCB | 服务绑定记录,表达协议、端口、IP 提示等端点信息 | 1 . alpn="h2" port="8443" |
| ANY | 请求所有类型。如今多数解析器会拒绝或只回一小部分,不要依赖它 | (各类型混合) |
| AXFR | 整区传输,用来拉走整个域的记录。公开解析器几乎都不允许,需要指定权威服务器 | (整个区域的记录) |
在线查询入口
不想开终端时,可以到下面这些站点查。它们各自独立运行,本站不代理也不回传任何数据。
为什么这个页面查不了 DNS
DNS 查询默认走 UDP 53 端口,浏览器出于安全考虑不允许网页发起这种原始网络请求,也不提供任何 Socket 接口;整站又只有静态文件,没有后端可以代查。所以在网页里「输入域名就出解析结果」这件事,要么靠一个能转发查询的服务器,要么靠 DoH(DNS over HTTPS)接口。本工具选择了不自称能查,只负责把命令拼对,避免给你一个假的「查询成功」。
dig 是排查问题最顺手的工具:默认输出 QUESTION、ANSWER、AUTHORITY、ADDITIONAL 四段,能看到记录值、TTL 和权威服务器是谁。加 +noall +answer 只留答案段,做脚本巡检时最省解析功夫;加 +trace 可以从根域一路迭代下来,看到每一层的委派过程,这是排查 NS 配置错误最直接的办法。
nslookup 的好处是跨平台,Windows 上也有,但它的输出格式不统一,查不到时还会自动换一台服务器再问一次,结果里出现两段结论会让人误以为记录变了;host 输出最精简,适合快速确认「有没有这条记录」。PTR 反查要注意:IPv4 走 in-addr.arpa,把地址倒过来写;IPv6 走 ip6.arpa,要把每组十六进制数字补成 4 位并逐字符倒序,手写很容易出错,所以 dig -x 交给客户端自己算。
TTL 是排查 DNS 问题时经常被忽略的一环。改了解析记录后,各地递归解析器要等 TTL 到期才会重新拉取,所以「我这儿已经生效了,客户那儿还是老 IP」多半就是这个原因。上 CDN 或做迁移前,先把 TTL 调小(比如 60 秒),迁移完成再调回去,可以大幅缩短传播时间。
最后提醒几个常见坑:CNAME 不能用在裸域(example.com 这种没有子域名的形式),很多解析商只是做了隐式转换;MX 记录指向的目标必须有 A 记录,指向 CNAME 是违规的;SPF、DKIM、DMARC 都写在 TXT 里,一条 TXT 超过 255 个字符要拆成多段,dig 输出里会看到几个引号分开的片段,拼起来才是完整值。