openwrt路由在中继模式下掉线检测重启脚本

家里的路由中继别人的较远处一个TP-link来上网,但是距离太远,经常断线,断线异常时自己也不知道,于是写个个检测脚本来判断是否掉线

主要是ping上级路由

通了再ping 114dns没接触过shell脚本,逻辑都没怎么搞好直接上来一个while大循环加多重if

写得很烂,将就着用好了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
echo 'hello world'
while test "1" "1"
do
# do something
#第一次ping 上级192.168.1.1
if ping -w 1 -c 1 192.168.1.1
then #若通则ping 114 
  if ping -w 1 -c 1 114.114.114.114
  then echo '01 Network ok'
  else #再ping 115确认
      if -w 1 -c 1 ping 114.114.115.115
       then echo '02 Network ok'
        #上级通,114,115均不通,重启网络
      else /etc/init.d/network restart   #重启网络,等待即可 
        echo 'F1: Network Fail'
      fi
    fi
#第一次ping上级192不通,第二次ping
else
   if ping -w 1 -c 1 192.168.1.1
    then #第二次ping上级通了
     if ping -w 1 -c 1 114.114.114.114
       then #ping 114也通了
       echo '04 Network ok'
      else #ping 114 不通再ping 115确认
         if ping -w 1 -c 1 114.114.115.115
          then #115可达
           echo '05 Network ok'
         #114,115均不通,重启网络
          else /etc/init.d/network restart   #重启网络,等待即可 
          echo 'F3: network Fail'
          fi
      fi
#第二次ping上级还是不通,直接ping 114试下
    else
      if ping -w 1 -c 1 114.114.114.114
         then #114可达,网络正常
          echo '03 network ok'
      else #确实不通,唯有重启
        /etc/init.d/network restart   #重启网络,等待即可 
        echo 'F2: Network Fail'
      fi
    fi
fi
 
sleep 100
done
 
https://my.oschina.net/hoyho/blog/513505
posted @   笠航  阅读(1324)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示