POPTOP ограничение скорости

Технические вопросы по UTM 5.0
Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

POPTOP ограничение скорости

Сообщение kamae1ka »

Есть машина, с поднятым PPTP-server как ограничить скорость согласно тарифному плану из UTM ?

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

никто не поможет ? :(

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

А как помочь? mpd это поддерживает, циска поддерживает, а poptop поддерживает? Я в этом не уверен.

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

да, куда он денется то? есть мысли ?

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

У меня нет, поскольку не пользовался.

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

откопал вот что:
добавляем в RADIUS словарь /etc/radiusclient-ng/dictionary дополнительные атрибуты:

Код: Выделить всё

ATTRIBUTE       PPPD-Upstream-Speed-Limit       230     string
ATTRIBUTE       PPPD-Downstream-Speed-Limit     231     string
в биллинге добавляю RADIUS атрибуты:

Код: Выделить всё

Vendor:0;Attr:230;Val:1024 тип String
Vendor:0;Attr:231;Val:1024 тип String


подключиться и выполнить cat /var/run/radattr.pppXX (pppXX имя интерфейса по которому подключились)

Код: Выделить всё

PPPD-Upstream-Speed-Limit 1024
PPPD-Downstream-Speed-Limit 1024
но желаемая скорость совсем не та =( помогайте народ) пиво с меня)

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

http://wiki.bgbilling.ru/index.php/%D0% ... LINUX_PPPD

Читаем внимательно часть про /etc/ppp/ip-up.

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

прикрепил файл

Код: Выделить всё

if [ -f /var/run/radattr.$1 ]
then
  DOWNSPEED=`/usr/bin/awk '/PPPD-Downstream-Speed-Limit/ {print $2}' /var/run/radattr.$1`
  UPSPEED=`/usr/bin/awk '/PPPD-Upstream-Speed-Limit/ {print $2}' /var/run/radattr.$1`

  #echo $DOWNSPEED
  #echo $UPSPEED

  /sbin/tc qdisc del dev $1 root > /dev/null
  /sbin/tc qdisc del dev $1 ingress > /dev/null

  ##### speed server->client
  if [ "$UPSPEED" != "0" ] ;
    /sbin/tc qdisc add dev $1 root tbf ${UPSPEED} latency 25ms
  fi
  ##### speed client->server
  if [ "$DOWNSPEED" != "0" ] ;
  then
    /sbin/tc qdisc add dev $1 handle ffff: ingress
    /sbin/tc filter add dev $1 parent ffff: handle 1 protocol ip prio 50 basic police ${DOWNSPEED} drop flowid :1
  fi
fi
к /etc/ppp/ip-up поставил разрешение 777
но все осталось на своих местах

лог радиуса

Код: Выделить всё

?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; User <qwe1> connecting
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; Session for sessionid <qwe1> not found in <191.191.81.14> cache
?Debug &#58; Dec 15 09&#58;11&#58;21 RADIUS DBA&#58; Info for login <qwe1> found. type <1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; Auth scheme&#58; MS-CHAPv2
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; MS-CHAPv2&#58; Authorized user <qwe1> 
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; MS-CHAPv2&#58; MPPE Keys send
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; IP claimed&#58; 0xc3bf5291 &#40;<195.191.82.145>&#41;
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; Calling fill radius attributes for service. Attr storage size <2>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data Vendor&#58;<0> Attr&#58;<230> Val&#58;<148137000> Size<1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data result <0> message <Success>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data verifying packet. fetched val <1> size&#58;<1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data Vendor&#58;<0> Attr&#58;<231> Val&#58;<148752064> Size<1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data result <0> message <Success>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data verifying packet. fetched val <1> size&#58;<1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; Calling fill radius attributes for slink. Attr storage size <2>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data Vendor&#58;<0> Attr&#58;<230> Val&#58;<808464434> Size<4>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data result <0> message <Success>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data verifying packet. fetched val <144585568> size&#58;<1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data Vendor&#58;<0> Attr&#58;<231> Val&#58;<808464434> Size<4>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data result <0> message <Success>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data verifying packet. fetched val <148129760> size&#58;<1>
?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; Calling fill radius attributes for NAS. Attr storage size <0>
 Notice&#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; Login OK <qwe1> from NAS <195.191.82.14> CLID <> Calling-station <>
атрибуты такие -

Код: Выделить всё

Vendor&#58;0;Attr&#58;230;Val&#58;1 тип String
Vendor&#58;0;Attr&#58;231;Val&#58;1 тип String 

Код: Выделить всё

&#91;root@vpnhost ~&#93;# cat /var/run/radattr.ppp0
Service-Type Framed-User
Framed-Protocol PPP
Framed-IP-Address 191.191.81.141
Framed-IP-Netmask 255.255.255.255
Session-Timeout 86400
PPPD-Upstream-Speed-Limit 1
PPPD-Downstream-Speed-Limit 1
MS-MPPE-Encryption-Policy
MS-MPPE-Encryption-Types
MS-MPPE-Send-Key \207\005\300-;i\202^\207\231\363 \330\260@\012\320&#40;\277\265\244e\021\235\236\302\205f\246\035\201\202_\324
MS-MPPE-Recv-Key \200\214\001O\226\265Dm\001\232\247\340>\015\270\010\224\200zd~&#41;\245\026\251H\3779 \015&#91;\321\025"
MS-CHAP2-Success \201S=E6C0D4B4CE9CF2E2D5405ECE148A082291EEC030

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

Вручную не пробовали этот скрипт запустить?

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

заметил что при смене скорости в атрибутах меняется очень странно сам VAL

Код: Выделить всё

?Debug &#58; Dec 15 09&#58;11&#58;21 AuthServer&#58; fill_radius_data Vendor&#58;<0> Attr&#58;<230>Val&#58;<148137000>Size<1> 

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

JAO писал(а):Вручную не пробовали этот скрипт запустить?
запускал

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

А после UPSPEED/DOWNSPEED в tc единицы скорости не надо указывать?

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

JAO писал(а):А после UPSPEED/DOWNSPEED в tc единицы скорости не надо указывать?
где именно? =(

JAO
Сообщения: 1153
Зарегистрирован: Вт дек 11, 2007 08:17

Сообщение JAO »

Сразу после. Например ${DOWNSPEED}kbit/s или что-то в этом роде.

Аватара пользователя
kamae1ka
Сообщения: 142
Зарегистрирован: Пн окт 04, 2010 05:14

Сообщение kamae1ka »

исключено, ведь сами данные берутся ведь из атрибутов...
а скрипт лишь устанавливает заданную скорость
он берет переменную из $UPSPEED, $DOWNSPEED заданную из 230.231 атриибута.
Я задумываюсь над тем как ведет себя радиус...
и думаю какой именно тип у переменной VAL integer или string ? в разных мануалах по-разному

Ответить