运营商劫持(ISP 劫持)分为两大类:DNS 劫持(污染)、HTTP 流量劫持。
DNS 劫持:篡改域名解析结果,返回虚假 IP,区域性打不开网站;
HTTP 劫持:针对明文 80 端口,插入广告、强制跳转、页面篡改。
HTTPS 加密链路无法被插入广告,但依然存在 DNS 劫持风险。下面分网站站长防护方案、访客终端防御方案,附带证据留存与投诉维权流程。
一、先分清劫持典型特征
1、DNS 劫持
不同网络解析结果不一致;部分地区正常、部分地区访问虚假站点;nslookup 返回错误 IP;切换公共 DNS 后恢复正常。
2、HTTP 流量劫持
仅 HTTP 页面弹出广告、莫名跳转;切换 HTTPS 访问,广告消失;手机流量正常、家庭宽带异常。
二、站长(网站服务端)根治方案【最重要】
1、全站强制 HTTPS,杜绝 HTTP 劫持
1)部署可信 SSL 证书,关闭明文 HTTP 业务;
2)Nginx/Apache 配置 301 强制跳转:http://域名 → https://域名;
3)添加 HSTS 响应头,防止 SSL 剥离降级劫持:
Strict-Transport-Security: max-age=31536000; includeSubDomains
4)禁止混合内容,页面内所有静态资源统一使用 HTTPS 地址。
2、优化 DNS 架构,抵御 DNS 劫持 / 污染
1)更换 Anycast 智能 DNS 服务商,不要使用注册商默认 NS;
2)域名后台开启DNSSEC,给解析记录签名,防止解析结果被篡改;
3)避免多层 CNAME 嵌套,缩短解析链路;
4)接入 CDN,借助 CDN 全局调度缓解区域性 DNS 污染问题。
3、页面增加防转码标签,屏蔽运营商页面重排版
网页头部加入:
html
预览
作用:阻止运营商自动转码、页面压缩、插入广告。
4、合规层面减少拦截风险
确保域名 ICP 备案有效、主体一致;清理违规内容,降低运营商 DPI 主动拦截概率;未备案海外站点更容易触发 DNS 污染。
三、访客 / 终端侧防御方案(用户访问端)
方案 1:更换公共 DNS(基础手段)
不要使用宽带自动分配的运营商 DNS。
国内推荐:
阿里 DNS:223.5.5.5 / 223.6.6.6
腾讯 DNS:119.29.29.29 / 182.254.116.116
海外纯净:1.1.1.1
设置位置:
路由器 WAN 口 DNS(全屋设备生效,优先推荐)
Windows / 手机 WiFi 网络 IPv4 手动 DNS
方案 2:启用 DoH / DoT 加密 DNS(抵御 DNS 劫持最优)
明文 UDP 53 端口极易被 DPI 篡改;加密 DNS 把解析请求封装在 HTTPS/TLS 隧道,运营商无法篡改解析结果。
DoH 地址(阿里):https://dns.alidns.com/dns-query
浏览器(Chrome、Firefox)可直接开启「安全 DNS」填入地址;OpenWrt、华硕梅林路由器支持全局 DoH。
方案 3、其他终端优化
1、关闭代理、加速器,部分代理链路会加剧劫持;
2、刷新本地 DNS 缓存:ipconfig /flushdns;
3、优先访问 HTTPS 链接,不要手动输入 http;
4、公共 WiFi 环境风险极高,尽量避免访问重要站点。