GOLF-AT
千年狐狸
千年狐狸
  • UID11611
  • 注册日期2006-02-20
  • 最后登录2019-12-30
  • 发帖数3239
  • 经验265枚
  • 威望1点
  • 贡献值260点
  • 好评度59点
  • 社区居民
  • 忠实会员
阅读:15102回复:25

自己写的程序 VPNRouteSrv,VPN 的好帮手

楼主#
更多 发布于:2009-09-16 17:15
GFW 似乎越来越强大了,最近,在家里的电脑上 (無)- 界 也变成 (有)界 了,所以现在改用 VPN 了。目前我使用 UltraVPN 服务器,免费的,速度也不错。不过 VPN 有一个缺点,默认情况下,所有网站都使用 VPN 连接了,造成国内的网站访问速度变慢,或者根本无法访问。看了网上的一些资料,自己写了一个小程序,让国内网站不使用 VPN,只有国外的网站才使用 VPN。当然,你也可以自己添加站点,让某些国外的网站也不使用 VPN。此程序为服务程序,适用于内网用户,默认网关为 192.168.1.1 ,如果网关不是这个,需要在 ini 文件的[Option]下的 gateway= 后面指定自己的网关。这样,你就可以让 VPN 一开机就始终连着。用户可以找一些显示 IP 的网页做测试(我提供2个测试网站 http://www.123cha.comhttp://www.ip.cn/)。

用法:解压后放在电脑的任意地方,运行 VPNRouteSrv.exe /install 安装服务(电脑开机后自动运行)。如果网关不是 192.168.1.1,需要打开 VPNRouteSrv.ini,在 gateway= 后面填上自己的网关就可以了,很简单吧。如果你觉得你经常访问的国外站点,使用 VPN 后明显变慢了,可以将这些网站的 IP,添加到 VPNRouteSrv.ini 的 [RouteIP] 下,每行一个 IP。IP 可以使用掩码,比如:

209.85.128.0
209.85.128.0 mask 255.255.128.0
209.85.128.0/17

上面的第一行指定了一个IP,第二行和第三行是等价的,表示 209.85.128.0 - 209.85.255.255 之间的所有 IP。

这个程序,本来是可以不用做成“服务”的。但是它用到 Windows 的 Route.exe 命令,如果做成普通程序,必须要管理员权限,做成“服务”的话,只要第一次安装时需要管理员权限,以后开机运行,即使是普通用户登录也是可以使用的。这个“服务”不是一直运行的,它只是将国内 IP 或者用户设定的 IP 设为直接连接后就自动结束了,所以用户登录后,查看这个服务的话,它的状态是“停止”,而不是“正在运行”。

我制作了一个 OpenVPN 绿色版,需要的网友可以去 https://www.firefox.net.cn/forum/viewtopic.php?p=218470 下载。

建议:使用这个工具后,访问某些国内网页时,还是觉得慢。现在,我觉得可能和 DNS Server 有关(第一次访问网页时,需要到 DNS Server 查询该网站的 IP 地址)。将 VPN 虚拟网卡的 DNS Server,第一个设成本地的,第二个设成国外的,这样浏览器第一次访问某个网页时,就直接到本地的DNS Server去获取IP(如果找不到再到国外的DNS Server获取IP),这样应该可以解决这个问题。
附件名称/大小 下载次数 最后更新
VPNRouteSrv.zip (263KB)  410 2009-09-16 17:15
mozillazg
小狐狸
小狐狸
  • UID27293
  • 注册日期2008-12-03
  • 最后登录2014-08-31
  • 发帖数88
  • 经验11枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
1楼#
发布于:2009-09-16 17:15
是不是要启用本机路由功能啊.
如何 卸载及还原更改
myfox1900
火狐狸
火狐狸
  • UID28479
  • 注册日期2009-04-05
  • 最后登录2014-03-19
  • 发帖数239
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
2楼#
发布于:2009-09-16 17:15
请问是否只能OpenVPN使用?
能不能其他VPN也可以有效?
BTW:
OpenVPN我这里貌似已经HX了
195
195
千年狐狸
千年狐狸
  • UID3920
  • 注册日期2005-03-12
  • 最后登录2023-01-15
  • 发帖数1123
  • 经验50枚
  • 威望0点
  • 贡献值0点
  • 好评度2点
  • 社区居民
  • 忠实会员
3楼#
发布于:2009-09-16 17:15
怎么配个那个绿色OpenVPN使用?
cdhua2010
小狐狸
小狐狸
  • UID21873
  • 注册日期2007-11-15
  • 最后登录2019-04-09
  • 发帖数53
  • 经验37枚
  • 威望0点
  • 贡献值0点
  • 好评度1点
  • 社区居民
  • 忠实会员
4楼#
发布于:2009-09-16 17:15
做个标记,很好的程序。
zj45499
千年狐狸
千年狐狸
  • UID29472
  • 注册日期2009-07-03
  • 最后登录2014-10-06
  • 发帖数1158
  • 经验11枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
5楼#
发布于:2009-09-16 17:15
...安上去了...不过虽然速度不错...不过一连接..QQ,迅雷全掉线..


GOLF-AT
千年狐狸
千年狐狸
  • UID11611
  • 注册日期2006-02-20
  • 最后登录2019-12-30
  • 发帖数3239
  • 经验265枚
  • 威望1点
  • 贡献值260点
  • 好评度59点
  • 社区居民
  • 忠实会员
6楼#
发布于:2009-09-16 17:15
zj45499:我的确是在开始-运行里运行:"VPNRouteSrv.exe /install"
结果就显示:
windows找不到文件"VPNRouteSrv.exe",请确认文件名正确后再试一次,要搜索文件云云....


另外,,,,,这个VPNRouteSrv.对迅雷下载有效吗??....(因为还没安上......不知道..)
回到原帖

唉,看来你对电脑了解的还是太少了。在“开始-运行里运行”,如果不指定程序的目录的话,程序的目录必须在系统变量 %path% 中,否则必须指定程序的全目录。或者在“命令提示符”窗口中,先进入到 VPNRouteSrv.exe 所在的目录,再运行 VPNRouteSrv.exe /install
盘儿净
火狐狸
火狐狸
  • UID16250
  • 注册日期2006-12-15
  • 最后登录2017-02-04
  • 发帖数147
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
7楼#
发布于:2009-09-16 17:15
似乎只对OpenVPN有效,其它无效。比如我用itshidden免费VPN,自己在XP网络连接里设置。
zj45499
千年狐狸
千年狐狸
  • UID29472
  • 注册日期2009-07-03
  • 最后登录2014-10-06
  • 发帖数1158
  • 经验11枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
8楼#
发布于:2009-09-16 17:15
我的确是在开始-运行里运行:"VPNRouteSrv.exe /install"
结果就显示:
windows找不到文件"VPNRouteSrv.exe",请确认文件名正确后再试一次,要搜索文件云云....


另外,,,,,这个VPNRouteSrv.对迅雷下载有效吗??....(因为还没安上......不知道..)


GOLF-AT
千年狐狸
千年狐狸
  • UID11611
  • 注册日期2006-02-20
  • 最后登录2019-12-30
  • 发帖数3239
  • 经验265枚
  • 威望1点
  • 贡献值260点
  • 好评度59点
  • 社区居民
  • 忠实会员
9楼#
发布于:2009-09-16 17:15
zj45499:windows找不到文件"VPNRouteSrv.exe",请确认文件名正确后再试一次,,,???回到原帖

不会的话,就请看一下一楼的说明。
zj45499
千年狐狸
千年狐狸
  • UID29472
  • 注册日期2009-07-03
  • 最后登录2014-10-06
  • 发帖数1158
  • 经验11枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
10楼#
发布于:2009-09-16 17:15
windows找不到文件"VPNRouteSrv.exe",请确认文件名正确后再试一次,,,???


zj45499
千年狐狸
千年狐狸
  • UID29472
  • 注册日期2009-07-03
  • 最后登录2014-10-06
  • 发帖数1158
  • 经验11枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
11楼#
发布于:2009-09-16 17:15
怎么用哦...........双击VPNRouteSrv.exe后就可以了???
双击之后就没反应了啊....


GOLF-AT
千年狐狸
千年狐狸
  • UID11611
  • 注册日期2006-02-20
  • 最后登录2019-12-30
  • 发帖数3239
  • 经验265枚
  • 威望1点
  • 贡献值260点
  • 好评度59点
  • 社区居民
  • 忠实会员
12楼#
发布于:2009-09-16 17:15
98118:不行啊。。。国内ip还是走VPN
安装后已经重启一次了
路由是TPLINK R410
网关192.168.1.1

感觉是路由表不全的问题...
我平时是用这个路由表
http://www.lenghost.cn/favor/vpn-route-tab/
回到原帖

你提到的这个路由表,非常粗旷,而且不全。我的程序中使用的路由表,有大概1500行,比你说的这个路由表要精确很多很多。这个程序的最初版本(我自己使用,没有放出来),使用的就是你说的这个路由表,后来在其他地方找到了比较精确的路由表,不敢保证100%准确,但应该有95%以上的准确率。比如,你说的路由表,58. 开头的都是国内IP,其实 58.0.0.0 - 58.13.255.255,  58.26.0.0 - 58.29.255.255,  58.64.0.0 - 58.65.255.255 等等,都不是国内的 IP。

使用 VPN 后,在命令行提示符窗口使用 ping 或者 tracert 命令时,很多网站的地址都被改掉了。比如,你的贴图中,本来是 <!-- w --><a class="postlink" href="http://www.163.com">www.163.com</a><!-- w -->,但是它实际跟踪的是 <!-- w --><a class="postlink" href="http://www.cache.gslb.netease.com">www.cache.gslb.netease.com</a><!-- w -->。可能 ping 或者 tracert 之类的命令,仍然要经过 VPN 吧。但是在浏览器中,国内的网页,绝对没有走 VPN。这个你可以用显示 IP 地址的网页来测试。比如,我在一楼提到的 http://www.123cha.com。不过我发现一个问题,有时浏览国内网页也会很慢,今天我突然想到,可能是 DNS Server 的问题。如果电脑上没有网站的 IP 地址(比如电脑上没有www.163.com的IP),系统就要到 DNS Server 上去查找 它的 IP 地址。由于此时 IP 地址未知,所以系统就要到 VPN 虚拟网卡的 DNS Server) 上去获取 IP 地址。这样的话,就可能导致有些国内的网页第一次浏览时比较慢。一旦 IP 地址已经获取了,国内网页就不用再走 VPN 了。所以,我现在将自己电脑上的 VPN 虚拟网卡的 DNS Server,改成本地的 DNS Server 了。不过,这样子的话,某些网页的 IP 会不会被屏蔽。再进一步,我又将 VPN 虚拟网卡的 DNS Server,一个设成本地的,另一个设成国外的(比如OpenDNS),这样应该就不会有问题了。
fiag
管理员
管理员
  • UID1188
  • 注册日期2004-12-21
  • 最后登录2025-04-18
  • 发帖数4681
  • 经验686枚
  • 威望0点
  • 贡献值402点
  • 好评度51点
13楼#
发布于:2009-09-16 17:15
太强大了。!
98118
禁止发言
禁止发言
  • UID75
  • 注册日期2004-11-23
  • 最后登录2018-05-22
  • 发帖数1269
  • 经验-128枚
  • 威望0点
  • 贡献值-356点
  • 好评度-215点
  • 社区居民
  • 忠实会员
14楼#
发布于:2009-09-16 17:15
用户被禁言,该主题自动屏蔽!
上一页
游客

返回顶部