標籤:
家裡的路由中繼別人的較遠處一個TP-link來上網,但是距離太遠,經常斷線,斷線異常時自己也不知道,於是寫個個檢測指令碼來判斷是否掉線
主要是ping上級路由
通了再ping 114dns沒接觸過shell指令碼,邏輯都沒怎麼搞好直接上來一個while大迴圈加多重if
寫得很爛,將就著用好了
echo ‘hello world‘while test "1" = "1"do# do something#第一次ping 上級192.168.1.1if ping -w 1 -c 1 192.168.1.1then #若通則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不通,第二次pingelse 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 fifisleep 100done
openwrt路由在中繼模式下掉線檢測重啟指令碼