问题描述
Sep 5 14:31:55 root NetworkManager[932]: xl2tpd[26104]: Maximum retries exceeded for tunnel 33925. Closing.
Sep 5 14:31:55 root NetworkManager[932]: xl2tpd[26104]: Connection 0 closed to 128.88.33.11, port 1701 (Timeout)
Sep 5 14:32:00 root NetworkManager[932]: xl2tpd[26104]: Unable to deliver closing message for tunnel 33925. Destroying anyway.
问题分析
xl2tpd连接×××服务器时,调用pppd来进行拨号,建立连接后,每隔几秒会向服务器发送echo-request请求,如果服务器因为某些原因(只能想到网络原因)未及时做出相应,pppd发送几次请求后就会自动中断链接。
解决方案
1、编写脚本reconnect.sh
#!/bin/sh
echo "开始检测"
logger -t "【网络检测】" "开始检测"
ping -c 4 -W 10 114.114.114.114
if [ "$?" != "0" ];then
echo "网络异常"
logger -t "【网络检测】" "网络异常"
logger -t "【网络检测】" "尝试重新连接"
ps w | grep l2tpd | grep -v grep | awk '{print $1}' | xargs kill -9
restart_wan
logger -t "【网络检测】" "重新连接"
echo "已重连 "
echo "ok">>/tmp/vpncon.log
if [ ! -f "/tmp/1.log" ] #五次重连不上则重启
then
touch "/tmp/1.log"
a=0
else
a=`cat /tmp/1.log`
fi
if [ $a -le 5 ]
then
echo $(($a+1))> /tmp/1.log
else
logger -t "【网络检测】" "尝试重启"
reboot
logger -t "【网络检测】" "重启完成"
fi
else
logger -t "【网络检测】" "网络正常"
fi
logger -t "【网络检测】" "结束检测"
exit 0
2、使用WinSCP工具上传到路由器
3、添加定时任务到老毛子(Padavan)->高级设置->系统管理->服务->其他服务->Cron守护程序 (计划任务)
4、日志
资源下载
https://github.com/fjh1997/phicomm-K2-openwrt-padavan-reconnect-vpn?tdsourcetag=s_pcqq_aiomsg