x86版openwrt并發(fā)撥號(hào)ppp插件以及撥號(hào)腳本.
本帖最后由 oceancn 于 2013-1-16 11:22 編輯
測(cè)試環(huán)境 虛擬機(jī)vm OpenWrt Backfire 10.03.1-rc5
下面是編譯的418版的x86并發(fā)ppp插件以及腳本 腳本中 n為多撥數(shù),ok為成功退出的數(shù)量,一般等于n 下面的sleep要看你那里的限制,一般30秒或更長(zhǎng).
- #!/bin/sh /etc/rc.common
- # Copyright (C) 2008 OpenWrt.org
- START=99
- #number是重拔次數(shù)
- #n是幾拔
- #ok是拔上幾次后退出拔號(hào)
- number=10
- n=4
- ok=4
- start() {
- for q in $( seq 1 $number )
- do
- echo
- echo ___________________________________________________
- echo 開(kāi)始第$q次拔號(hào)...........
- pkill -f pppd
- pkill -f syncpppinit
- #rm /var/state/network
- j=0
- sleep 30
- syncpppinit $n &
- sleep 1
- echo 正開(kāi)始并發(fā)拔號(hào)中.............
- for i in $( seq 0 $(($n-1)))
- do
- if [ "$i" == "0" ] ;
- then
- interface=wan
- else
- interface=wan$i
- fi
- ifname=`uci get network.$interface.ifname`
- user=`uci get network.$interface.username`
- pass=`uci get network.$interface.password`
- echo pppoe賬號(hào):[$user] pppoe密碼:[$pass] pppoe接口:[$ifname]
- /usr/sbin/pppd plugin rp-pppoe.so syncppp $n mtu 1492 mru 1492 nic-$ifname nopersist usepeerdns nodefaultroute user $user password $pass ipparam $interface ifname pppoe-$interface &
- done
- echo 正在并發(fā)拔號(hào)中.............
- echo 等待20秒.............
- sleep 20
- for i in $( seq 0 $(($n-1)))
- do
- if [ "$i" == "0" ] ;
- then
- [ "$(uci -P /var/state -q get network.wan.up)" == "1" ] && let j=j+1
- else
- [ "$(uci -P /var/state -q get network.wan$i.up)" == "1" ] && let j=j+1
- fi
- done
- echo [$n]拔[$j]拔成功.....
- ! [ "$j" -ge "$ok" ] && echo 成功[$j]拔, 小于設(shè)定的[$ok]拔將重新拔號(hào)...
- [ "$j" -ge "$ok" ] && echo 成功[$j]拔, 大于或等于設(shè)定的[$ok]退出拔號(hào)...
- [ "$j" -ge "$ok" ] && pkill -f syncpppinit
- [ "$j" -ge "$ok" ] && exit
- done
- }
復(fù)制代碼
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。