一个域名打不开、或者邮件被退回,原因可能和服务器本身毫无关系。这个 DNS 查询工具回答诊断的第一个问题:记录里到底写了什么?输入域名,勾选一种或多种记录类型,页面就会从 Cloudflare 的加密 DNS-over-HTTPS 解析器获取实时答案,并显示每条记录的值和 TTL。
每种记录类型回答什么问题
| 类型 | 它回答的问题 |
|---|---|
| A | 这个名字指向哪个 IPv4 地址? |
| AAAA | 这个名字指向哪个 IPv6 地址? |
| CNAME | 这个名字是另一个名字的别名吗? |
| MX | 这个域名的邮件应该投递到哪里,优先级如何? |
| TXT | 发布了哪些自由文本,例如 SPF、DKIM 或验证字符串? |
| NS | 哪些域名服务器对这个区域具有权威性? |
| SOA | 区域的主域名服务器、联系人和序列号等元数据是什么? |
某类型返回空结果,只意味着不存在该类型的记录。很多域名有 A 记录却没有 AAAA 记录,而除非特意添加,大多数域名也没有 TXT 记录。
如何发起查询
输入形如 example.com 的域名,用复选框选择想要的记录类型。A、AAAA、MX、NS 默认已选中;CNAME、TXT、SOA 需要手动开启。点击查询或按回车,工具会分别查询每个选中的类型,所以某个类型响应慢不会阻塞其他类型。
查询通过 HTTPS 发送到 cloudflare-dns.com,这意味着请求以及你查询的域名对 Cloudflare 可见。这是一个诚实的取舍:工具需要一个解析器才能返回权威答案,它选择使用加密的公共解析器,而不是你操作系统自带的解析器。
如何阅读结果
结果按记录类型分成卡片。每一行显示记录名、值和以秒为单位的 TTL。MX 记录的值包含优先级和邮件主机。TXT 记录的值是原始字符串,通常以 v=spf1 开头表示 SPF,或包含 DKIM 的 selector 信息。NS 记录列出委派的域名服务器,SOA 记录则显示主服务器和序列号,从服务器靠序列号判断区域是否发生变化。
实操示例
邮件路由。 查询 gmail.com 的 MX 通常会返回五条记录:优先级 5 的 gmail-smtp-in.l.google.com,以及优先级 10、20、30、40 的 alt1 到 alt4.l.google.com。数字最小的优先,其余都是备份。
别名。 查询 www.example.com 的 CNAME 通常返回一个规范名,而查询根域 example.com 的 A 记录则返回一个或多个 IPv4 地址。如果 CNAME 的目标在另一个区域,再对那个目标做一次查询,才能看到它的 A 或 AAAA 记录。
验证文本。 对配置了邮件的域名做 TXT 查询,常会看到类似 v=spf1 include:_spf.google.com ~all 的 SPF 字符串。同一个名字下可以存在多条 TXT 记录,所以要把它们都读完,而不是假定第一条就是全部。
用 MX 和 TXT 排查邮件问题
邮件问题通常集中在两类记录上。MX 记录告诉发信服务器把邮件投递到哪里,TXT 记录则承载决定邮件是否被信任的策略。
如果退信提示「no MX records」,先查 MX,确认邮件主机名拼写正确,并且编号最小的优先级指向一台可达的服务器。如果邮件能送达却进了垃圾箱,就要看 TXT 记录。以 v=spf1 开头的 SPF 记录列出了被允许代表该域名发信的服务器;位于 selector._domainkey 之下的 DKIM 记录包含公钥;以 v=DMARC1 开头的 DMARC 记录告诉接收方如何处理验证失败。这些记录缺失、重复或互相矛盾,是投递率问题的常见原因。
由于这些记录本质上只是文本,一个拼写错误或多余字符就会在无声中破坏策略。请把返回的字符串与服务商要求你发布的版本逐字符比对,并记住一个域名可以同时合法拥有多条 TXT 记录,务必全部读完。
TTL 与修改为何滞后
TTL 是 Time To Live 的缩写,指解析器在再次查询之前可以缓存某个答案的秒数。较低的 TTL(例如 300)能让修改大约五分钟内传播,但会增加查询量。较高的 TTL(例如 86400)能降低负载,却可能把一次改动隐藏整整一天。准备迁移时,提前调低 TTL 可以缩短部分访客仍看到旧地址的时间窗口。
常见问题与误读
- 把空记录类型当成故障。 没有 AAAA 记录不等于网站坏了;先看 A 记录。
- 把注册商设置与实时记录混为一谈。 查询到的 NS 记录显示的是互联网实际看到的内容,可能与修改传播期间控制面板显示的内容不同。
- 误读 MX 优先级。 数字越小越优先,所以优先级 5 会先于 10 被尝试。
- 以为一个答案就是唯一答案。 CDN 和负载均衡器会返回多个地址,顺序还可能轮换。
- 忘记默认勾选项。 如果你期待看到 TXT 或 CNAME 结果,先确认该类型已被选中,再下结论说它不存在。
相关工具
常见问题
使用这个工具时,是谁在处理我的 DNS 查询?
查询会发送到 Cloudflare 位于 cloudflare-dns.com 的 DNS-over-HTTPS 解析器,因此 Cloudflare 能看到你查询的域名。本站没有后端,不会记录或存储查询内容,但请求确实会离开浏览器并到达第三方解析器——任何公共 DNS 查询都是如此。
为什么 MX 记录以 5 或 10 这样的数字开头?
这个数字是优先级,数值越小越先被尝试。gmail.com 的常见配置会把 gmail-smtp-in.l.google.com 列为优先级 5,另有四台 alt 服务器分别为 10、20、30、40,作为主服务器不可达时的备用。如果两台主机优先级相同,发件方可能任选其一。
为什么一个能正常访问的域名没有 AAAA 记录?
并非每个网站都发布 IPv6 地址。如果域名只有 A 记录,它能通过 IPv4 访问,但在没有代理或 NAT64 网关的情况下无法直接走 IPv6。AAAA 返回空只代表没有返回 IPv6 记录,并不代表域名有问题。
为什么反复查询会返回不同的 IP 地址?
很多大型网站使用轮询 DNS 或负载均衡器,发布多条 A 或 AAAA 记录并轮换顺序。不同解析器缓存的副本也各不相同,所以相隔几秒的两次查询完全可能显示不同的地址和 TTL。对高流量域名来说这是正常现象。
为什么我改了记录却迟迟没生效?
解析器会按记录的 TTL 缓存每个答案,所以旧值可能一直保留到上一个 TTL 过期。TTL 为 3600 秒的记录可能要一个小时才能全网更新,而 60 秒的记录大约一分钟就能更新。TTL 那一列显示的正是你看到的答案还能存活多久。
为什么我不能在根域名上添加 CNAME?
DNS 标准不允许 CNAME 与区域顶点所必需的 NS 和 SOA 记录共存。许多服务商通过扁平化或 ALIAS 记录绕过这一限制,让根域查询直接返回 A 和 AAAA 答案,而不是 CNAME。这是预期行为,不是配置错误。
由 HandyTools Hub 团队审校 · 最后更新