N1盒子在openwrt系统下偶尔断网的解决

/ 玩物志 / 没有评论 / 668浏览

n1,63+o 固件在旁路由的模式下,偶尔会出现网络断开(有时两三天一次,有时一个月一次),按f大建议,降级到60+o,问题依然存在,简直不能愉快的玩耍。后来发现主路由(华硕)和旁路由(n1)同时重启,n1重启的快,华硕比较慢,此时一定是无法联网的,按openwrt坛友说法,是因为n1找不到主路由,无法创建网桥导致。但是不能每次都要等主路由重启完成了,再启动N1吧。加上以前也有偶尔断网问题,既然网上都没有解决方案(除了重启),遂决定自己动手。

进入n1的ssh,惊奇的发现不仅无法上网,光猫都ping不通,应该是网络服务出了问题,重启network服务试一下

systemctl network restart

所有的设备居然全部可以上网了...既然这样那我就实现一个定时脚本,取ping光猫,如果到光猫不通,则说明网络肯定是出问题了,这时候就重启network即可。

新建脚本 resetNetWork.sh 内容如下:


#!/usr/bin/env bash

declare -g LOG
LOG="${0%/*}/check.log"
ping -c 3 -w 100 192.168.1.1
if [[ $? != 0 ]];then     
	HEAD=$(printf '%(%Y-%m-%d %H:%M:%S)T\n' "-1" )
	echo "===============fail========== $HEAD ========================" >> $LOG
	/mnt/mmcblk2p2/etc/init.d/network restart
else                   
	echo " ping ok"       
fi

然后对以上脚本添加计划任务

*/1 * * * * bash /mnt/mmcblk2p4/myTask/resetNetWork.sh