跳到主要内容

解析不生效排查手册

排查 DNS 要按层次来,不要一上来就反复改记录。顺序是:

域名状态 → NS 是否指向 DNSPod → 权威记录是否存在 → 递归缓存是否更新 → 线路/服务器/备案

一、先判断是 DNS 问题还是 HTTP 问题​

curl -I http://example.com
结果说明
HTTP/1.1 200/301/302/403/404DNS 已经通了,问题在 Web 服务器、防火墙、应用或备案
Could not resolve hostDNS 解析失败,继续往下查
Connection timed outDNS 可能通了,但服务器不可达/端口被拦
Connection refused解析正确,服务没监听或防火墙拒绝

页面出现 403、404、502 等错误码,基本与 DNS 无关,去查 Nginx、应用和安全组。

二、查 NS 是否已经指向 DNSPod​

dig +short NS example.com

对比 DNSPod 控制台显示的 DNS 地址。常见情况:

结果原因
还是注册商的 NS注册商处没改成功,或还没生效(0–48 小时)
只有一条 NS注册商只填了一条,建议补齐两条
返回空域名状态异常、NS 未配置、查询被拦截
SERVFAILDNSSEC 配置错误、NS 配置不完整

指定公共 DNS 再查一次,排除本地缓存:

dig +short NS example.com @8.8.8.8
dig +short NS example.com @223.5.5.5

如果公共 DNS 已经返回 DNSPod 的 NS,但本地还是旧值,清本地缓存即可。

三、直接问 DNSPod 的权威服务器​

从控制台复制一条 NS 地址,直接查询:

dig A www.example.com @f1g1ns1.dnspod.net

把 f1g1ns1.dnspod.net 换成你控制台里的地址。

结果说明
返回正确 IPDNSPod 侧没问题,问题在递归缓存或本地
NOERROR 但没有 ANSWER记录不存在、主机记录写错、只加了别的线路
NXDOMAIN该主机没有记录
SERVFAIL权威服务器异常或 DNSSEC 问题

这一步很关键:它能区分「DNSPod 没配好」和「缓存没更新」。

四、查递归 DNS 和缓存​

dig A www.example.com @8.8.8.8
dig A www.example.com @114.114.114.114

如果权威服务器返回新 IP,但递归 DNS 还是旧 IP,就是 TTL 缓存。等待 TTL 到期,或清本地缓存。

清本地 DNS 缓存​

Windows

ipconfig /flushdns

macOS

sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Linux(systemd-resolved)

sudo resolvectl flush-caches

Chrome

打开 chrome://net-internals/#dns,点击「Clear host cache」。

TTL 的影响​

  • 修改记录后,旧值会在递归 DNS 缓存到原 TTL 到期。
  • 免费版 TTL 最低一般 600 秒,也就是最多等 10 分钟。
  • 想快速切换,提前把 TTL 调低,再改记录。

五、检查记录本身​

主机记录写错​

  • 要解析 www.example.com,主机记录填 www,不是 www.example.com。
  • 根域名填 @,不是空、不是 example.com。
  • 泛解析填 *,它不匹配根域名。

只加了分线路,没加默认线路​

如果只给「电信」加了记录,联通/移动用户会解析失败。补一条「默认」线路。

记录被暂停​

控制台记录状态可能是「暂停 / DISABLE」。暂停的记录不会返回。

记录冲突​

同一主机、同一线路下,CNAME 不能和 A/AAAA 共存。检查是否有历史遗留记录。

记录值不合法​

  • A 记录必须是公网 IPv4。
  • CNAME 必须是域名,不能是 IP。
  • MX 必须是域名,并填优先级。
  • URL 记录必须是完整 URL,且前后域名已备案。

六、检查域名状态​

whois example.com | grep -i -E "status|expir"

重点看:

状态含义处理
Clienthold注册商暂停解析未实名、命名审核、违规、欠费,联系注册商
Serverhold注册局暂停解析同上,通常需要注册商协助
pendingDelete / redemptionPeriod域名过期/赎回期尽快续费/赎回
clientTransferProhibited转移锁不影响解析

域名过期后续费,解析恢复也可能需要 0–48 小时。

七、检查线路与访问环境​

分线路解析​

免费版支持默认、国家/大洲、搜索引擎等线路,但不支持电信/联通/移动等运营商线路。如果控制台里没有对应选项,就是套餐不支持,不是 bug。

运营商/地区差异​

# 用不同公共 DNS 模拟不同递归
dig A www.example.com @223.5.5.5 # 阿里
dig A www.example.com @119.29.29.29 # 腾讯
dig A www.example.com @8.8.8.8 # Google

如果只有某个地区不对,可能是分线路配置或当地运营商缓存。

服务器侧​

  • 安全组/防火墙是否放行 80/443。
  • 云服务器是否绑定公网 IP/EIP。
  • 国内服务器是否完成 ICP 备案(未备案会被阻断 80/443)。
  • 是否被运营商封锁 80/443(家宽常见),换端口或走 CDN。

八、邮件解析专项​

dig +short MX example.com
dig +short TXT example.com
dig +short TXT _dmarc.example.com
dig +short TXT selector._domainkey.example.com
现象排查
收不到信MX 是否存在、优先级是否正确、旧 MX 是否残留、@ 是否有 CNAME
能收不能发SPF 是否包含发信服务商、DKIM 是否生效、DMARC 是否过严
进垃圾箱SPF/DKIM/DMARC 是否全部 PASS、IP 是否黑名单、PTR 是否正常
部分发件人收不到对方 SPF/DMARC 策略、灰名单、反垃圾规则

九、常用命令速查​

# NS
dig +short NS example.com
dig +short NS example.com @8.8.8.8

# A / AAAA / CNAME
dig +short A example.com
dig +short AAAA example.com
dig +short CNAME www.example.com

# 指定权威服务器
dig A www.example.com @你的DNSPod_NS

# 完整追踪
dig +trace example.com

# MX / TXT / CAA
dig +short MX example.com
dig +short TXT example.com
dig +short CAA example.com

# HTTP
curl -I http://example.com
curl -vI https://example.com

# 域名状态
whois example.com

Windows 没有 dig 时可以用:

nslookup example.com
nslookup -type=NS example.com
nslookup example.com 8.8.8.8

十、按现象快速定位​

现象最可能的原因
刚改完记录,自己电脑不生效本地/递归缓存,等 TTL
自己生效,外地朋友不生效分线路缺默认线路、地区缓存
dig 权威有值,递归没值缓存未过期,或递归被污染
权威直接查都没有记录没保存、主机记录错、记录被暂停
NS 一直不是 DNSPod注册商没改、域名锁定、Clienthold
网站 404/403DNS 正常,查 Web 服务
网站超时安全组/防火墙/端口/备案
邮件收不到MX 错、旧 MX 残留、@ CNAME 冲突
邮件进垃圾箱SPF/DKIM/DMARC 未通过、IP 信誉
证书签发失败_acme-challenge TXT 未生效、CAA 限制

十一、推荐工具​

  • DNSPod 域名自助检测:控制台内的「DNS 诊断 / 网站健康检测」。
  • DNS.TECH:查看全国递归 DNS 的解析结果。
  • dnschecker.org:多地区 NS/A 记录传播情况。
  • intodns.com:MX、NS、SPF 等整体体检。
  • 腾讯企业邮域名解析自检:检查 MX/SPF/DMARC。

相关阅读: