DNS 污染和劫持有什么区别?
经常被混着说,但它们是两件事,发生的环节不一样。
污染:解析阶段就错了
你查域名,返回的 IP 是错的。
浏览器拿着这个错误地址去连接,连的可能是别人的服务器、一个黑洞地址,或者根本连不上。
特征是:解析结果跟权威记录对不上,换 DNS 查询结果可能不同。
劫持:连接或内容阶段被动过
解析是对的,IP 也是对的,但中间有人插了一手。
可能表现为:请求被跳转到运营商提示页、页面里被插入广告、返回的内容被替换。
它发生在连接建立之后,或者内容传输过程中。
怎么区分
查解析。如果 IP 就是错的,那是污染。
如果 IP 对、但访问被跳转或内容异常,那是劫持。
两个工具分别对应:DNS 查询/污染检测看解析,拦截检测看连接层表现。
为什么会出现「都像」
因为用户感知是一样的:网站打不开或者打开的不对。
而且现实中可能同时发生:域名先被污染,连接层又被劫持。只测一层,很容易得出片面结论。
处理方式也不一样
污染:换 DNS、启用 DoH/DoT、换解析服务商,严重时换域名。
劫持:上 HTTPS 能防内容篡改,但防不了跳转;连接层的劫持要靠链路和合规手段处理。
一句话
污染是「地址给错了」,劫持是「路是对的,但有人中途上车」。先分清是哪一种,再谈怎么修。