节点连上了、线路也通,但网页就是打不开,或者打开全是广告、跳到莫名其妙的页面?十有八九是 DNS 解析环节出了问题。这篇文章把 DNS 污染的原理、判断方法和三种配置方案一次讲清楚。
📋 太长不看版
| 问题 | 症状 | 最快解法 |
|---|---|---|
| 网页打不开但节点正常 | 浏览器转圈后报错 | 客户端开启 DoH(加密 DNS) |
| 打开的是广告/错误页面 | 域名被解析到错误 IP | 切换公共 DoH 服务商 |
| 国内站快、国外站慢 | 解析走运营商 DNS 被干扰 | 配置国内外分流 DNS |
| 全设备都异常 | 路由器/系统 DNS 被改 | 路由器级 DNS 全局覆盖 |
一句话结论: 给客户端或系统配上加密 DNS(DoH/DoT),把域名解析从明文裸奔变成加密通道,污染问题就解决了大半。下面按「客户端 → 系统 → 路由器」三步走,从最简单到最彻底。
一、DNS 污染到底是什么
DNS 是互联网的”电话簿”——你输入 google.com,DNS 服务器把它翻译成服务器 IP 地址,浏览器才能找到网站。整个过程默认是明文传输,任何人(运营商、中间设备、攻击者)都能看到你查了什么域名,也能篡改返回结果。
污染(DNS poisoning)就是中间环节把”电话簿”里的地址偷偷换掉:
| 污染类型 | 表现 | 原因 |
|---|---|---|
| 返回错误 IP | 打开的是广告页/反诈页/空白页 | 中间设备注入错误应答 |
| 解析超时 | 域名一直转圈,nslookup 无响应 | 请求被丢弃 |
| 返回本地地址 | 指向 127.0.0.1 等异常 IP | 恶意篡改 |
| 部分污染 | 国内域名正常、国外域名异常 | 按域名选择性干扰 |
为什么连了跨境网络还会被污染? 因为很多客户端默认的 DNS 还是走本地运营商线路,或者 fake-ip 模式下的 fallback 解析没配置好。节点只是把你访问网站的”路”修好了,但”查地址”这一步还在被干扰。
二、先判断是不是 DNS 问题(3 个命令)
动手配置前,先确认症状确实来自 DNS。打开终端(Windows 用 CMD/PowerShell,macOS 用终端):
1 | # 1. 用默认 DNS 解析一个国外域名,看返回什么 |
判读规则:
| 现象 | 结论 |
|---|---|
| 默认 DNS 解析超时/返回 127.0.0.1,1.1.1.1 正常 | ✅ 确认被污染 |
| 两个 DNS 都解析到同一 IP 但网页打不开 | 不是 DNS 问题,查节点/线路 |
| 国内外域名都异常 | 可能是系统 hosts 被改或 DNS 设置错误 |
确认是污染后,按下面三步配置。每一步都能独立解决大部分问题,按需取用。
三、方案一:客户端配置加密 DNS(推荐首选)
客户端(Clash 系 / Stash / Shadowrocket)是大多数人的主战场——在这里配好 DoH,所有走客户端的流量解析都走加密通道,一劳永逸。
1. Clash Verge Rev / Clash Meta(Windows/macOS/Android)
打开配置文件,在 dns: 段做如下配置(没有就新增):
1 | dns: |
要点:国内域名走 nameserver(阿里/DNSPod 快且稳),国外域名经 fallback-filter 分流到 Cloudflare/Google 的 DoH——国内外分流是兼顾速度和抗污染的关键。
2. Stash(iOS/macOS)
Stash 的 DNS 在「设置 → DNS」里配置:
- 打开 DoH
- 主 DNS 填
https://dns.alidns.com/dns-query(国内快) - 备用 DNS 填
https://cloudflare-dns.com/dns-query(抗污染强) - 打开 Fallback,把国外域名指向 Cloudflare/Google DoH
Stash 默认配置已经带国内分流,只需把明文 DNS 换成 DoH 端点即可。
3. Shadowrocket(iOS)
「设置 → DNS」里手动添加:
| 用途 | 添加内容 |
|---|---|
| 国内解析 | 223.5.5.5 或 https://dns.alidns.com/dns-query |
| 国外抗污染 | https://cloudflare-dns.com/dns-query |
添加后把「使用 DNS 代理」打开,让解析走客户端的加密通道。
4. sing-box(进阶用户)
1 | { |
配置完验证: 回到终端跑 nslookup www.google.com,如果客户端在跑,应该能看到解析走的是 1053 端口(Clash 监听地址),结果和公共 DoH 一致。
四、方案二:系统级配置 DoH/DoT
不依赖客户端(比如某些流量没走客户端的场景),直接在系统层面把 DNS 换成加密的。
Windows 11
「设置 → 网络和 Internet → 属性 → DNS 服务器分配 → 编辑」:
- 手动 DNS 填
1.1.1.1和8.8.8.8 - DNS 加密选 仅加密(DoH)
- 保存后重启浏览器测试
macOS
「系统设置 → 网络 → 当前网络 → 详细信息 → DNS」添加 1.1.1.1、8.8.8.8。macOS 原生不支持 DoH 图形化配置,需要配合客户端(Stash/Clash)或描述文件,日常场景客户端方案已够用。
iOS
「设置 → 无线局域网 → 当前 Wi-Fi 的 ⓘ → 配置 DNS → 手动」添加 1.1.1.1、8.8.8.8。想上 DoH 可以装 Cloudflare 的 1.1.1.1 App 或描述文件。
Android
「设置 → 网络 → 私人 DNS」选择「指定私人 DNS 提供商主机名」:
1 | 1dot1dot1dot1.cloudflare-dns.com |
Android 的私人 DNS 原生走 DoT 加密,是所有平台里系统级配置最简单的。
浏览器兜底(Firefox)
「设置 → 隐私与安全 → 启用基于 HTTPS 的 DNS」勾选,选 Cloudflare。适合只想改浏览器、不动系统的场景。
五、方案三:路由器/旁路由全局覆盖
家里设备多(电视、游戏机、IoT 设备没法逐个配),在路由器上统一配 DNS 最省心。适合有软路由/OpenWrt 的用户:
- OpenWrt 上游加密:安装
https-dns-proxy插件,上游填 DoH 端点(如https://cloudflare-dns.com/dns-query),Dnsmasq 转发过去 - AdGuard Home 自建:在软路由/旁路由上跑 AdGuard Home,上游配置国内外分流(国内
223.5.5.5、国外 DoH),自带缓存和广告过滤,全家设备指向它即可 - 旁路由方案:不想动主路由,用树莓派/旧盒子做旁路由跑 AdGuard Home,DHCP 下发 DNS 指向它
路由器方案适合进阶用户。普通用户按方案一(客户端)已经能解决 90% 的问题,不必一上来就折腾软路由。
六、公共 DNS 服务商对比
| 服务商 | 普通 DNS | DoH 端点 | 特点 |
|---|---|---|---|
| 阿里 AliDNS | 223.5.5.5 | https://dns.alidns.com/dns-query | 国内快、解析全、适合国内分流 |
| 腾讯 DNSPod | 119.29.29.29 | https://doh.pub/dns-query | 国内快、稳定 |
| 114DNS | 114.114.114.114 | 无官方 DoH | 国内老牌、纯净模式可选 |
| Cloudflare | 1.1.1.1 | https://cloudflare-dns.com/dns-query | 国际快、隐私强、抗污染好 |
| 8.8.8.8 | https://dns.google/dns-query | 国际通用、解析记录全 | |
| Quad9 | 9.9.9.9 | https://dns.quad9.net/dns-query | 自带威胁情报过滤、安全优先 |
选型建议: 国内域名解析用阿里或 DNSPod(快),国外域名用 Cloudflare 或 Google 的 DoH(抗污染)。不要全部走国际 DNS——国内域名绕一圈反而慢。
❓ 常见问题
Q1:换了 DoH 还是打不开网页? 先确认 DoH 配置真的生效了(nslookup 看解析源),再检查节点本身是否正常。DNS 只是链路的一环,节点挂了解析再对也没用。可以换个节点对比测试。
Q2:fake-ip 模式是什么?要不要开? fake-ip 是 Clash 系客户端的虚拟 IP 机制——客户端给域名分配一个假 IP,真实解析交给客户端内部处理,能加速首次连接、减少 DNS 泄漏。推荐开启,配合上面的 fallback 分流配置效果最好。
Q3:DoH 和 DoT 有什么区别? DoH(DNS over HTTPS)走 443 端口,和网页流量混在一起,难被识别拦截;DoT(DNS over TLS)走 853 端口,专门通道。日常用 DoH 即可,兼容性和穿透性更好。
Q4:全用国际 DNS 行不行? 不建议。国内域名(百度、淘宝、B站)走国际 DNS 会绕路变慢,甚至解析到海外节点。正确姿势是国内/国外分流:国内走 AliDNS/DNSPod,国外走 Cloudflare/Google。
Q5:nslookup 返回 127.0.0.1 是什么意思? 说明解析结果被篡改成了本机回环地址——典型污染特征。换公共 DNS 或开 DoH 后通常立即恢复。如果客户端开了 fake-ip,解析显示 198.18.x.x 是正常现象,不是污染。
Q6:改路由器 DNS 会影响国内网站速度吗? 如果路由器 DNS 上游配置了分流(国内走 AliDNS、国外走 DoH),不影响国内速度。如果全走国际 DNS,国内网站会明显变慢。配置时务必区分国内/国外上游。
Q7:手机流量(4G/5G)也会被污染吗? 会,移动网络同样存在 DNS 干扰。手机端优先用客户端方案(Clash/Stash/Shadowrocket 的 DoH),Wi-Fi 和流量都覆盖。
🎯 总结
DNS 污染是”节点正常但网页打不开”的头号隐形原因,本质是域名解析环节被明文干扰。三步解法:
- 客户端配 DoH(推荐):Clash/Stash/Shadowrocket 里配置国内 + 国外分流 DNS,覆盖 90% 场景
- 系统级配置:Windows 原生 DoH、Android 私人 DNS,适合不依赖客户端的场景
- 路由器全局覆盖:AdGuard Home / https-dns-proxy,适合全家多设备
配置完用 nslookup 验证解析结果,污染问题基本都能解决。如果你的网络服务商本身解析就慢、节点又不稳定,可以对比下面的方案,选一个晚高峰不掉链子的作为主力:
| 方案 | 适合谁 | 特点 | 入口 |
|---|---|---|---|
| 光速云 | 主力长期用 | IEPL 专线 + IEPL专线 多路复用,晚高峰稳,100+ 节点不限设备 | 👉 访问光速云官网 |
| 飞猫云 | 入门/预算敏感 | IEPL 专线 + 中转,性价比高 | 👉 访问飞猫云官网 |
| 飞猫云 | 年付党 | 自有机房 IEPL 专线,年付折合低价 | 👉 访问飞猫云官网 |
| 微风网络 | 轻量/学生 | 全球 80+ 地区覆盖,¥6.99 入门 | 访问微风网络官网 |
相关教程:Clash 规则配置指南 | 客户端安装配置全攻略 | 线路类型科普(IEPL/IPLC) | 全屋网络方案对比 | 网络测速指南
最后更新:2026-08-31