Centos7 系统检测网络连接状况采取相关措施

系统是CENTOS7 拨号上的网。现在有这么个需求:检测拨号上网是否在网上,如果有就不操作;如果已掉线就重新拨号。给shell的话帮忙加点注释,小白,多谢各位
2026年09月21日 14:59
有1个网友回答
网友(1):

#!/bin/sh
#请把dns1,dns2修改成拼得通的DNS,开机自动运行,实时监控,断线自动重拨
dns1="114.114.114.114"
dns2="114.114.115.115"

sleep 8
/bin/pppd call gprs-siem &
sleep 12
while true
do      
       ping -s 1 -c 1 $dns1    ……去PING第一个DNS
       if [ "$?" != "0" ]      ……假如PING不通
       then
           ping -s 1 -c 2 $dns2   ……去PING第二个DNS
           if [ "$?" != "0" ]     ……假如PING不通
           then   
              killall pppd         ……结束PPPD进程
              pppd call gprs-siem & ……再去拨号
              sleep 12               ……等待12秒
           else
              sleep 5            ……如果是PING  DNS2通的话就直接等待5秒
           fi   
       else
              sleep 5            ……如果是PING  DNS1通的话就直接等待5秒(一般要设置多长时间去PING请改这里)

       fi               
done



代码简明!!它相当于在后台时时去PING一个DNS发现真正地掉线,它才会去重新拨号!!此版本经测试通过才发表。

转个脚本给你