换了ubuntu 14.10,发现官方的openswan的包没出来,而ppa中的network-manager-l2tp依赖于openswan。不得已只能退回丑陋的命令行使用xl2tpd的方法。
配置xl2tpd
sudo apt-get install xl2tpd
在/etc/xl2tpd/xl2tpd.conf
中增加
[lac <config_name>]
lns = 10.5.1.9
redial = yes
redial timeout = 15
require pap = no
require chap = yes
require authentication = yes
name = <user_name>@a
ppp debug = no
pppoptfile = /etc/ppp/options.xl2tpd.zju
config_name
随便填,不过要和后面脚本中的一致。user_name
按自己需求来,一般是学号pppoptfile
的路径要和后面ppp的配置文件一致
注意lns
必须是10.5.1.9
, 另外两个.5和.7的ip都会出问题,不知道为啥
配置ppp
新建/etc/ppp/options.xl2tpd.zju
noauth
proxyarp
defaultroute
编辑/etc/ppp/chap-secrets
(最好是把密码写到这个文件中来,而不是像archwiki中写到xl2tpd的配置文件中去,那种是比较老的做法)
# Secrets for authentication using CHAP
# client server secret IP addresses
<user_name>@a * <password> *
注意那两个星号就是真的星号,表示server和client的ip都是任意的,字段直接都有一个空格
开始连接
连接
echo "c <config_name>" > /var/run/xl2tpd/l2tp-control
断开
echo "d <config_name>" > /var/run/xl2tpd/l2tp-control
都需要root权限,config_name
是刚才在在xl2tpd.conf
中提到的那个
连接成功了吗
ifconfig
如果你看到了ppp0
或者其他ppp设备,并且ip是222.205开头的,那一般是连接成功了
如果没有,请查看日志
tail /var/log/syslog
更改路由
对,做完了前面几步还是不能直接上网
对,用命令行就是这么不智能,还得手动改路由
最简单的方法是,把原来的默认路由删掉,改成全经由ppp0
route del default eth0
route add default ppp0
但这样会导致访问内网时也要从vpn server那里转一圈,会被限速
所以最好保持一些静态路由,具体怎么设置就不再赘述了
对了,断开连接之前也要把ppp0的所有路由都删掉哦
如果做完这一步不能上网,请务必确保你的lns填的是10.5.1.9
而不是10.5.1.5
或10.5.1.7
或lns.zju.edu.cn