发现Open DNS很烦人

一直以来偶都用OpenDNS的DNS服务器(208.67.222.222 ,208.67.220.220)
虽然不能突破GFW,但对于中国电信之类的流氓公司的浏览器劫持还是有一定作用的

但OpenDNS有个很烦人的地方,启用OpenDNS的 DNS服务器后,如果在浏览器输入错误的域名,URL,不存在的地址,都会被重定向到OpenDNS的错误页面,甚至当被访问的网站Site Down时也会被自动重定向到Open DNS. OpenDNS宣称,它们用它们的友好错误页面替代浏览器默认所谓的”难于阅读的错误页面”

这种说法纯属放屁.
浏览器的错误页面在我看来是最好的,它最简洁,没有任何多余的信息,却能告诉我们问题的原因.
对比下面两个图片,一个是FireFox错误页面,一个是启用Open DNS后当访问网站当机后会被定向到的该死的Open DNS错误页面




FireFox错误页面非常直观,相比之下,OpenDNS的错误页面包含一堆垃圾(底部还有Yahoo搜索,截图中未包含),并且,OpenDNS错误页面内给出的尝试访问网址并不是链接形式!,这意味着你必须再次在浏览器地址栏手工输入网址去重复尝试访问!

这是可以理解的,因为OpenDNS正是靠在错误页面中插入雅虎等的搜索结果来获得收入.
但对我来说,这就是垃圾.

我试图通过一些设置来避免OpenDNS返回自己错误页面.但我发现,这是不可能的.
我们来做个实验:

把计算机的DNS服务器设为OpenDNS的
打开FireFox,在地址栏输入一个不存在的域名: http://www.asbbfsdfsd.com
然后我们用FireFox 的Live Http headers插件获取返回的http头信息,如下:

http://www.asbbfsdfsd.com/

GET / HTTP/1.1
Host: www.asbbfsdfsd.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive

HTTP/1.x 302 Found
Date: Sat, 24 Nov 2007 13:26:10 GMT
Server: Apache
X-Powered-By: PHP/5.2.1
Location: http://guide.opendns.com/?url=www.asbbfsdfsd.com
Connection: close
Content-Type: text/html
———————————————————-
http://guide.opendns.com/?url=www.asbbfsdfsd.com

GET /?url=www.asbbfsdfsd.com HTTP/1.1
Host: guide.opendns.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: LPUID=328dff31-d888-5304-e9cb-6c0eb2a6e593; t=x-1195282800; LPSID=c6262fe3-e190-fc64-8d55-7ffbd5fbb61d

HTTP/1.x 200 OK

看到了吧,输入http://www.asbbfsdfsd.com居然返回了正常的http头信息,然后被302重定向到Open DNS的错误页面. 而正常情况应该是一开始DNS解析就失败(Host Not Found). 这就是说,Open DNS为这个不存在的域名返回了一个IP (这个IP应该是其自己服务器的IP),然后”劫持”客户端浏览器到其错误页面.

因此,只要使用Open DNS的DNS解析,你就无法阻止其”劫持”浏览器错误页面行为.

从技术上说,这种行为与域名劫持(GFW,中国电信经常干的事情)没有区别.
无论Open DNS有多么充分的理由,这种行为都严重侵犯浏览者自由意志.

所以我决定,
从现在起,不再使用Open DNS的DNS解析
这意味着我不需要再忍受Open DNS那愚蠢而霸道的错误页面.
至于浏览的安全性问题,则完全可以通过加密Socks5代理+SocksCap代理调度软件解决.

以上.

0 Responses to “发现Open DNS很烦人”


Comments are currently closed.