将openwrt的相关配置记录下来,防止下次找不到。理论上而言,vpn连接上之
后的设置都是通用的。我用的是支持pptp的vpn。
opkg update
opkg install ppp-mod-pptp kmod-pptp kmod-mpe kmod-gre
vi /etc/config/network
config interface 'tun0'
option ifname 'pptp-vpn'
option proto 'pptp'
option server 'x.x.x.x'
option username 'xxxx'
option password 'xxxx'
option peerdns '0'
option metric '2000'
config route
option interface 'tun0'
option target '1.2.3.4'
option gateway '10.3.4.1'
config route
option interface 'tun0'
option target '2.3.0.0'
option netmask '255.255.0.0'
option gateway '10.3.4.1'
第一段是添加一个名字为tun0的网络接口,拨号协议时pptp。peerdns为0表示
使用默认的dns服务器,不是用vpn获取到的dns服务器。由于我只是指定固定的ip
通过vpn访问,所以就这样配置了。
第二段和第三段是指定通过vpn的网络规则,分别对应单独的一个IP和一个范
围的IP.
vi /etc/ppp/option.pptp
#mppe required,no40,no56,stateless
由器中检查流量的走向的时候,将会是正确的,但局域网中的电脑却还是默认的路
径。
iptables -I FORWARD -o br-lan -j ACCEPT #允许br-lan端口流量被转发
iptables -I FORWARD -o tun0 -j ACCEPT #允许tun0端口流量被转发
iptables -t nat -I POSTROUTING -o tun0 -j MASQUERADE #tun0出口的流量SNAT出去
检查可以了,就这么用着了。
vi /etc/config/firewall
config zone
option forward 'ACCEPT'
option output 'ACCEPT'
option name 'vpn'
option network 'tun0'
option masq '1'
option mtu_fix '1'
option input 'REJECT'
config forwarding
option dest 'vpn'
option src 'lan'
以上大部分都可以通过web页面设置,只是通过shell的话我觉得更清楚些,也
懒得截图额。
如果vpn服务器是国外的话,那么恭喜咯,局域网中的电脑可以自动按照规则翻
墙了,当然,你也可以用来做电信和网通的加速使用。
PS: 相同的文章写两遍就是痛苦啊,明明昨天写了一次,结果在emacs中不小心
按了将alt将ctrl键用了,弄的找也找不回来。不熟悉的键盘配置就是麻烦啊。