adsl斷線後自動重新撥號
發表於 : 週二 4月 06, 2010 5:26 pm
寫一個script
然後加入排程,幾分鐘跑一次即可。
*/5 * * * * root /tmp/shell/repppoe > /dev/null 2>&1
#每五分鍾執行這個程式一次~~將回應的訊息null掉
代碼: 選擇全部
###########################
#/usr/bin/repppoe 內容如下
###########################
#!/bin/bash
#上面這一行不能拿掉,不然不會執行
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
#宣告PATH路逕
testing=$(ifconfig | grep "ppp0 ")
#執行ifconfig找ppp0
if [ "$testing" != "" ]; then
echo "running "
#如果回應不是空值,當然就是有連線啦
else
echo "not running"
/usr/sbin/adsl-start
echo "connected."
#如果回應空值,就是斷了唷!執行/usr/sbin/adsl-start重新撥號
fi
linktest=$(ping -c 3 168.95.1.1 | grep "time=")
#連線測試,ping 168.95.1.1 找"time="字串
if [ "$linktest" != "" ]; then
echo "linking."
#如果回應不是空值,網路是通的
else
echo "not linking."
fi
exit 0
######################################
然後加入排程,幾分鐘跑一次即可。
*/5 * * * * root /tmp/shell/repppoe > /dev/null 2>&1
#每五分鍾執行這個程式一次~~將回應的訊息null掉