понаписывал и прикрутил вот такие скрипты:
# cat up.sh
Код: Выделить всё
#!/bin/sh
###параметры получаемые при выполнении скрипта###
##$1 $2 $3 $4 $5
##ng0 inet 192.168.0.100/32 10.0.0.1 eugene
ipfw=/sbin/ipfw
awk=/usr/bin/awk
i=`echo $4| awk -F . '{print $4}'` #номер последней цифры для номера правила фаервола, номер pipe
s=`cat /work/public/admin/users/users |grep $5| awk '{print $3}'` #скорость
#проверка для последней цифры в номере фаервола
if [ $i -le 9 ]
then
n=0$i
else
n=$i
fi
ipfw add 5$n pipe $n ip from any to $4 #pipe's IN
ipfw add 7$n pipe 1$n ip from $4 to any #pipe's OUT
#pipe's speed
ipfw pipe $n config bw $s
ipfw pipe 1$n config bw $s
Код: Выделить всё
#!/bin/sh
###параметры получаемые при выполнении скрипта###
##$1 $2 $3
##ng0 inet eugene
ipfw=/sbin/ipfw
awk=/usr/bin/awk
i=`cat /work/public/admin/users/users |grep $3| awk '{print $2}'| awk -F . '{print $4}'` #номер последней цифры для номера правила фаервола, номер pipe
#проверка для последней цифры в номере фаервола
if [ $i -le 9 ]
then
n=0$i
else
n=$i
fi
ipfw pipe delete $n
ipfw pipe delete 1$n
ipfw delete 5$n
ipfw delete 7$n
Код: Выделить всё
eugene 10.0.0.1 160Kbit/s
ageNT 10.0.0.2 160Kbit/s
chetkiller 10.0.0.3 160Kbit/s
sirius 10.0.0.4 160Kbit/s
TEAC 10.0.0.5 160Kbit/s
whatsup 10.0.0.6 160Kbit/s
#TANYA 10.0.0.7 160Kbit/s
Virus 10.0.0.8 160Kbit/s
Crazy 10.0.0.9 160Kbit/s
#AndrewNokia 10.0.0.10 160Kbit/s
Rigik 10.0.0.11 160Kbit/s
kraft 10.0.0.12 115Kbit/s
damanea 10.0.0.13 160Kbit/s
LEON 10.0.0.14 160Kbit/s
ruslan 10.0.0.15 160Kbit/s
WLAD 10.0.0.16 160Kbit/s
moisey 10.0.0.17 160Kbit/s
happy 10.0.0.18 160Kbit/s
horror 10.0.0.19 160Kbit/s
LIH@CHOV 10.0.0.20 160Kbit/s
#ingener 10.0.0.21 160Kbit/s
addon 10.0.0.22 160Kbit/s
roman 10.0.0.23 160Kbit/s
Bunya 10.0.0.24 115Kbit/s
messer 10.0.0.25 160Kbit/s
Alena 10.0.0.26 160Kbit/s
kranium 10.0.0.27 160Kbit/s
babay 10.0.0.28 160Kbit/s
#maks 10.0.0.29 160Kbit/s
vika 10.0.0.30 160Kbit/s
matvey 10.0.0.31 160Kbit/s
...
если все пайпы статикой прописаны в фаере, то все работает ок. ни глюков ни непоняток. так уже больше 2 или 3 месяцев.
но со скриптами вышел казус.
1. у некоторых юзеров все работает ок.
2. у некоторых работает несколько секунд после подключения, потом отваливается pipe вида
Код: Выделить всё
ipfw pipe $n config bw $s
Код: Выделить всё
ipfw add 5$n pipe $n ip from any to $4 #pipe's IN
ipfw add 7$n pipe 1$n ip from $4 to any #pipe's OUT
Код: Выделить всё
ipfw pipe 1$n config bw $s
3. у некоторых вообще пайпы
Код: Выделить всё
ipfw pipe $n config bw $s
ipfw pipe 1$n config bw $s
Код: Выделить всё
ipfw add 5$n pipe $n ip from any to $4 #pipe's IN
ipfw add 7$n pipe 1$n ip from $4 to any #pipe's OUT
что может быть?
не, ну если скажете, что руки кривые, я канечна пойму и не обижусь. конструктивную критику принимаю, т.к. не программер.
снкс.