我只使用了第一种方法,第二种第三种没有测试。

1. 在OpenVPN配置文件中增加

OpenVPN在连接成功之后会自动增加一些路由,把默认网关改成VPN的,使所有流量都从VPN走。OpenVPN提供了在配置文件中添加路由的功能,我们可以增加一些本地路由,使本地流量不走VPN,既节省了流量(如果限流量的话),又提高了上网的速度。

打开sample.ovpn配置文件,在文件末尾添加即可,如果添加的路由数目超过100条,则要加一句max-routes ,如下所示:

max-routes 1000
route 58.17.0.0 255.255.0.0 net_gateway
route 58.18.0.0 255.254.0.0 net_gateway
route 58.20.0.0 255.255.0.0 net_gateway
route 58.24.0.0 255.254.0.0 net_gateway
route 58.30.12.136 255.255.255.255 net_gateway
route 58.32.232.0 255.255.252.0 net_gateway
route 58.53.208.0 255.255.240.0 net_gateway
route 58.59.1.15 255.255.255.255 net_gateway
route 58.59.1.16 255.255.255.254 net_gateway
route 58.59.128.0 255.255.128.0 net_gateway
route 58.60.8.0 255.255.248.0 net_gateway
route 58.60.112.239 255.255.255.255 net_gateway
route 58.61.32.0 255.255.254.0 net_gateway
route 58.61.34.0 255.255.255.0 net_gateway
………………

这样,OpenVPN连接成功之后就会添加这些路由,达到本地地址走本地接口的目的。

附:教育网freeip.txt 中国IP地址分配列表

2. 利用route add命令添加

route add是dos命令,用以添加路由的,只要我们执行下就OK了,命令格式如下:

route add 110.6.0.0 mask 255.254.0.0 %gw% metric 5
route add 110.16.0.0 mask 255.252.0.0 %gw% metric 5
route add 110.40.0.0 mask 255.252.0.0 %gw% metric 5
route add 110.48.0.0 mask 255.255.0.0 %gw% metric 5
route add 110.51.0.0 mask 255.255.0.0 %gw% metric 5
route add 110.52.0.0 mask 255.254.0.0 %gw% metric 5
route add 110.56.0.0 mask 255.248.0.0 %gw% metric 5
route add 110.64.0.0 mask 255.254.0.0 %gw% metric 5
route add 110.72.0.0 mask 255.254.0.0 %gw% metric 5

………………………

这种方法对其它各类的VPN应该是通用的。

附:国内IP地址路由

3. 第三种方式chnroutes

在OpenVPN中调用.bat批处理文件来添加路由,我实验的不太成功,有兴趣的可以参照:http://code.google.com/p/chnroutes 。

OpenVPN添加本地路由方法的更多相关文章

  1. linux 7 添加永久路由方法

    linux 7 添加永久路由 用route命令添加 仅仅是当前状态下生效,一旦重启就会失效. 所以要在/etc/sysconfig/network-scripts/这个路径下添加一个文件route-{ ...

  2. win10家庭版添加本地账户方法

    1.正常情况下,windows的使用者都习惯于用本地用户及用户组工具来创建新用户,如下图所示,在win10的开始窗口右侧的空白处,输入lusrmgr.msc 打开本地用户管理控制台. 2.在win10 ...

  3. Myeclipse10.7添加本地插件方法

    -

  4. Laravel5.5添加新路由文件并制定规则

    Laravel5.5里面有4个默认的路由文件,其中web.php是默认路由文件,如果需要添加其他路由文件,按照以下步骤进行. 此处以添加网站home前端路由举例,我已经先在/app/Http/Cont ...

  5. Redhat、CentOS添加静态路由的标准方法

    我们经常遇到需要在系统默认路由的基础上,额外添加静态路由的需求.为了使得下次系统启动这些静态路由依旧生效,我们可能采取在rc.loal里加入route命令追加静态路由的方法. 现在给大家推荐Redha ...

  6. maven添加本地依赖包方法

    1.某些情况下不方便上传本地依赖包到Maven repository,可以通过下面方法添加本地依赖包. 2.方法 1).pom.xml中添加以下代码块 <dependency> <g ...

  7. Ubuntu Linux系统三种方法添加本地软件库

    闲着没事教教大家以Ubuntu Linux系统三种方法添加本地软件库,ubuntu Linux使用本地软件包作为安装源——转2007-04-26 19:47新手重新系统的概率很高,每次重装系统后都要经 ...

  8. centos7 防火墙一些相关设置 开机添加静态路由 特殊的方法

    参考文献: https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/security_guide/s ...

  9. Maven pom.xml 添加本地jar包依赖以及打包方法

    Maven项目打包时,如果遇到需要添加本地jar包依赖的时候,可以选择两种方法: 1. 安装到本地仓库 第一种方法比较常规,适用于需要添加的jar包也是由maven项目导出,含有pom文件的时候.只需 ...

随机推荐

  1. CMS收集器和G1收集器

    CMS收集器 CMS收集器是一种以获取最短回收停顿时间为目标的收集器.基于"标记-清除"算法实现,它的运作过程如下: 初始标记 并发标记 重新标记 并发清除 初始标记.从新标记这两 ...

  2. hdu1564博弈+找规律

    #include<map> #include<set> #include<cmath> #include<queue> #include<stac ...

  3. 310. Minimum Height Trees -- 找出无向图中以哪些节点为根,树的深度最小

    For a undirected graph with tree characteristics, we can choose any node as the root. The result gra ...

  4. IOS-详解KVO底层实现

    一.KVO (Key-Value Observing) KVO 是 Objective-C 对观察者模式(Observer Pattern)的实现.也是 Cocoa Binding 的基础.当被观察对 ...

  5. 007PHP文件处理—— 判断文件与操作文件fopen fread fclose is_executable is_readable is_writeable

    <?php /** * 判断文件与操作文件fopen fread fclose * is_executable is_readable is_writeable */ //判断一个文件是不是一个 ...

  6. WebApi用Post的方式提交Json时,获取不到值或不进对应方法的问题

    又是一个通宵,终于搞明白了. 被WebApi坑得好惨. 之前用各种方法Post上来,有时可以读到结构,但没值,有时直接就是一个Null,有时连方法都没进就跑了,只是来控制器里看了一下…… 最后好友说还 ...

  7. CASIO 5800P计算器游戏--猜数字游戏

    CASIO 5800P 计算器游戏--猜数字游戏原代码 我编的计算器小游戏--猜数字游戏 LbI I↙ "xxGUESS NUMBERxx xPROGRAMMER:JCHx -------- ...

  8. 免费一年MAP2014+6个月免费MIS2014

    活动页面:http://promos.mcafee.com/en-us/Affiliates/400/Lp/np2815_mavp.aspx?rfhs=1&LPName=np2815_mavp ...

  9. (转)RESTful API 设计最佳实践

    原文:http://www.oschina.net/translate/best-practices-for-a-pragmatic-restful-api 数据模型已经稳定,接下来你可能需要为web ...

  10. 项目中一个Jenkins权限配置的过程

    需求:需要不同账号登录,只看到自己需要看到的job,比如: test01账号登录看到tes01t_job test02账号登录,只看到test02_job 分析:目的是不同项目,不希望看到其他项目或者 ...