利用树莓派实现国内外网站自动翻墙
Google被封得厉害,苹果App Store更新也很慢,以前是通过翻墙VPN方式来解决的,但是这种方式不能实现多设备共用,而且访问国内网站也用VPN,反而降低了速度。
最近弄了一个树莓派,省电,24小时开着都不担心电费问题,自然就想到了用树莓派来解决这个问题。
下面这个就是总体思路,由树莓派当做网关,自动识别访问的目标地址是国内网站还是国外网站,如果是国内网站,直接走路由器访问,如果是国外网站,则通过VPN拨号访问。
具体步骤:
安装操作系统,树莓派支持多种操作系统,我选择的是官方推荐的Raspibian,基于debian。操作系统的安装:
安装指导:https://www.raspberrypi.org/documentation/installation/installing-images/README.md, 有针对Linux/Mac OSX/Windows的说明,按照说明把系统刷入SD卡
插入SD卡,启动Raspbian,初次登录用户名和密码: pi / raspberry
为了提高raspbian安装其他软件包的速度,建议把更新源设置为国内的,更新源有很多,我用的是搜狐的,执行命令:
sudo nano /etc/apt/sources.list
然后用下面的内容替换原来的文字:
deb http://mirrors.sohu.com/raspbian/raspbian/ wheezy main contrib non-free
deb-src http://mirrors.sohu.com/raspbian/raspbian/ wheezy main contrib non-free更新系统软件:
sudo apt-get update
sudo apt-get distupgrade
在树莓派配置VPN(这里使用PPTP拨号方式翻墙,使用其他翻墙方式的同学请自行搜索配置方式)
安装PPTP支持
sudo apt-get install pptp-linux建立VPN链接
/usr/sbin/pptpsetup --create myvpn --server <server-address> --username <username> --password <password> --encrypt --start
<server-address>、<username>、<password>请用自己的配置进行替换测试VPN:
sudo pon myvpn #连接VPN
ifconfig #如果 ifconfig能看到 ppp0这个设备并有IP地址分配,那说明连接成功了
sudo poff myvpn #断开链接
配置树莓派的IP转发
sudo nano /etc/sysctl.conf
将 net.ipv4.ip_forward的值改成 1
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE # 将访问请求默认转发到ppp0设备,即VPN链路将国内IP添加到路由策略中,令其直接走路由器。 脚本参考 https://github.com/sabersalv/freedom-routes
配置路由器的DHCP服务器,将客户端的IP默认网关指向树莓派的IP地址。
至此,全部配置完成。
PS: 把主DNS服务器设置成8.8.8.8,不然DNS污染问题会导致翻墙失败
本文出自 “IT艺术” 博客,请务必保留此出处http://suman.blog.51cto.com/1860475/1635858
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。