今天好不容易用上了VPN,大喜。我们知道,身处教育网,一个VPN最好是能自动区分教育网的IP 段和非教育网IP段以实现网络效率最大化。

我用的软件是 OpenVPN,对应还有一个Route程序,程序自带的规则是清大去年的规则,肯定跟不上时代了,还好学校信息比较公开,这里就是10年3月份的免费地址清单

用记事本打开一下自带的规则,发现是形如

1
8.18.55.177 0.0.0.0 255.255.255.25512.18.186.192 0.0.0.31 255.255.255.224

再用UltraEdit打开,发现是

1
2
8.18.55.177 0.0.0.0 255.255.255.255
12.18.186.192 0.0.0.31 255.255.255.224

这一不同说明,换行符采用的是UNIX换行符,(也可能是Mac,但几率比较小)

而把免费地址清单完全复制,得到

1
2
3
4
5
6
7
8.18.55.177 0.0.0.0 255.255.255.255

12.18.186.192 0.0.0.31 255.255.255.224

12.26.55.108 0.0.0.0 255.255.255.255

12.26.55.139 0.0.0.0 255.255.255.255

等等

于是把这个转换成Route的规则只有两步——

1.把多个空格转成一个空格

2.把换行符改成UNIX风格

下面是具体操作步骤

1.用UltraEdit打开,Ctrl+R进入替换 勾选正则表达式,将[ ]+ 替换成 (也就是单个空格,实际无此双引号)

2.继续进入替换,正则表达式打开,将 ^p(实际无此双引号) 替换成 ^n 保存成cernet.conf 就可以给Route使用了

简单的正则表达式应用,事半功倍。