ocserv根据分组区分全局与分流流量

ocserv默认可以设置路由为全局或者智能区分流量,但是如果有时候要用到全局(比如打外网游戏)有时候又只用智能区分流量(比如普通上网),那该怎么办呢?

这里就可以使用ocserv的分组功能了.这里我们创建两个分组,一个是全局分组(All)一个是智能区分流量分组(Route).

首先切换认证模式到auth = "plain[/etc/ocserv/ocpasswd]"

如果之前使用的是证书认证模式,取消证书验证模式.

清空掉ocserv.conf里的路由表.

注释掉下面这些代码:

select-group = Route
select-group = All
auto-select-group = false
config-per-group = /etc/ocserv/config-per-group

创建用于放置分组配置的文件:

mkdir /etc/ocserv/config-per-group

在文件夹里面创建两个文件,并分别写入规则.

Route:

执行下面命令.

wget https://raw.githubusercontent.com/CNMan/ocserv-cn-no-route/master/cn-no-route.txt -O /etc/ocserv/config-per-group/Route

All:

config-per-group文件夹里创建一个All文件并写入下面代码.

route = 0.0.0.0/128.0.0.0
route = 128.0.0.0/128.0.0.0

创建分组用户:

username为自定义的用户名,切记千万不要同时将一个用户添加到两个不同的分组:

ocpasswd -c /etc/ocserv/ocpasswd  -g "All" username

最后重启ocserv即可.

资料出处:https://github.com/fanyueciyuan/eazy-for-ss/blob/master/ocservauto/plain-ca-group.md