长城宽带重定向请求(DNS劫持)怎样解? 背后的原因与技术实现是怎样?

1. 原因:必然都是广告。钱在作怪,运营商不甘只做带宽提供者,还要想方设法赚更多钱。2. 技术,包括但不限于(我这里不去说明哪个运营商用了哪个具体的技术,只是列一些可行的方案): DNS劫持。个人认为这个不太好,在本地有DNS缓存的情况下,不方便精确控制某次是否显示广告。 HTTP响应注入。通常可以通过在在你的http响应中注入一段js弹个窗,也可以给你返回一段带iframe的页面,iframe的src再指向目标页面(这个时候理论上也可以通过一些技术实现使得不会重复请求服务器)。 HTTP请求劫持。你提到的这个情况,目测就是请求劫持(不是DNS劫持),ISP的网络设备得知你发起GET http://www.baidu.com/的时候,拦截掉,给你响应302 http://他们自己的广告服务/带上一串标志例如D765216151E9CF4EA31E6AF9940D9451(他们自己内部已经使用D765216151E9CF4EA31E6AF9940D9451关联了你本次请求的详情)。这时,你的浏览器就请求他们给的地址,他们再发起你真正的请求以及返回广告。广告和你想要的响应通常可以用iframe来组合。估计还有别的流氓方式,在别的地方动手脚,例如拨号客户端、配送的路由。目前电信、联通等运营商都会有广告,既然不能反抗,那就享受吧。至于你提到的是不是缓存用的,肯定不是,因为缓存根本不需要对你的请求进行更改。
■网友
我长宽最近,确实碰到类似的情况.以前东方有线通也碰到过.太可恶了.
■网友
如果你的公司/学校有内网的话,可以考虑接入公司/学校网络。


    推荐阅读