Автор Тема: Въпросче за shape  при pppoe съединение  (Прочетена 3426 пъти)

Ivan_storm

  • Напреднали
  • *****
  • Публикации: 35
  • Distribution: Debian stable
    • Профил
Здр всички почитатели на форума.
Заинтересувах се от скоро за пппое и успях да го реализирам на няколко компа  клиент-сървар връзка Усилията ми  стигнаха само  до  изграждане на връзката и прибавяне на ИП адреси и правила в веригите на иптаблицата  с помоща на PPP_  variables
PPP_IFACE="$1"
PPP_TTY="$2"
PPP_SPEED="$3"
PPP_LOCAL="$4"
PPP_REMOTE="$5"
PPP_IPPARAM="$6"
с тях и  ТС правила поставени в скиптове  в ip-up.d  i ip-down.d
вдигам правила за интерфейси и IP ta , които  динамично  се прибавят и изчистват при конектване и  дисконект от съединението. Не мога обаче да наглася нещата така ,че да мога да задавам различна скорост за отделни ИП а всички имат една скорост  .Нещата ги  виждам  
с някакъв скипт които  да грепва при  твърдо  зададени ИП от chap ili pap-secrets тяхната скорост и някакси да се вкарват в правилата. Ако профитата в bash и перл като  владсън, зеридон или  др ударят едно  рамо ще е просто чудесно. Гледах при братушките една статия  ама те създават 255 интерфеиса на ппп с правила и скрипт ги обхожда ама пак не е издържано като  хората.Досега не съм използвал радиус сървар и освен автикация да не би  да има  възможност  да shape .
Активен

Pentium + Debian GNU/Linux - he fights for us.

Dean79

  • Напреднали
  • *****
  • Публикации: 151
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #1 -: Nov 04, 2007, 23:59 »
Защо всъщност ти е радиус сървър ? Вярно, че е много по-добре в някои ситуации, но ако мрежата не е голяма просто няма смисъл. Мога да ти дам идея за примерен шейпър:

#!/bin/bash
DEVICE=$1
userip=$5
username=$PEERNAME
downspeed=`cat /etc/ppp/users/$username | awk '{ print $1 }'`
upspeed=`cat /etc/ppp/users/$username | awk '{ print $2 }'`
userid=`cat /etc/ppp/users/$username | awk '{ print $3 }'`
pay="1"
plateno=`cat /etc/ppp/users/$username | awk '{ print $4 }'`

iptables -t mangle -A FORWARD -d $userip -i eth0 -s ! 192.168.0.0/16 -j MARK --set-mark $userid
markup=$(expr $userid + 5000)
iptables -t mangle -A FORWARD -s $userip -o eth0 -d ! 192.168.0.0/16 -j MARK --set-mark $markup


tc qdisc del dev $DEVICE root
tc qdisc add dev $DEVICE root handle 3: htb
tc class add dev $DEVICE parent 3: classid 3:10 htb rate 100mbit
tc class add dev $DEVICE parent 3:10 classid 3:$userid htb rate ${downspeed}kbit ceil ${downspeed}kbit
tc qdisc add dev $DEVICE parent 3:$userid handle $userid sfq
tc filter add dev $DEVICE parent 3:0 protocol ip prio 5 handle $userid fw classid 3:$userid


tc class add dev eth0 parent 1:20 classid 1:$markup htb rate ${upspeed}kbit ceil ${upspeed}kbit
tc qdisc add dev eth0 parent 1:$markup handle $markup sfq
tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle $markup fw classid 1:$markup


if [ $plateno -eq $pay ];
        then
          echo $username e platil! > /dev/null
        else
          iptables -t nat -I PREROUTING -s $5 -j DROP
        fi


Горе долу това успях да нахвърлям за 15 минути. Може да има и някъде грешки, но ще се наложи да поправяш.
Скрипта работи като извлича данни за всеки един юзър от отделен файл кръстен с името на потребителя от "chap-secrets" или "pap-secrets", там което използваш. Синтаксиса не трябва да те затрудни, но все пак:
~#cat /etc/ppp/users/pesho
1024 256 1 1
~#

Това значи потребителя pesho има скорост на даунлоуд 1024 кбита, ъплоуд 256 кбита, 3-та позиция за номер на потребител (тук може да се подобри като се използва ip-адреса който задаваш, но не ми се задълбочава сега, номера е цяло число 0-4999)и на 4-та позиция проверката дали потребителя си е платил - 1 означава платил, като при всяко друго число означава не е платено- т.е. трябва да се спре.
При малко повече желание и труд може да се добавят и допълнителни маркировки за локални сървъри, за пиъринг с други доставчици, отделен шейпинг за различните портове и т.н.
Успех, ако имаш въпроси пиши.



Активен

Ivan_storm

  • Напреднали
  • *****
  • Публикации: 35
  • Distribution: Debian stable
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #2 -: Nov 05, 2007, 23:14 »
стана '<img'>
мерси  братле за работещия скрипт.
Активен

Pentium + Debian GNU/Linux - he fights for us.

samiboy

  • Напреднали
  • *****
  • Публикации: 66
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #3 -: Nov 05, 2007, 23:43 »
Сега и едно пхп да грепва нулата и единицата (платил-неплатил)  ..  '<img'>
Активен

Dean79

  • Напреднали
  • *****
  • Публикации: 151
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #4 -: Nov 09, 2007, 21:30 »
Цитат (samiboy @ Ноември 06 2007,00:43)
Сега и едно пхп да грепва нулата и единицата (платил-неплатил)  ..  '<img'>

Защо ти е точно php???
За автора - да не забравиш да коригираш файла ip-down да се махат правилата в iptables и tc?!
Активен

samiboy

  • Напреднали
  • *****
  • Публикации: 66
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #5 -: Nov 10, 2007, 13:05 »
Аз имам подобен скрипт с около 300 клиента   ..
Понеже добавянето става рядко не ме бърка, че го правя през конзола но пускането и спиране ми се иска някак си през уеб да става с нещо много елементарно излизащ списък с потребители платили-неплатили  ..
Потърсих в гугъл не успях да намеря нещо подобно може би идеята ми не е много добра  .. ?
Но пък от моя гледна точка ще ми е много удобно  ..



Активен

Ivan_storm

  • Напреднали
  • *****
  • Публикации: 35
  • Distribution: Debian stable
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #6 -: Nov 11, 2007, 13:43 »
samiboy ако имаш желание постни скрипта да го пробвам ,че може и да имаш по добро  решение .При  мен имам проблем само при  дисконект защото  не ми  премахва коректно от иптаблицата правилата от -t mangle  pri  FORWARD иначе всичко  друго е ОК. Може и на private da го споделиш  icq 99415025 .
Активен

Pentium + Debian GNU/Linux - he fights for us.

samiboy

  • Напреднали
  • *****
  • Публикации: 66
    • Профил
Въпросче за shape  при pppoe съединение
« Отговор #7 -: Nov 11, 2007, 21:40 »
3 привейт мрежи с ип руут водят към 3 доставчика има и 4-рта с реални ип адреси която също води към 3-ия но това няма никакво значение  .. спазвам синтаксиса на чап.сикретс  ..
усернейм * пассуърд {ип адрес}
Вдигайки pptp интерфейс сравнява ип от чап.сикретс с този файл и така по правилата на шейпъра, предполагам някои по големи спецове ще се намръщят заради ингрес правилото което не шеипи а дропи аз лично не сам осетил някаква разлика  - то като сиидваш с амнайсет хиляди конекции и с маркиране да е уплоуда все същата работа .. ще се радвам колегата dean79 да каже нещо по въпроса явно е доста по в час от нас .. '<img'>
Това е poptop vpn server и знам, че изглежда малко първобитно но системата наистина работи безотказно  ..

ip-up
Примерен код
#!/bin/bash

DEVICE=$1
LOCALIP=$5
REMOTEIP=$6

shaper () {
DEVICE=$1
DOWN=$2
UP=$3

/sbin/tc qdisc del dev $DEVICE root
/sbin/tc qdisc add dev $DEVICE root tbf rate ${DOWN}Kbit latency 50ms burst $[$DOWN*1024]

/sbin/tc qdisc del dev $DEVICE handle ffff: ingress
/sbin/tc qdisc add dev $DEVICE handle ffff: ingress
/sbin/tc filter add dev $DEVICE parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 \
police rate ${UP}Kbit burst $[$DOWN*1024] drop flowid :1
}
# ------------------------------------------------------------------------------------------





-----------------------------------------------------
speed="172.16.20.1 172.16.20.2 172.16.20.3 172.16.20.4 172.16.20.5 172.16.20.6 172.16.20.7 172.16.20.8 172.16.20.9 172.16.20.10 \
       172.16.21.1 172.16.21.2 172.16.21.3 172.16.21.4 172.16.21.5 172.16.21.6 172.16.20.7 172.16.21.8 172.16.21.9 172.16.21.10 \
       172.16.22.1 172.16.22.2 172.16.22.3 172.16.22.4 172.16.22.5 172.16.22.6 172.16.20.7 172.16.22.8 172.16.22.9 172.16.22.10 \
       91.92.148.2 91.92.148.3 91.92.148.4 91.92.148.5 91.92.148.6 91.92.148.7 91.92.148.8 91.92.148.9 91.92.148.10";
DOWN=4096
UP=4096
# ------------------------------------------------------------------------------------------





-----------------------------------------------------
speed0="172.16.20.11 172.16.20.12 172.16.20.13 172.16.20.14 172.16.20.15 172.16.20.16 172.16.20.17 172.16.20.18 172.16.20.19 172.16.20.20 \
        172.16.20.21 172.16.20.22 172.16.20.23 172.16.20.24 172.16.20.25 172.16.20.26 172.16.20.27 172.16.20.28 172.16.20.29 172.16.20.30 \
   172.16.20.31 172.16.20.32 172.16.20.33 172.16.20.34 172.16.20.35 172.16.20.36 172.16.20.37 172.16.20.38 172.16.20.39 172.16.20.40 \
        172.16.20.41 172.16.20.42 172.16.20.43 172.16.20.44 172.16.20.45 172.16.20.46 172.16.20.47 172.16.20.48 172.16.20.49 172.16.20.50 \
   172.16.21.11 172.16.21.12 172.16.21.13 172.16.21.14 172.16.21.15 172.16.21.16 172.16.21.17 172.16.21.18 172.16.21.19 172.16.21.20 \
        172.16.21.21 172.16.21.22 172.16.21.23 172.16.21.24 172.16.21.25 172.16.21.26 172.16.21.27 172.16.21.28 172.16.21.29 172.16.21.30 \
   172.16.21.31 172.16.21.32 172.16.21.33 172.16.21.34 172.16.21.35 172.16.21.36 172.16.21.37 172.16.21.38 172.16.21.39 172.16.21.40 \
        172.16.21.41 172.16.21.42 172.16.21.43 172.16.21.44 172.16.21.45 172.16.21.46 172.16.21.47 172.16.21.48 172.16.21.49 172.16.21.50 \
        172.16.22.11 172.16.22.12 172.16.22.13 172.16.22.14 172.16.22.15 172.16.22.16 172.16.22.17 172.16.22.18 172.16.22.19 172.16.22.20 \
        172.16.22.21 172.16.22.22 172.16.22.23 172.16.22.24 172.16.22.25 172.16.22.26 172.16.22.27 172.16.22.28 172.16.22.29 172.16.22.30 \
   172.16.22.31 172.16.22.32 172.16.22.33 172.16.22.34 172.16.22.35 172.16.22.36 172.16.22.37 172.16.22.38 172.16.22.39 172.16.22.40 \
        172.16.22.41 172.16.22.42 172.16.22.43 172.16.22.44 172.16.22.45 172.16.22.46 172.16.22.47 172.16.22.48 172.16.22.49 172.16.22.50 \
        91.92.148.11 91.92.148.12 91.92.148.13 91.92.148.14 91.92.148.15 91.92.148.16 91.92.148.17 91.92.148.18 91.92.148.19 91.92.148.20 \
        91.92.148.21 91.92.148.22 91.92.148.23 91.92.148.24 91.92.148.25 91.92.148.26 91.92.148.27 91.92.148.28 91.92.148.29 91.92.148.30 \
        91.92.148.31 91.92.148.32 91.92.148.33 91.92.148.34 91.92.148.35 91.92.148.36 91.92.148.37 91.92.148.38 91.92.148.39 91.92.148.40 \
        91.92.148.41 91.92.148.42 91.92.148.43 91.92.148.44 91.92.148.45 91.92.148.46 91.92.148.47 91.92.148.48 91.92.148.49 91.92.148.50";

DOWN0=2048
UP0=2048
# ------------------------------------------------------------------------------------------





---------------------------------------------------------
speed1="172.16.20.51 172.16.20.52 172.16.20.53 172.16.20.54 172.16.20.55 172.16.20.56 172.16.20.57 172.16.20.58 172.16.20.59 172.16.20.60 \
        172.16.20.61 172.16.20.62 172.16.20.63 172.16.20.64 172.16.20.65 172.16.20.66 172.16.20.67 172.16.20.68 172.16.20.69 172.16.20.70 \
        172.16.20.71 172.16.20.72 172.16.20.73 172.16.20.74 172.16.20.75 172.16.20.76 172.16.20.77 172.16.20.78 172.16.20.79 172.16.20.80 \
        172.16.20.81 172.16.20.82 172.16.20.83 172.16.20.84 172.16.20.85 172.16.20.86 172.16.20.87 172.16.20.88 172.16.20.89 172.16.20.90 \
        172.16.20.91 172.16.20.92 172.16.20.93 172.16.20.94 172.16.20.95 172.16.20.96 172.16.20.97 172.16.20.98 172.16.20.99 172.16.20.100 \
        172.16.20.101 172.16.20.102 172.16.20.103 172.16.20.104 172.16.20.105 172.16.20.106 172.16.20.107 172.16.20.108 172.16.20.109 172.16.20.110 \
   172.16.20.111 172.16.20.112 172.16.20.113 172.16.20.114 172.16.20.115 172.16.20.116 172.16.20.117 172.16.20.118 172.16.20.119 172.16.20.120 \
   172.16.20.121 172.16.20.122 172.16.20.123 172.16.20.124 172.16.20.125 172.16.20.126 172.16.20.127 172.16.20.128 172.16.20.129 172.16.20.130 \
   172.16.20.131 172.16.20.132 172.16.20.133 172.16.20.134 172.16.20.135 172.16.20.136 172.16.20.137 172.16.20.138 172.16.20.139 172.16.20.140 \
   172.16.20.141 172.16.20.142 172.16.20.143 172.16.20.144 172.16.20.145 172.16.20.146 172.16.20.147 172.16.20.148 172.16.20.149 172.16.20.150 \
   172.16.20.151 172.16.20.152 172.16.20.153 172.16.20.154 172.16.20.155 172.16.20.156 172.16.20.157 172.16.20.158 172.16.20.159 172.16.20.160 \
   172.16.20.161 172.16.20.162 172.16.20.163 172.16.20.164 172.16.20.165 172.16.20.166 172.16.20.167 172.16.20.168 172.16.20.169 172.16.20.170 \
   172.16.20.171 172.16.20.172 172.16.20.173 172.16.20.174 172.16.20.175 172.16.20.176 172.16.20.177 172.16.20.178 172.16.20.179 172.16.20.180 \
        172.16.20.181 172.16.20.182 172.16.20.183 172.16.20.184 172.16.20.185 172.16.20.186 172.16.20.187 172.16.20.188 172.16.20.189 172.16.20.190 \
        172.16.20.191 172.16.20.192 172.16.20.193 172.16.20.194 172.16.20.195 172.16.20.196 172.16.20.197 172.16.20.198 172.16.20.199 172.16.20.200 \
        172.16.20.201 172.16.20.202 172.16.20.203 172.16.20.204 172.16.20.205 172.16.20.206 172.16.20.207 172.16.20.208 172.16.20.209 172.16.20.210 \
        172.16.20.211 172.16.20.212 172.16.20.213 172.16.20.214 172.16.20.215 172.16.20.216 172.16.20.217 172.16.20.218 172.16.20.219 172.16.20.220 \
        172.16.20.221 172.16.20.222 172.16.20.223 172.16.20.224 172.16.20.225 172.16.20.226 172.16.20.227 172.16.20.228 172.16.20.229 172.16.20.230 \
   172.16.20.231 172.16.20.232 172.16.20.233 172.16.20.234 172.16.20.235 172.16.20.236 172.16.20.237 172.16.20.238 172.16.20.239 172.16.20.240 \
        172.16.20.241 172.16.20.242 172.16.20.243 172.16.20.244 172.16.20.245 172.16.20.246 172.16.20.247 172.16.20.248 172.16.20.249 172.16.20.250 \
        172.16.20.251 172.16.20.252 172.16.20.253 172.16.20.254 \
   172.16.21.51 172.16.21.52 172.16.21.53 172.16.21.54 172.16.21.55 172.16.21.56 172.16.21.57 172.16.21.58 172.16.21.59 172.16.21.60 \
        172.16.21.61 172.16.21.62 172.16.21.63 172.16.21.64 172.16.21.65 172.16.21.66 172.16.21.67 172.16.21.68 172.16.21.69 172.16.21.70 \
        172.16.21.71 172.16.21.72 172.16.21.73 172.16.21.74 172.16.21.75 172.16.21.76 172.16.21.77 172.16.21.78 172.16.21.79 172.16.21.80 \
        172.16.21.81 172.16.21.82 172.16.21.83 172.16.21.84 172.16.21.85 172.16.21.86 172.16.21.87 172.16.21.88 172.16.21.89 172.16.21.90 \
        172.16.21.91 172.16.21.92 172.16.21.93 172.16.21.94 172.16.21.95 172.16.21.96 172.16.21.97 172.16.21.98 172.16.21.99 172.16.21.100 \
        172.16.21.101 172.16.21.102 172.16.21.103 172.16.21.104 172.16.21.105 172.16.21.106 172.16.21.107 172.16.21.108 172.16.21.109 172.16.21.110 \
   172.16.21.111 172.16.21.112 172.16.21.113 172.16.21.114 172.16.21.115 172.16.21.116 172.16.21.117 172.16.21.118 172.16.21.119 172.16.21.120 \
   172.16.21.121 172.16.21.122 172.16.21.123 172.16.21.124 172.16.21.125 172.16.21.126 172.16.21.127 172.16.21.128 172.16.21.129 172.16.21.130 \
   172.16.21.131 172.16.21.132 172.16.21.133 172.16.21.134 172.16.21.135 172.16.21.136 172.16.21.137 172.16.21.138 172.16.21.139 172.16.21.140 \
   172.16.21.141 172.16.21.142 172.16.21.143 172.16.21.144 172.16.21.145 172.16.21.146 172.16.21.147 172.16.21.148 172.16.21.149 172.16.21.150 \
   172.16.21.151 172.16.21.152 172.16.21.153 172.16.21.154 172.16.21.155 172.16.21.156 172.16.21.157 172.16.21.158 172.16.21.159 172.16.21.160 \
   172.16.21.161 172.16.21.162 172.16.21.163 172.16.21.164 172.16.21.165 172.16.21.166 172.16.21.167 172.16.21.168 172.16.21.169 172.16.21.170 \
   172.16.21.171 172.16.21.172 172.16.21.173 172.16.21.174 172.16.21.175 172.16.21.176 172.16.21.177 172.16.21.178 172.16.21.179 172.16.21.180 \
        172.16.21.181 172.16.21.182 172.16.21.183 172.16.21.184 172.16.21.185 172.16.21.186 172.16.21.187 172.16.21.188 172.16.21.189 172.16.21.190 \
        172.16.21.191 172.16.21.192 172.16.21.193 172.16.21.194 172.16.21.195 172.16.21.196 172.16.21.197 172.16.21.198 172.16.21.199 172.16.21.200 \
        172.16.21.201 172.16.21.202 172.16.21.203 172.16.21.204 172.16.21.205 172.16.21.206 172.16.21.207 172.16.21.208 172.16.21.209 172.16.21.210 \
        172.16.21.211 172.16.21.212 172.16.21.213 172.16.21.214 172.16.21.215 172.16.21.216 172.16.21.217 172.16.21.218 172.16.21.219 172.16.21.220 \
        172.16.21.221 172.16.21.222 172.16.21.223 172.16.21.224 172.16.21.225 172.16.21.226 172.16.21.227 172.16.21.228 172.16.21.229 172.16.21.230 \
   172.16.21.231 172.16.21.232 172.16.21.233 172.16.21.234 172.16.21.235 172.16.21.236 172.16.21.237 172.16.21.238 172.16.21.239 172.16.21.240 \
        172.16.21.241 172.16.21.242 172.16.21.243 172.16.21.244 172.16.21.245 172.16.21.246 172.16.21.247 172.16.21.248 172.16.21.249 172.16.21.250 \
        172.16.21.251 172.16.21.252 172.16.21.253 172.16.21.254 \
        172.16.22.51 172.16.22.52 172.16.22.53 172.16.22.54 172.16.22.55 172.16.22.56 172.16.22.57 172.16.22.58 172.16.22.59 172.16.22.60 \
        172.16.22.61 172.16.22.62 172.16.22.63 172.16.22.64 172.16.22.65 172.16.22.66 172.16.22.67 172.16.22.68 172.16.22.69 172.16.22.70 \
        172.16.22.71 172.16.22.72 172.16.22.73 172.16.22.74 172.16.22.75 172.16.22.76 172.16.22.77 172.16.22.78 172.16.22.79 172.16.22.80 \
        172.16.22.81 172.16.22.82 172.16.22.83 172.16.22.84 172.16.22.85 172.16.22.86 172.16.22.87 172.16.22.88 172.16.22.89 172.16.22.90 \
        172.16.22.91 172.16.22.92 172.16.22.93 172.16.22.94 172.16.22.95 172.16.22.96 172.16.22.97 172.16.22.98 172.16.22.99 172.16.22.100 \
        172.16.22.101 172.16.22.102 172.16.22.103 172.16.22.104 172.16.22.105 172.16.22.106 172.16.22.107 172.16.22.108 172.16.22.109 172.16.22.110 \
   172.16.22.111 172.16.22.112 172.16.22.113 172.16.22.114 172.16.22.115 172.16.22.116 172.16.22.117 172.16.22.118 172.16.22.119 172.16.22.120 \
   172.16.22.121 172.16.22.122 172.16.22.123 172.16.22.124 172.16.22.125 172.16.22.126 172.16.22.127 172.16.22.128 172.16.22.129 172.16.22.130 \
   172.16.22.131 172.16.22.132 172.16.22.133 172.16.22.134 172.16.22.135 172.16.22.136 172.16.22.137 172.16.22.138 172.16.22.139 172.16.22.140 \
   172.16.22.141 172.16.22.142 172.16.22.143 172.16.22.144 172.16.22.145 172.16.22.146 172.16.22.147 172.16.22.148 172.16.22.149 172.16.22.150 \
   172.16.22.151 172.16.22.152 172.16.22.153 172.16.22.154 172.16.22.155 172.16.22.156 172.16.22.157 172.16.22.158 172.16.22.159 172.16.22.160 \
   172.16.22.161 172.16.22.162 172.16.22.163 172.16.22.164 172.16.22.165 172.16.22.166 172.16.22.167 172.16.22.168 172.16.22.169 172.16.22.170 \
   172.16.22.171 172.16.22.172 172.16.22.173 172.16.22.174 172.16.22.175 172.16.22.176 172.16.22.177 172.16.22.178 172.16.22.179 172.16.22.180 \
        172.16.22.181 172.16.22.182 172.16.22.183 172.16.22.184 172.16.22.185 172.16.22.186 172.16.22.187 172.16.22.188 172.16.22.189 172.16.22.190 \
        172.16.22.191 172.16.22.192 172.16.22.193 172.16.22.194 172.16.22.195 172.16.22.196 172.16.22.197 172.16.22.198 172.16.22.199 172.16.22.200 \
        172.16.22.201 172.16.22.202 172.16.22.203 172.16.22.204 172.16.22.205 172.16.22.206 172.16.22.207 172.16.22.208 172.16.22.209 172.16.22.210 \
        172.16.22.211 172.16.22.212 172.16.22.213 172.16.22.214 172.16.22.215 172.16.22.216 172.16.22.217 172.16.22.218 172.16.22.219 172.16.22.220 \
        172.16.22.221 172.16.22.222 172.16.22.223 172.16.22.224 172.16.22.225 172.16.22.226 172.16.22.227 172.16.22.228 172.16.22.229 172.16.22.230 \
   172.16.22.231 172.16.22.232 172.16.22.233 172.16.22.234 172.16.22.235 172.16.22.236 172.16.22.237 172.16.22.238 172.16.22.239 172.16.22.240 \
        172.16.22.241 172.16.22.242 172.16.22.243 172.16.22.244 172.16.22.245 172.16.22.246 172.16.22.247 172.16.22.248 172.16.22.249 172.16.22.250 \
        172.16.22.251 172.16.22.252 172.16.22.253 172.16.22.254 \
        91.92.148.51 91.92.148.52 91.92.148.53 91.92.148.54 91.92.148.55 91.92.148.56 91.92.148.57 91.92.148.58 91.92.148.59 91.92.148.60 \
        91.92.148.61 91.92.148.62 91.92.148.63 91.92.148.64 91.92.148.65 91.92.148.66 91.92.148.67 91.92.148.68 91.92.148.69 91.92.148.70 \
        91.92.148.71 91.92.148.72 91.92.148.73 91.92.148.74 91.92.148.75 91.92.148.76 91.92.148.77 91.92.148.78 91.92.148.79 91.92.148.80 \
        91.92.148.81 91.92.148.82 91.92.148.83 91.92.148.84 91.92.148.85 91.92.148.86 91.92.148.87 91.92.148.88 91.92.148.89 91.92.148.90 \
        91.92.148.91 91.92.148.92 91.92.148.93 91.92.148.94 91.92.148.95 91.92.148.96 91.92.148.97 91.92.148.98 91.92.148.99 91.92.148.100 \
        91.92.148.101 91.92.148.102 91.92.148.103 91.92.148.104 91.92.148.105 91.92.148.106 91.92.148.107 91.92.148.108 91.92.148.109 91.92.148.110 \
        91.92.148.111 91.92.148.112 91.92.148.113 91.92.148.114 91.92.148.115 91.92.148.116 91.92.148.117 91.92.148.118 91.92.148.119 91.92.148.120 \
        91.92.148.121 91.92.148.122 91.92.148.123 91.92.148.124 91.92.148.125 91.92.148.126 91.92.148.127 91.92.148.128 91.92.148.129 91.92.148.130 \
        91.92.148.131 91.92.148.132 91.92.148.133 91.92.148.134 91.92.148.135 91.92.148.136 91.92.148.137 91.92.148.138 91.92.148.139 91.92.148.140 \
        91.92.148.141 91.92.148.142 91.92.148.143 91.92.148.144 91.92.148.145 91.92.148.146 91.92.148.147 91.92.148.148 91.92.148.149 91.92.148.150 \
        91.92.148.151 91.92.148.152 91.92.148.153 91.92.148.154 91.92.148.155 91.92.148.156 91.92.148.157 91.92.148.158 91.92.148.159 91.92.148.160 \
        91.92.148.161 91.92.148.162 91.92.148.163 91.92.148.164 91.92.148.165 91.92.148.166 91.92.148.167 91.92.148.168 91.92.148.169 91.92.148.170 \
        91.92.148.171 91.92.148.172 91.92.148.173 91.92.148.174 91.92.148.175 91.92.148.176 91.92.148.177 91.92.148.178 91.92.148.179 91.92.148.180 \
        91.92.148.181 91.92.148.182 91.92.148.183 91.92.148.184 91.92.148.185 91.92.148.186 91.92.148.187 91.92.148.188 91.92.148.189 91.92.148.190 \
        91.92.148.191 91.92.148.192 91.92.148.193 91.92.148.194 91.92.148.195 91.92.148.196 91.92.148.197 91.92.148.198 91.92.148.199 91.92.148.200 \
        91.92.148.201 91.92.148.202 91.92.148.203 91.92.148.204 91.92.148.205 91.92.148.206 91.92.148.207 91.92.148.208 91.92.148.209 91.92.148.210 \
        91.92.148.211 91.92.148.212 91.92.148.213 91.92.148.214 91.92.148.215 91.92.148.216 91.92.148.217 91.92.148.218 91.92.148.219 91.92.148.220 \
        91.92.148.221 91.92.148.222 91.92.148.223 91.92.148.224 91.92.148.225 91.92.148.226 91.92.148.227 91.92.148.228 91.92.148.229 91.92.148.230 \
        91.92.148.231 91.92.148.232 91.92.148.233 91.92.148.234 91.92.148.235 91.92.148.236 91.92.148.237 91.92.148.238 91.92.148.239 91.92.148.240 \
        91.92.148.241 91.92.148.242 91.92.148.243 91.92.148.244 91.92.148.245 91.92.148.246 91.92.148.247 91.92.148.248 91.92.148.249 91.92.148.250 \
        91.92.148.251 91.92.148.252 91.92.148.253 91.92.148.254";

DOWN1=1024
UP1=1024
# ------------------------------------------------------------------------------------------





-------------------------------------------------------

ip=`echo $LOCALIP`

for speeds in $speed
do
  if [ $speeds == $ip ]; then
  shaper $DEVICE $DOWN $UP
  SPEED=4096
  echo "Session start `date +%F/%R:%S` on device $DEVICE local ip $LOCALIP remote $REMOTEIP and speed $SPEED " >> /etc/ppp/ppp.log
  exit
  fi
done

for speeds in $speed0
do
  if [ $speeds == $ip ]; then
  shaper $DEVICE $DOWN0 $UP0
  SPEED=2048
  echo "Session start `date +%F/%R:%S` on device $DEVICE local ip $LOCALIP remote $REMOTEIP and speed $SPEED " >> /etc/ppp/ppp.log
  exit
  fi
done

for speeds in $speed1
do
  if [ $speeds == $ip ]; then
  shaper $DEVICE $DOWN1 $UP1
  SPEED=1024
  echo "Session start `date +%F/%R:%S` on device $DEVICE local ip $LOCALIP remote $REMOTEIP and speed $SPEED " >> /etc/ppp/ppp.log
  exit
  fi
done


ip-down
Примерен код
#!/bin/bash
#
echo "$1 $2 $3 $4 $5 $6"
DEVICE=$1
LOCALIP=$5
REMOTEIP=$6
echo "Session stop `date +%F/%R:%S` on device $DEVICE local ip $LOCALIP remote $REMOTEIP " >> /etc/ppp/ppp.log




Активен