linux下openvpn的使用
by czyhd on 八.17, 2010, under 网络
有个项目叫chnroutes,可以下载到python写的小程序,根据apnic的数据生成路由表,国内的直连,国外的走vpn.这是比较好的解决方案.
只需要按照项目wiki上所说的,在openvpn的配置文件里写上连接/断开时修改路由器的脚本,或者直接加入路由信息,用命令连接即可.
但是network-manager不会执行openvpn配置文件里的up,down命令,也不理睬路由信息.我现在的做法是,修改/etc/NetworkManager/dispatcher.d/01ifupdown,在里面加入:
vpn-up)
exec /home/tianqi/vps/vpnup
;;
vpn-down)
exec /home/tianqi/vps/vpndown
;;
但是这个时候,vpnup里面获取路由的代码就有问题了,会得到两个IP.修改一下正则表达式,确保得到的是eth或者wlan的.
OLDGW=`ip route show | grep ‘.\(eth\|wlan\)[0-9] proto static’|sed -e ‘s/.*via \([^ ]*\) .*/\1/’`
以后就可以直接在network-manager里连接/断开VPN了.不过遗憾的是,自动连接是无效的.
八月 19th, 2010 on 13:11
你最近都忙啥呢,看你更新挺慢的
八月 19th, 2010 on 14:47
主要是复习,然后偶尔瞎折腾折腾…
十月 12th, 2010 on 15:10
自动连接是无效?遗憾
十月 12th, 2010 on 20:33
貌似是一个放了很久的bug..