The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Traffic Control (shaper) - как сделать ? PPPoE+FreeRADIUS+My..."
Отправлено major1986, 20-Фев-07 10:12 
>в nibs в таблице users добавляешь столбец rate
>Потом заменяешь  /etc/ppp/ip-up на аналогичный но на перле
>и через DBI вытягиваешь из базы нужный rate и шейпишь с поиощью
>htb
>
>#!/usr/bin/perl
>
>$interface = $ARGV[0];
>$tty = $ARGV[1];
>$speed = $ARGV[2];
>$localip = $ARGV[3];
>$remoteip = $ARGV[4];
>$ipparam = $ARGV[5];
>
>my $rate = "64kbit";
>my $burst = "4kb";
>
>($a1, $a2, $a3, $a4) = split(/\./, $remoteip);
>
>if($a3 eq "6") {
>    if(($a4 >= 1) && ($a4 <= 62)) {
> $rate = "64kbit";
> $burst = "4kb";
>    }
>    if(($a4 >= 65) && ($a4 <= 126)) {
> $rate = "128kbit";
> $burst = "6kb";
>    }
>    if(($a4 >= 129) && ($a4 <= 190)) {
> $rate = "256kbit";
> $burst = "8kb";
>    }
>    if(($a4 >= 193) && ($a4 <= 254)) {
> $rate = "512kbit";
> $burst = "16kb";
>    }
>    system("/sbin/tc qdisc add dev $interface root handle 1:
>htb");
>    system("/sbin/tc class add dev $interface parent 1: classid
>1:10 htb rate $rate ceil $rate burst $burst");
>    system("/sbin/tc qdisc add dev $interface parent 1:10 handle
>10:0 sfq perturb 10");
>    system("/sbin/tc filter add dev $interface parent 1:0 protocol
>ip prio 5 u32  match ip dst $remoteip flowid 1:10");
>
>}
>
>У меня вариант без DBI так как я freenibs не использую, но
>дописывается за минут 5.
>
>
>ip-down выглядит так:
>
>#!/bin/sh
>
># this is a script which is executed after disconnecting the ppp
>interface.
># look at man pppd for details
>
># the followings parameters are available:
>interface=$1
># $2 = tty-device
># $3 = speed
># $4 = local-IP-address
># $5 = remote-IP-address
># $6 = ipparam
>
>/sbin/tc qdisc del dev $interface root


Пользуюсь freenibs, сделал, как написано, довавил таблицу "rate" заменил скрипты на те что тут, но всеравно не шейпится! скорость как была на максимуме, так и есть, помогите, по данному вопросу!

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру