2026 DNS防污染完全指南:DoH/DoT配置解决网页打不开与解析劫持

2026 DNS防污染完全指南:DoH/DoT配置解决网页打不开与解析劫持

节点连上了、线路也通,但网页就是打不开,或者打开全是广告、跳到莫名其妙的页面?十有八九是 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. 用默认 DNS 解析一个国外域名,看返回什么

nslookup www.google.com

# 2. 换公共 DNS 再解析一次,对比结果

nslookup www.google.com 1.1.1.1

# 3. 解析一个肯定存在的国内域名做对照

nslookup www.baidu.com

判读规则:

现象

结论

默认 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: 段做如下配置(没有就新增):

dns:

enable: true

listen: 0.0.0.0:1053

ipv6: false

enhanced-mode: fake-ip

fake-ip-range: 198.18.0.1/16

nameserver:

- 223.5.5.5

- 119.29.29.29

- https://dns.alidns.com/dns-query

fallback:

- https://cloudflare-dns.com/dns-query

- https://dns.google/dns-query

fallback-filter:

geoip: true

geoip-code: CN

要点:国内域名走 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(进阶用户)#

{

"dns": {

"servers": [

{ "tag": "local", "address": "223.5.5.5" },

{ "tag": "remote", "address": "https://cloudflare-dns.com/dns-query" }

],

"rules": [

{ "rule_set": ["geosite-cn"], "server": "local" },

{ "rule_set": ["geosite-geolocation-!cn"], "server": "remote" }

]

}

}

配置完验证: 回到终端跑 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 提供商主机名」:

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

国际快、隐私强、抗污染好

Google

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 专线 + MPTCP 多路复用,晚高峰稳,100+ 节点不限设备

👉 访问自由猫官网

万达云

入门/预算敏感

IEPL 专线 + 中转,性价比高

👉 访问万达云官网

悠兔

年付党

自有机房 IEPL 专线,年付折合低价

👉 访问悠兔官网

SKYLUMO

轻量/学生

全球 80+ 地区覆盖,¥6.99 入门

👉 访问SKYLUMO官网

相关教程:Clash 规则配置指南 | 客户端安装配置全攻略 | 线路类型科普(IEPL/IPLC) | 全屋网络方案对比 | 网络测速指南

最后更新:2026-08-31

相关文章