OK Uptime 排障指南 · 更新于

DNS 污染怎么判断?网站打不开时的检测与排查方法

怀疑 DNS 污染时,先比较本地、公共 DNS 与不同地区节点的解析结果,再核对权威配置、HTTPS 证书和网站访问情况。本文提供 dig、nslookup 示例,帮助区分 CDN 调度、缓存与 IPv6 异常,并说明 DNS 查询工具的判断边界。

免费查询 DNS,比较各节点解析

先核对预期解析,IP 不同不等于 DNS 污染

判断 DNS 污染,关键是确认域名是否被返回了不符合实际业务配置的解析结果,并用多次查询和访问证据交叉验证。只看到两个节点返回不同 IP,或一次查询超时,都不足以下结论。

DNS 污染通常指伪造或错误的解析应答使域名指向非预期地址;错误信息进入递归解析器缓存时,也称缓存投毒。DNS 劫持还可能涉及路由器、终端或解析路径被改动,几种情况的表现可能相似。网站打不开也可能发生在连接、TLS 或 HTTP 阶段,需要逐层排查。

例如:同一网站在家庭宽带无法打开,手机流量却正常,这是值得调查的网络差异;如果两边都使用网站配置的 CDN 地址,仍需继续查访问策略和网络连接,不能直接写成“已被污染”。

哪些现象值得进一步检测?

  • 同一个主机名在部分网络持续返回不属于预期源站、CDN 或既有解析策略的地址。
  • 某个网络返回“域名不存在”,其他网络和权威配置却能查到记录。
  • 解析差异同时伴随陌生页面、异常跳转或证书域名不匹配。
  • 只有某台设备异常,其他设备正常;这时优先检查设备、代理、hosts 和路由器设置。

这些都是排查线索。证书不匹配也可能来自站点配置错误,陌生 IP 也可能是新启用的 CDN。地址归属、Ping 是否成功和单次证书错误,都不能独立证明污染。

DNS 污染检测:按五步收集证据

  1. 记录异常发生的条件。保存时间、网络运营商、访问设备、完整网址和具体错误。example.com 与 www.example.com 是不同主机名,要分别检查;对比前后应使用同一个主机名和记录类型。
  2. 从多个节点查询 DNS。打开 免费 DNS 查询工具,输入域名,选择可用节点,对比 A、AAAA 和 CNAME。保留异常节点与正常节点的结果,并重复查询。工具从服务器节点执行,不代表当前电脑或手机使用的网络。
  3. 补查本地与公共解析器。使用下方命令获取本地查询结果,再向当前网络可达的公共 DNS 查询。同一个网络中的普通 DNS 请求可能经过同一条受影响路径,指定公共 DNS 地址也不能保证应答来源可信。
  4. 由网站负责人核对权威配置。确认 DNS 托管平台上的记录、CNAME 目标、CDN 调度与最近变更;必要时直接查询对应权威服务器。权威服务器也可能按地区返回不同结果,应结合业务配置判断。不了解托管平台时,可先 查询域名注册商与 NS 托管线索,NS 不能证明账号归属。
  5. 把解析结果与访问证据对照。使用 网站访问测速 和 HTTPS 证书检测,再结合实际浏览器、CDN 和源站日志判断。不同工具的检测可能连接到不同地址,不能默认某次证书结果对应此前查询的某个 IP。

用 dig、nslookup 对比本地与公共 DNS

以下为只读查询示例,把 example.com 换成实际域名。1.1.1.1 是示例公共解析器,若当前网络不可达,可换用其他可信且可达的解析器;一次超时只说明这次查询未获得应答。

macOS / Linux:使用 dig

dig example.com A
dig @1.1.1.1 example.com A
dig example.com AAAA
dig @1.1.1.1 example.com AAAA
dig example.com CNAME

保留完整输出中的状态、ANSWER、TTL 与 SERVER,分别比较 IPv4 的 A 记录和 IPv6 的 AAAA 记录。NOERROR 但某类型没有答案,不一定代表域名不存在;NXDOMAIN、SERVFAIL 与超时也需要分别调查。

Windows:使用 nslookup

nslookup -type=A example.com
nslookup -type=A example.com 1.1.1.1
nslookup -type=AAAA example.com
nslookup -type=AAAA example.com 1.1.1.1

命令行、浏览器安全 DNS、VPN 和代理可能使用不同解析路径。命令查询正常但浏览器仍异常时,还要核对浏览器设置;这两种命令也不能代替 hosts 文件和系统实际访问路径的检查。排查前先保留结果,不必急着更换服务器或域名。

四种容易被误判为污染的情况

CDN 和智能 DNS 正常分流
不同地区、运营商或解析器可能获得不同的有效地址。应核对是否符合 CDN 配置及预期服务,不能把“所有 IP 一致”当作正常标准。
刚修改解析,旧缓存尚未过期
本机、路由器和递归解析器可能保留旧答案。先核对权威记录和修改前的 TTL;降低新记录的 TTL 不会立即清除已经存在的旧缓存。
A 记录正常,AAAA 记录配置错误
部分客户端会使用 IPv6,可能因此出现不同设备访问表现不同。分别核对 IPv4 与 IPv6 的解析和服务,不要只查 A 记录。
本机 hosts、代理或局域网策略
VPN、分流代理、企业内网解析、Wi-Fi 登录页和本机配置都可能改变访问路径。内网域名返回私有地址可能符合设计,应结合网络用途核对。

如果解析符合预期,但仍有部分地区无法访问,可继续按 多地区网站访问排查指南 检查连接、访问控制与服务日志。

发现解析异常后,按原因处理并复测

  • 权威配置错误或被修改:由负责人恢复正确记录,检查 DNS 账号权限与变更日志;存在账号泄露时同步处理账号安全。
  • 本机或路由器配置异常:确认并修正非预期的 hosts、代理或 DNS 设置,再按系统说明清理相关缓存。清理本机缓存不会清除上游解析器的缓存。
  • 递归解析器返回异常:保留查询证据并联系解析服务商,按服务商流程刷新缓存;在网络策略允许时,可对比其他可信解析器。更换公共 DNS 并非所有情况都有效。
  • 怀疑传输路径被干扰:在允许且可达的环境下,对比可信服务商的 DoH / DoT 加密 DNS。加密保护查询传输,不能纠正权威端错误、已被入侵的设备或解析器自身的错误答案。

处理后,在原先异常的设备与网络上复测,同时保留外部节点结果。即使 DNS 已恢复,连接、证书或 HTTP 故障仍可能存在;不要通过关闭 HTTPS 证书校验来验证恢复。

DNS 污染排查常见问题

换成公共 DNS,就一定能解决吗?

不能保证。公共解析器不可达、普通 DNS 查询路径被干扰、权威配置错误或设备配置异常时,单纯更换 DNS 可能无效。应先确定问题发生在哪一层。

所有在线节点都正常,就能排除本地问题吗?

不能。在线查询反映的是所选节点当时的结果,没有覆盖当前设备、家庭宽带或所有运营商。仍需在发生异常的网络中补查。

OK Uptime 会自动判定或修复 DNS 污染吗?

不会。OK Uptime DNS 查询 提供所选节点看到的解析记录,用于辅助定位差异,不提供“已污染 / 未污染”的自动定论,也不会修改域名或设备配置。单次查询不会自动创建持续监控。

参考资料