连上国外VPN/SSH后还是打不开twitter等网页怎么办,从DNS污染说起
域名服务器缓存污染(DNS cache poisoning),又名域名服务器快取侵害(DNS cache pollution),是指一些刻意制造或无意中制造出来的域名服务器分组,把域名指往不正确的IP地址(参考维基百科)。我博客里经常提到的GFW DNS污染,就是GFW通过一定手段将你的域名解析到错误的IP的情况,一般我们使用VPN/SSH过程中就可以防止DNS污染,不过如果VPN/SSH配置不当连接VPN/SSH后依然会有DNS污染发生,这样就导致了像twitter这样被DNS污染的网站无法访问,而像我博客igfw.net这样域名只是被关键词过滤的网站却可以打开的情况发生。
一、Windows XP系统PPTP/L2TP VPN问题
Windows XP系统连接PPTP VPN或L2TP IPSec VPN后,会发现VPN接口配置的DNS的优先级不够而无法对内部主机进行解析(Windows 7系统不存在此问题)。如果你系统设置的默认DNS服务器是国内DNS服务器,就会导致虽然已经连上了VPN但是无法打开youtube、twitter等网站的现象,这是因为系统默认的DNS还是原来的本地连接的国内DNS,依旧被劫持中。
要解决此问题,请编辑注册表以便将“远程访问服务”连接移至绑定顺序中的最优先位置(参考):
- 单击“开始”,单击“运行”,在“打开”框中键入 regedit32,然后单击“确定”。
- 单击以下注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Linkage- 在右窗格中,双击“Bind”。
- 在“数值数据”框中,选择“\Device\NdisWanIp”项,按 Ctrl+X,单击设备列表的顶部,然后按 Ctrl+V。
- 单击“确定”,然后退出注册表编辑器。
通过该操作,调整了TCP/IP的绑定序列,将VPN拨号等初级接口的优先级调整为第一。这样,通过该端口得到的TCP/IP属性会被优先使用。重启系统后再连接VPN你就可以打开youtube、twitter等网站了。
二、Windows系统OpenVPN问题
有些openvpn服务商的配置没有充分考虑我国特殊国情,导致openvpn连接上服务器之后DNS解析依然使用本机默认DNS服务器,如果你系统设置的默认DNS服务器是国内DNS服务器,就会导致虽然已经连上了openvpn但是无法打开youtube、twitter等网站的现象。这个问题openvpn服务商是完全可以避免的,即使你已经发生了这种情况也可以很容易地自行解决。解决方法很简单,在你openvpn配置文件(写字板打开.ovpn文件修改)最顶端添加如下两行保存后重连vpn即可
route-method exe
route-delay 2
三、使用chnroutes后的问题
以前有网友反应使用chnroutes自动区分国内国外线路,实现VPN智能翻墙后无法打开youtube、twitter等网站,我当时只是说更换本机DNS服务器为国外DNS服务器即可解决,后来我发现是上面说的两种情况在作怪,按照上面的两种做法修改后,一般就不会出现此问题了。不过有时候VPN速度过慢,导致DNS在VPN通道DNS服务器上查询超时,就依然会在本机DNS服务器进行DNS查询,如果你系统设置的默认DNS服务器是国内DNS服务器,就依然会导致虽然已经连上了vpn但是无法打开youtube、twitter等网站的现象。所以如果可能尽量是设置本机DNS服务器为国外DNS服务器,这样不需上述(一、二)两个问题中的设置,就可以打开youtube、twitter等网站了。
以上问题解决的前提是你VPN连接后的确设置了VPN的DNS服务器(至于VPN不能设置其DNS服务器的情况,可以自行设置,PPTP/L2TP VPN直接在VPN拨号连接的Internet协议里设置,OpenVPN可以在配置文件中加入dhcp-option DNS 8.8.4.4 类似设置来设置),且连接VPN后查看IP为国外地址。
四、SSH代理问题
我们一般使用的ssh代理都是Socks5代理,直接设置浏览器代理都存在DNS污染问题,因为此时Socks5代理默认不加密地在本地进行DNS查询,不过Firefox浏览器可以很容易地设置Sock5远程DNS解析,可以防DNS污染,不过其他浏览用户就没有这么简单了。Firefox远程DNS解析设置方法是:
在火狐地址栏输入
about:config
点“我保证会小心”。
在过滤器中输入network.proxy.socks_remote_dns
双击,修改值为ture,关闭页面。
不过还是有其他解决办法的,比如Firefox+AutoProxy、FireFox+FoxyProxy(可设置)、Chrome+SwitchySharp的组合都可以解决此问题,其他浏览器结合.pac脚本也能解决。
当然你可以参考http://igfw.net/archives/947使用Privoxy、Polipo、3proxy转化Sock5代理为Http代理使用就不存在此问题了,也可以配合FreeCap、Proxifier PE设置远程DNS解析来解决。
博主,XP下的VPN接口配置的DNS的优先级问题,我试过,修改注册表后,当重新执行cmd下的ipconfig/flushdns命令后就会恢复win原始的默认配置了啊,达不到VPN的DNS优先的目的
那直接设置dns为国外的
灰常好的文章,喜欢ing
博主好文章
谢谢支持
博主你好!请问有什么办法可以解决登陆不了推特啊?facebookyoutube都可以为什么推特就是无法登陆老是密码错误,从邮箱也不行!
还有就是有什么办法可以改善udp方式连接vpn的稳定性,老是掉线闹心啊。。。real、raptor最近都连不上,是挂了吗??怎么俺就没有成功过?希望博主能够隔一段时间发布一下还有效的vpn的情况,这样就好有的放矢省得俺们这些菜鸟老是瞎折腾,如此真是功德无量!!拜谢
如果网页可以打开,而是密码错误,这是你密码问题,我也没法呀。
据说udp方式连接在拨号上网下可能不稳定,在局域网下没问题,老是掉线很有可能是你本身网络不稳定造成的(比如无线上网、局域网下遭arp、网速太差等)。
real、raptor服务器不稳定吧,等其官网修复。
隔一段时间发布一下还有效的vpn的情况,目前不太现实,我个人精力有限,要发新博文还有顾及以前的没有那么多时间和精力,如果我隔一段时间发布一下还有效的vpn的情况还会引来GFW关注导致VPN再次被封。
谢谢博主及时回复,确实辛苦啦!!得到你的解答心中疑惑少多了哦。。。推特问题是这样的,我是名字密码正确却怎么也登陆不了啊!!!除了注册的那一天可以,在其他地方也曾经看到不少人有这样的现象和解决方法,没有及时看。现在找不到文章,不知该怎么解决哦,无奈。。。。。。
清除cookie后再登陆,要不重新注册一个账号。
请问大侠,什么Sock5代理是最安全的,非要讲它改为Http代理呢?Http代理理应安全系最差的,但为什么DNS污染却对Http代理不起作用??
加密了就安全了。
Sock5可以在本机或远程解析域名
Http在远程解析域名
最近买了路由器,连接vpn成功,却打不开任何被封的网站,原来是dns污染造成的。打开路由器设置界面,找到“网络参数”中的“WAN口设置”-“高级设置”,然后勾选“手动设置DNS服务器”,把“DNS服务器”和“备用DNS服务器”分别改为8.8.8.8和8.8.4.4,然后点击”保存”按钮即可。
最近卡巴斯基更新无论用国内服务器还是国外服务器感觉超级慢,甚至有时速度只达到1Bk,不知道什么原因,而用vpn搭桥更新的话,稍微要快点
这个可以向卡巴斯基官方反馈
博主!乃神人也!看了這篇終於找到最近想要的《也可以配合FreeCap、Proxifier PE设置远程DNS解析来解决》
不過照你的步驟重新啟動電腦.. vpn還是照舊達不到目標
本文的前提是你VPN可以正常连接,且连接后查看IP为国外。
我知道!意思是我找到最近想找的軟件!回帖下感謝下