淺析PPPD和GPRS撥號代碼
前面兩篇文章中,我們都對PPP的嵌入式設置進行了講解。如果大家還有不清楚的地方,可以回顧一下《arm上實現PPP撥號腳本 》、《Linux內核PPP套件設置 》兩篇文章。那么這里我們則主要講解一下關于PPPD和GPRS自動撥號腳本(真正的實時監控,斷線自動重撥)的內容。參考:http://www.tvrofans.org/viewthread.php?tid=8117&extra=&page=1
開機自動運行,實時監控,斷線自動重撥
把文件傳到DM里,設置文件屬性為755,然后把啟動路徑加到init文件里即可
原設置為5秒去檢測一次,是以1字節去PING
- #!/bin/sh
- #請把dns1,dns2修改成拼得通的DNS,開機自動運行,實時監控,斷線自動重撥
- dns1="211.95.193.97"
- dns2="211.136.20.203"
- 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秒
- sleep 5 #如果是PING DNS2通的話就直接等待5秒
- fi
- else
- sleep 5 #如果是PING DNS1通的話就直接等待5秒(一般要設置多長時間去PING請改這里)
- fi
- done
大家會問這樣一直PING下去擔心流量問題,浪費一些流量是墾定的,不過我們是以1個字節去PING 加上返回的值一共是9個字節,也就是說5秒用9個字節。
D1 U% ]& i
一個小時用9*12*60是一個小時6480字節=6。328125K
也就是說這樣一個小時加6.33K的流量
大家還是擔心的話可以改一下腳本,比如改60秒去PING一次啦,等等,都能有效去省流量!!