备注:本文转自http://www.cnblogs.com/alexsun/p/5894338.html
需求及环境
学校的教务管理系统需要内网才能登录,当我不在学校的时候使用外网无法访问。于是打算把树莓派部署在寝室并搭建一个VPN服务器以便我连接以访问教务管理系统。
树莓派通过有线连接到一个路由器,路由器拨号访问网络。
必要软件安装
我们需要用到ppp
pptpd
这2个软件
sudo apt-get install ppp
sudo apt-get install pptpd
配置pptpd
设置ip
编辑文件/etc/pptpd.conf
,在文件末尾添加:
localip 192.168.1.101
remoteip 192.168.1.110-120
此处建议网段与树莓派所在的内网网段相同,但是ip地址不要有冲突。
配置ppp
设置VPN的连接凭证
编辑文件/etc/ppp/chap-secrets
,一行一个用户:用户名 * 密码 *
修改默认MTU
现在已经可以正常连接,但是目前部分网站无法访问。
通过ifconfig可以看到,因为与peer协商出来的MTU值为1396,我们需要想办法将MTU的值设置为1496才能顺利访问所有网站。
网上修改MTU的方法有这两种:1.通过iptables设置防火墙规则。2.通过编辑ip-up相关文件实现新连接后自动执行ifconfig指定MTU。
虽然这两种方法可行,但总觉得是下策,考虑应该可以通过ppp配置文件来实现指定MTU,尝试以后果然找到了办法。
修改文件/etc/ppp/options
,在文件中的相应位置或者直接在文件末尾添加:
-mru
mru 1496
第一句的意思是关闭与另一方的MRU协商,不写这句话则第二句话无效(最终MTU值会被协商结果覆盖)
第二句的意思是设置默认MRU值为1496,不写这句话则默认MRU值1500
再次执行ifconfig命令,可以看到MTU已变为1496,所有网站也已能正常访问。
-------------------
重启pptpd
sudo service pptpd restart
我们的VPN即可正常使用。
(实测不需要设置iptables)
时间: 2024-08-05 11:17:09