Перейти до

Дневная и ночная скорости. помощь со скриптом.


Рекомендованные сообщения

Здравствуйте товарищи :)

 

Суть вопроса в том что-бы сделать дневную и ночную скорость. Как вариант думаю использовать замену по крону в определенное время скриптов OnConnect в которых будет указана нужная скорость.

 

Но вот как быть с теми что уже подключены и работаю в инете... Я подумал что можно просто убить правила для tc и поднять их заново , но вот со скриптом для этого дела несколько сложно у меня дела обстоят. Активные ip адреса я подумал взять из файла который пускает людей к squid , а именно это :

 

root@slackware:~# cat /var/stargazer/squid/squid

 

10.1.1.9

10.1.1.6

10.1.1.4

 

Т.е. это будут конкретно работающие в данный момент времени люди.

 

Вобщем те же правила что и в OnConnect нужно отработать для каждого из списка /var/stargazer/squid/squid....

 

Правила из OnConnect думаю многим знакомы.

 

#Cut speed

tarif=`/etc/stargazer/tarif.php $2`

$IPTABLES -t filter -A FORWARD -s $IP -j QUEUE

$IPTABLES -t filter -A FORWARD -d $IP -j QUEUE

prioid="${ID}0"

 

if [ "$tarif" = "64" ]; then

speed=64

elif [ "$tarif" = "128" ]; then

speed=128

elif [ "$tarif" = "256" ]; then

speed=270

elif [ "$tarif" = "1024" ]; then

speed=1024

elif [ "$tarif" = "512" ]; then

speed=512

else

speed=0

fi

 

if [ $speed != 0 ]; then

echo $1 $2 $prioid $speed $tarif >> /var/log/speed

tc class add dev $eth_local parent 1:1 classid 1:${prioid} htb rate $speed'kbit' burst 20k

tc filter add dev $eth_local parent 1: protocol ip prio ${prioid} u32 match ip dst $IP flowid 1:${prioid}

fi

 

 

 

Вобщем ищу помощи :)

Ссылка на сообщение
Поделиться на других сайтах

Навскидку я бы сделал так

 

правила для tc я создаю с flowid собранным по принципу подсеть.сеть ( 6050 - *.*.6.50 и тд )

после того как ты знаешь каким IP нужно изменить скорость , то дальше совсем просто

на каждого даешь такую команду ( значения свои )

`echo $TC class change dev $eLAN parent 1:1 classid 1:$net3$net4 htb rate "$newSpeed"000bit`

Ссылка на сообщение
Поделиться на других сайтах
Навскидку я бы сделал так

 

правила для tc я создаю с flowid собранным по принципу подсеть.сеть ( 6050 - *.*.6.50 и тд )

после того как ты знаешь каким IP нужно изменить скорость , то дальше совсем просто

на каждого даешь такую команду ( значения свои )

`echo $TC class change dev $eLAN parent 1:1 classid 1:$net3$net4 htb rate "$newSpeed"000bit`

 

 

 

Как мне вытаскивать поочередности каждый ip? из файла :)

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...