能缓解,但不一定能根治。关键看污染发生在哪一层。

有用的情况:本地递归污染

如果你的运营商递归服务器被污染了,换成公共 DNS 通常有效。

因为请求不再经过那台被污染的服务器,而是直接问 223.5.5.5、8.8.8.8 这些公共解析。

启用 DoH/DoT 效果更好,因为查询过程加密了,中间设备看不到你在查什么,也就没法针对性返回假结果。

没用的情况:出口层污染

如果污染发生在国际出口或者更上层,换 DNS 也躲不掉。

因为不管你用哪个 DNS,查询请求最终都要经过那条出口。包在出去的路上就被改了,换谁问都一样。

这种情况下,换 DNS 只是换了个心理安慰。

怎么判断是哪一层

做对比测试:

运营商 DNS 错、公共 DNS 对 → 本地递归层,换 DNS 有效。

运营商 DNS 错、公共 DNS 也错 → 更上层,换 DNS 基本无效。

国内 DNS 错、境外 DNS 对 → 大概率是出口层。

还有什么办法

换解析服务商,有时能绕开针对某家的干扰。

接入 CDN,让用户连最近的节点,减少跨境查询。

换域名,这是最后的手段,成本最高,而且新域名同样要合规。

别踩的坑

不要以为装个 DoH 就万事大吉。它解决的是查询加密,不解决出口被封。

也不要频繁换 DNS 反复试,浪费时间,还可能触发限流。

一句话

换 DNS 是「换一条路去问」,如果整条路都被堵了,换问法没用。