墙开始劫持向外国服务器发出的DNS查询

来源:Antonio的博客

近期墙开始劫持国内到国外的DNS查询,本人尝试使用包括OpenDNS、和记电信在内的多个国外DNS服务器进行测试,发现查询均返回了不可到达的IP地址。
网络环境:Windows 7 + 深圳电信ADSL直接拨号。

注:以下图片截图时均使用了和记电信的DNS(202.45.84.58、202.45.84.59),OpenDNS等的测试结果与此类似,请自行试验。另你所在的地区可能会没有这种情况。

使用香港和记电信DNS

尝试打开Twitter、Facebook、Youtube等网站均显示“连接超时”,而不是“连接被重置”

 
Ping这些网站返回的IP地址均被劫持:
尝试用network-tools.com的ping工具,页面马上被重置,看来这些IP地址已被列为敏感词语:

使用代理进行Ping查询,这几个IP地址均不可到达:


分析:
墙的此次升级预示国内网络环境将进一步恶化:

1. 将网站导向一个不可到达的地址,使浏览器显示“连接超时”,无疑更具欺骗性;
2. 目前墙仍未全面实施对国外DNS查询的劫持(如对BBC中文等网站进行查询时依然返回了实际的IP地址),但可以预见的是,未来这种技术将会流行,因为这种技术有效、完美;
3. OpenDNS这类DNS服务无效以后,访问被封锁的网站将会变的更加困难——手动修改本地hosts文件,但这种方法无疑非常麻烦;使用代理服务器远程DNS查询亦会使问题变得更加复杂:
  • HTTP及Sock4(不包含Sock4/a)代理并不支持远程DNS查询,因此可用的资源会进一步下降;
  • IE系(包括Maxthon、世界之窗等)的浏览器默认在本地查询DNS,即使设置了socks代理仍然如此,因此它们永远无法打开Twitter。可使用Sockscap等软件强制远程DNS查询;
  • Firefox默认同样本地查询DNS。解决方法:将network.proxy.socks_remote_dns设置为true,如安装了FoxyProxy可以在全局设置里勾选“使用Socks代理服务器来查找DNS”

没有评论: