DNS 污染是什么?网站打不开与解析异常完整排查
网站打不开、解析到错误 IP、能 ping 通却访问不了——这是 DNS 污染的典型表现。本文用通俗方式讲清 DNS 污染原理,并给出客户端层面的解决方法。
直接回答:DNS 污染是「域名被解析到错误 IP」,表现为网站打不开或跳到无关页面。解决核心是让 DNS 查询也走代理由远端解析——开启客户端的 DNS 劫持/防泄露或 TUN 模式,而不是只改系统 DNS。
什么是 DNS 污染
访问网站要先把域名解析成 IP。DNS 污染就是在这一步返回错误答案:你以为连的是目标网站,实际连到了错误或不存在的 IP,于是打不开、超时或跳转异常。它作用在域名层面,与直接封 IP 不同。
典型现象
- 某网站直连打不开,但用代理能开;
- 能 ping 通域名(甚至 ping 到奇怪 IP)却无法访问;
- 部分网站正常、个别网站解析异常;
- Google 系服务偶发抽风,见Gemini 无法访问。
客户端层面的解决
关键:让 DNS 也走代理,而不是只在系统里换 DNS。
- Clash Verge Rev:开启 TUN 模式 + DNS 劫持,DNS 走远端解析(fake-ip 模式最省心);
- Shadowrocket:设置 → DNS 改为 1.1.1.1,开启相关防泄露;
- v2rayN / sing-box:启用内置 DNS 或 DoH。
改系统 DNS(223.5.5.5 → 119.29.29.29)只对直连流量有一定帮助,对被污染的域名不可靠。
验证
清 DNS 缓存后重试(macOS dscacheutil -flushcache / Windows ipconfig /flushdns)。仍打不开且出口 IP 正常 → 多为规则把域名判直连,见连得上打不开网页。
什么时候不是 DNS 问题
全局模式 + DNS 走代理仍打不开单站,可能是该站封了节点 IP(换节点)或站点本身故障。
Clash Verge Rev 的 DNS 选项在「设置 → DNS 设置」,完整配置见 Clash Verge Rev 教程;同类问题见网络问题排查 · 连不上 / 打不开。
常见问题
DNS 污染和网站被墙是一回事吗?
不完全是。DNS 污染是让你解析到错误 IP(域名层面),IP 封锁是直接拦截连接(IP 层面)。污染更常见,走代理 + 远端 DNS 即可绕过。
换成 8.8.8.8 就能解决吗?
对直连流量部分有效,但明文 DNS 仍可能被污染。真正可靠的是让 DNS 查询也走代理(远端解析)或用 DoH/DoT。
为什么开了代理还被污染?
客户端没接管 DNS,系统仍用本地明文 DNS 解析。开启客户端的 DNS 劫持/防泄露或 TUN 模式即可。