位置: 编程技术 - 正文
推荐整理分享OpenWRT 路由配置技巧(PPTP VPN + 断线自动重连+chnroutes国内路由表)(openwrt 路由配置梯子),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:openwrt路由器配置,openwrt 路由配置梯子,openwrt 配置教程,openwrt路由器配置,openwrt 路由配置文件,openwrt 路由配置梯子,openwrt路由器配置,openwrt路由配置pppoe没反应,内容如对您有帮助,希望把文章链接给更多的朋友!
3.配置 DNS a.创建 /etc/config/sec_resolv.conf vim /etc/config/sec_resolv.conf 填入以下 DNS Servers: 复制代码代码如下: nameserver 8.8.8.8 nameserver 8.8.4.4 nameserver ... b.编辑 /etc/config/dhcp vim /etc/config/dhcp 找到 option resolvfile 选项,替换为: option resolvfile '/etc/config/sec_resolv.conf' 4.配置 PPTP a.安装 ppp-mod-pptp 复制代码代码如下: opkg update opkg install ppp-mod-pptp 如果需要 LuCI 支持(推荐): opkg install luci-proto-ppp b.配置 vpn 接口,编辑 /etc/config/network 文件,应该已经有以下内容(如果没有,需要插入),并配置里面的 server、username 和 password: 复制代码代码如下:config 'interface' 'vpn' option 'ifname' 'pptp-vpn' option 'proto' 'pptp' option 'username' 'vpnusername' option 'password' 'vpnpassword' option 'server' 'vpn.example.org or ipaddress' option 'buffering' '1'c.进入 Network -> Firewall ,把 vpn 加入 wan zone,效果如图:
d.进入 Network -> Interfaces ,此时应该已经可以看到 VPN Interface 并可以连接,效果如图:
e.此时在本机 traceroute www.google.com,应该能得到类似以下的结果: 复制代码代码如下:FL-MBP:~ fatlyz$ traceroute www.google.comtraceroute: Warning: www.google.com has multiple addresses; using ...traceroute to www.google.com (...), hops max, byte packets fc_r0.lan (..7.1) 2. ms 0. ms 0. ms .7.0.1 (.7.0.1) . ms . ms . ms ...2 (...2) . ms . ms . ms ge7-6.core3.fmt2.he.net (...) . ms . ms . ms ge-1.core1.sjc2.he.net (...) . ms . ms . ms ... (...) . ms . ms . ms ... (...) . ms . ms . ms ... (...) . ms . ms . ms nuqs-in-f.1e.net (...) . ms . ms . ms可以看出,其中第二跳是 VPN 的网关,而 traceroute www.baidu.com 的话第二跳应该也是同样的结果。 这时已经可以访问 Google, Baidu 等国内外的站点了。 5.配置 chnroutes a.到 chnroutes 项目的下载页面: 下载 linux.zip,解压 b.把 ip-pre-up 重命名为 chnroutes.sh,打开编辑,在 if [ ! -e /tmp/vpn_oldgw ]; then 前插入以下代码,以避免 ppp 连接脚本重复执行导致重复添加路由表项: 复制代码代码如下:if [ $OLDGW == 'x.x.x.x' ]; then exit 0fi
其中 x.x.x.x 是 VPN 的网关,可以先本机连接上去之后查看一下网关地址。 c.ssh 连接到路由器,执行以下命令:
复制代码代码如下:cd /etc/config/mkdir pptp-vpncd pptp-vpnvim chnroutes.sh
在 vim 中把编辑好的 chnroutes.sh 粘贴进去(当然也可以通过 ssh 直接把 chnroutes.sh 文件传过去,或者上传到某个地方再 wget 下载)
执行以下命令,设置权限为可执行:
chmod a+x chnroutes.sh
d.用 vim 编辑 /lib/netifd/ppp-up 文件:
vim /lib/netifd/ppp-up
在 [ -d /etc/ppp/ip-up.d ] && { 这一行前插入以下内容,确保 ppp 连接脚本能够被执行:
sh /etc/config/pptp-vpn/chnroutes.sh
e.重启路由,启动好之后,进入 LuCI 查看接口状态,等 WAN 和 VPN 都连接成功后,ssh进去,执行 route -n | head -n ,效果应该类似这样:
复制代码代码如下:root@FC_R0:/etc/config# route -n | head -n Kernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface0.0.0.0 .7.0.1 0.0.0.0 UG 0 0 0 pptp-vpn1.0.1.0 ...1 ...0 UG 0 0 0 pppoe-wan1.0.2.0 ...1 ...0 UG 0 0 0 pppoe-wan1.0.8.0 ...1 ...0 UG 0 0 0 pppoe-wan1.0..0 ...1 ...0 UG 0 0 0 pppoe-wan1.1.0.0 ...1 ...0 UG 0 0 0 pppoe-wan1.1.2.0 ...1 ...0 UG 0 0 0 pppoe-wan1.1.4.0 ...1 ...0 UG 0 0 0 pppoe-wan
其中 Destination 为 0.0.0.0 的是默认路由,网关为 VPN 网关,意味着默认流量都经过 VPN,而以下的条目则把目的为国内的网段都指向了 ISP 提供的网关。
至此 PPTP VPN 和 chnroutes 已经配置完毕。
6.配置 VPN 断线自动重连 a.创建 /etc/config/pptp-vpn/status-check.sh:
vim /etc/config/pptp-vpn/status-check.sh
在 vim 中粘贴以下内容(此脚本检测 VPN 连接状态,并在断线后会断开 WAN 和 VPN 接口,秒后重新连接 WAN,并在 秒后重连 VPN):
复制代码代码如下:#!/bin/sh</p><p>if [ -f "/tmp/vpn_status_check.lock" ]then exit 0fi</p><p>VPN_CONN=`ifconfig | grep pptp-vpn`</p><p>if [ -z "$VPN_CONN" ]then touch /tmp/vpn_status_check.lock echo WAN_VPN_RECONNECT at: >> /tmp/vpn_status_check_reconn.log date >> /tmp/vpn_status_check_reconn.log</p><p> ifdown vpn ifdown wan sleep ifup wan sleep ifdown vpn sleep ifup vpn sleep rm /tmp/vpn_status_check.lock</p><p>else date > /tmp/vpn_status_check.logfi
执行以下命令,设置权限为可执行:
chmod a+x /etc/config/pptp-vpn/status-check.sh
b.进入LuCI 的 System -> Scheduled Tasks 填入以下内容,并保存:
*/1 * * * * /etc/config/pptp-vpn/status-check.sh
以上实际上是编辑了 cron 配置,cron 每分钟运行检测 / 重连脚本,重启 cron:
/etc/init.d/cron restart
c.静待几分钟,查看 /tmp 目录,应该能看到 vpn_oldgw 和 vpn_status_check.log 文件,查看 vpn_status_check.log 文件,可以看到最近一次检测 VPN 连接状态的时间。
复制代码代码如下:root@FC_R0:/tmp# ls vpn*vpn_oldgw vpn_status_check.logroot@FC_R0:/tmp# cat vpn_status_check.log Tue Jul :: HKT root@FC_R0:/tmp#
你可以在 LuCI 中断开 VPN 接口,在接下来的4-5分钟,观察 WAN 和 VPN 的重连情况。
d.分别 traceroute www.google.com 和 www.baidu.com ,观察第二跳的地址:
复制代码代码如下:FL-MBP:~ fatlyz$ traceroute www.google.com | head -n 3traceroute: Warning: www.google.com has multiple addresses; using ...traceroute to www.google.com (...), hops max, byte packets fc_r0.lan (..7.1) 2. ms 0. ms 0. ms .7.0.1 (.7.0.1) . ms . ms . ms ...2 (...2) . ms . ms . ms
复制代码代码如下:FL-MBP:~ fatlyz$ traceroute www.baidu.com | head -n 3traceroute to www.a.shifen.com (..3.), hops max, byte packets 1 fc_r0.lan (..7.1) 1. ms 0. ms 0. ms 2 ...1 (...1) . ms . ms . ms 3 ... (...) . ms . ms . ms
可以看出,已成功对国内外的目标地址进行了路由选择。
至此,OpenWRT 路由的基本配置、PPTP VPN、chnroutes 和自动重连已经配置完成。
本文作者:FatLYZ URL:
linux tar命令使用范例 tar语法:语法:tar[主选项+辅选项]文件或者目录使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。主选
Linux下查看SELinux状态和关闭SELinux的方法 一、查看SELinux状态命令:1、/usr/sbin/sestatus-v##如果SELinuxstatus参数为enabled即为开启状态SELinuxstatus:enabled2、getenforce##也可以用这个命令检查二、关闭SELinux
linux su命令的真正含义 原问:linux中,我以root登录,和以其他用户登录然后使用su命令切换至root用户,有什么不一样,如果一样的话,我执行su命令之后,其他的用户还在不在
标签: openwrt 路由配置梯子
本文链接地址:https://www.jiuchutong.com/biancheng/356889.html 转载请保留说明!上一篇:Linux中修改密码出现it is based on a dictionary word解决方法(linux修改密码认证令牌错误)
友情链接: 武汉网站建设