断网重连
- 如果频繁掉线,可以考虑修改这两个配置项。(修改方法,自行搜索)
- network -> interface -> WAN (pppoe) -> EDIT -> Advanced Settings ->
LCP echo failure threshold
和LCP echo interval
网络 -> 接口 -> WAN (pppoe) -> 编辑 -> 高级设置 ->LCP 响应故障阀值
和LCP 响应间隔
- /etc/ppp/option 中的
lcp-echo-failure
和lcp-echo-interval
- network -> interface -> WAN (pppoe) -> EDIT -> Advanced Settings ->
- 有时会出现(偶尔),wan连接正常,但无法访问网络。可以考虑写个脚本,定时执行。
- 思路是:
先访问一下百度,看是否正常,再访问一下搜狗,再访问一下163。如果三个站都无法访问,就执行ifup wan
重拨。
测试访问几个站,自己决定,测试哪几个站,自己挑选。用shell编程即可,装个完整版wget,用wget访问,判断返回值,就知道访问是否成功。
记得设置timeout参数,wget的默认timeout好像是60秒,太长了。
还要设置重试次数大于2,防止第一次访问因dns查询返回太慢而失败。 - 以下给出一个例子参考,需要
opkg、install、wget、ca-bundle
支持。
- 思路是:
count=0
URLs='http://baidu.com http://163.com http://www.qq.com http://sogou.com'
for host in $URLs ; do
#echo $host
# wget -t2 这个参数要>=2, 防止第一次访问dns解析超时,而导致失败
wget -q -T3 -t3 --method=HEAD --max-redirect=0 "$host"
if [ 4 -eq $? ]; then
echo $(date +%F_%T%z) $host 'error.' >> /root/log.redail
count=$((count+1))
else
break
fi
done
URL_cnt=$(echo $URLs|wc -w)
if [ $count -ge $URL_cnt ]; then
echo $(date +%F_%T%z) redail >> /root/log.redail
ifdown wan; sleep 1; ifup wan
fi
- 然后放入 crontab 中定时执行
- 我们设置为每1分钟执行一次脚本,那对应的cron就是: */1 * * * *
- 那我们的最终crontab指令就是:
*/1 * * * * sh autologin.sh
- THE END -
最后修改:2024年2月2日
非特殊说明,本博所有文章均为博主原创。
共有 0 条评论