打开网站跳到莫名其妙的广告页、或某个网站在你这儿死活打不开别人却正常——这可能是 DNS 被污染或劫持了。怎么确认?
先分清两个概念
· **DNS 劫持**:你的 DNS 请求被运营商或恶意软件篡改,把域名解析到了错误的 IP(常见于跳广告、跳导航页)
· **DNS 污染**:解析结果被中途投毒,返回一个错误或无效的 IP,导致网站打不开。多见于被封锁的域名
两者的共同点:**你解析到的 IP 是错的**。
怎么判断
用「DNS 查询」,从全国多个节点、以及用不同的 DNS 服务器查同一个域名,然后对比:
1. **各地解析到的 IP 是否一致**:如果大部分节点解析到同一个 IP,只有你本地解析到一个奇怪的 IP,那大概率是你本地被劫持
2. **换指定 DNS 再查**:用「运营商 DNS」查到的 IP,和用「指定 DNS」(如 223.5.5.5)查到的对比。如果换了 DNS 结果就正常了,说明是你运营商的 DNS 有问题
3. **解析到的 IP 合不合理**:把解析出的 IP 用「本机IP查询」或 whois 看归属地,如果一个国内大站解析到了莫名其妙的小机房 IP,就要警惕
怎么处理
· 是运营商 DNS 的问题:换成公共 DNS(阿里 223.5.5.5、腾讯 119.29.29.29)
· 是本机中毒:查杀恶意软件,检查 hosts 文件(Windows 在 C:\Windows\System32\drivers\etc\hosts)有没有被塞了奇怪的记录
· 是污染(被封域名):普通手段难以解决,属于网络管制范畴
小结
「多节点 + 多 DNS 对比」是判断 DNS 问题最快的办法——正常情况下各地解析结果应该基本一致,出现明显分歧就说明某一环被动了手脚。