指定IP通过VPN
  最近做论文要用到google scholar,然而google时断时续的,于是买了个vpn。用上了vpnroute add 添加路由国内的一些网站上不了,学校的论文也下载不了了(论文库是通过IP登录)。想让google scholarvpn,而且其他的IP都走正常网卡。
  参考[1],添加静态路由表,用其中的脚本,把国内和国外的IP给分开走,但是这样将国内的IP都加到路由表需要穷举国内IP,如果访问一个没有加入的网站,则很慢或者有的就上不去。
参考[1]中的脚本如下:
#关闭屏显,这个不关键,忽略之
@echo off
#寻当前默认网关,即本地网卡。
#(如果开启了openVPN,那么就是VPN对应的IP地址,所以在请开启vpn之前运行此脚本)
for /F "tokens=3" %%* in ('route print ^| findstr "<0.0.0.0>"') do set "gw=%%*"
#清空DNS
ipconfig /flushdns
#添加路由表,如果网络是1.12.0.0/16 ,则走本地网关
route add 1.12.0.0 mask 255.252.0.0 %gw% metric 5
#后面所有的均如此 ,后面是都是穷举中国的网段,让中国的ip走本地网络
  调整思路,将googleIP加入路由表走vpn就好了,参考[2].
#-P参数下次重启后本静态协议还是存在
#74.125.239.0 googleip段,10.85.92.10 vpn ip地址
#vpn ip地址通过 ipconfig查看ppp适配器网卡得到
route add -p 74.125.239.0 mask 255.255.255.0 10.85.92.10 metric 2
#添加完后,将其他的IP都从vpn中去掉
#右键VPN连接-属性-网络-TCP/IP协议(Windows7\Windowsserver2008 IPV4)-高级-把在远程网络上使用默认网关 的勾 去掉即可。
   其中还有一个问题,就是google会走ipv6,我用的教育网支持ipv6,默认解析到了ipv6而不是加入路由的IP,解决方法:在host中添加google对应的ip