尝试查找标题中所述问题的原因。目前测试环境依然xp中。
1 facebook、twitter尝试访问
在VPN链接情况下,尝试访问facebook或者twitter,浏览器结果显示为超时。
于是在服务器上测试,可以访问,ping通,一切正常。
于是对比了本机和服务器的ping结果,发现两者DNS后的ip不同,尝试直接用本机DNS获得的ip地址访问,不能。于是查询该IP地址,非美国(爱尔兰、澳大利亚、新西兰、意大利等等)
显然DNS解析上出了问题,抓包,trace,最后确认本机DNS请求没有通过VPN的加密通道,而是通过国内网,也即DNS被防火墙污染。
首先想法,使用Google的8.8.8.8的DNS服务器,试图绕过国内的DNS。无效,DNS返回ip依然是错误的。怀疑防火墙劫持了DNS通讯。开始验证。
指定某确定不存在DNS服务的IP为DNS,尝试查询各网站,理论上应该所有网站都是DNS解析错误,但是对于facebook、twitter的解析竟然依然能够拿到ip地址。
2 结论
国内网络将所有在关键词列表中的网站的DNS查询过滤,返回虚假信息。实施DNS欺骗。
3 youtube的对比
对youtube的网站访问成功,开始疑惑,测试ping youtube网站,依然有欺骗,但是浏览器竟然能够浏览。发现对youtube的DNS查询还包括其他google china的查询,怀疑是浏览器问题,Chrome有做多余工作。
于是换为IE和Firefox,为时间超时。那么与怀疑吻合。
4 youtube的原因
好奇换为非VPN网络情况下,Chrome访问youtube情况。结果为连接被重置。
国内网络在直接IP访问的情况下实施reset。
5 解决方法
http://support.microsoft.com/kb/311218/zh-cn
中的替代方法说明即可。打开键入内容可能为regedit而不是regedit32
该解决方法的参考资料链接为 http://ihipop.info/2010/06/1284.html