Биллинговая система Nodeny

Главная категория => Nodeny 50 => Тема начата: amasis от 11 Апреля 2010, 23:09:42



Название: ng_car
Отправлено: amasis от 11 Апреля 2010, 23:09:42
Пробовал кто-нибудь использовать вместо dummynet - ng_car  ?
Поделитесь опытом.
Спасибо


Название: Re: ng_car
Отправлено: elite от 11 Апреля 2010, 23:52:26
по отзывам, падает в кордамп :(


Название: Re: ng_car
Отправлено: PBNM от 14 Апреля 2010, 15:35:50
   Да. У меня пользователи работают через vpn, а через радиус получают настройки для ng_car .


Название: Re: ng_car
Отправлено: Cell от 14 Апреля 2010, 15:38:17
   Да. У меня пользователи работают через vpn, а через радиус получают настройки для ng_car .

Интересно было бы посмотреть на реализацию. Вы храните отдельные настройки для каждого юзера или как-то интегрировали это с тарифными пакетами и биллингом в целом?


Название: Re: ng_car
Отправлено: PBNM от 14 Апреля 2010, 15:54:11
Нарезка согласно биллингу

DROP PROCEDURE IF EXISTS `radreply`;
DELIMITER $$
CREATE PROCEDURE `radreply` (IN login VARCHAR(64))
BEGIN
  DECLARE usr_id INT;
  DECLARE usr_ip VARCHAR(15);
  DECLARE rate_limit INT;
  DECLARE rate_limit_out INT;
  DECLARE normal_burst INT;
  DECLARE normal_burst_out INT;
  DECLARE extended_burst INT;
  DECLARE extended_burst_out INT;

  SELECT id,ip INTO usr_id,usr_ip FROM users WHERE name=login;
  INSERT into dblogin (mid,act,time) VALUES (usr_id,47,unix_timestamp());
  SELECT plans2.speed,plans2.speed_out INTO rate_limit,rate_limit_out from users,plans2 where users.name=login and users.paket=plans2.id ;
  SET rate_limit=rate_limit*1024;
  SET rate_limit_out=rate_limit_out*1024;
  SET normal_burst=ROUND(rate_limit*3/16);
  SET normal_burst_out=ROUND(rate_limit_out*3/16);
  SET extended_burst=2*normal_burst;
  SET extended_burst_out=2*normal_burst_out;
  SELECT usr_id as id,login,'Framed-IP-Netmask' as Attribute,'255.255.255.255' as Value,':=' as op;
  SELECT usr_id as id,login,'Framed-IP-Address' as Attribute,usr_ip as Value,':=' as op;
  IF (rate_limit>0) THEN SELECT usr_id as id,login,"mpd-limit" as Attribute,concat("out#1=all shape ",rate_limit," ",normal_burst," ",extended_burst) as Value,"+=" as op;
  END IF;
  IF (rate_limit_out>0) THEN SELECT usr_id as id,login,"mpd-limit" as Attribute,concat("in#1=all shape ",rate_limit_out," ",normal_burst_out," ",extended_burst_out) as Value,"+=" as op;
  END IF;
END$$
DELIMITER ;


По аналогичному принцыпу реализовано и для Mikrotik .
Аналогичное встречал (когда уже сделал) на http://groups.google.com/group/nodeny для CISCO .


Название: Re: ng_car
Отправлено: Cell от 14 Апреля 2010, 15:57:23
Надо будет попробовать


Название: Re: ng_car
Отправлено: PBNM от 14 Апреля 2010, 16:00:20
Есть недостаток пока (возможно комуто и существенный) - не меняет находу скорость .
Но есть идеи в этом направлении ...


Название: Re: ng_car
Отправлено: elite от 14 Апреля 2010, 17:15:29
Есть недостаток пока (возможно комуто и существенный) - не меняет находу скорость .
Но есть идеи в этом направлении ...
ну многим существенный :)
какие идеи в этом направлении?


Название: Re: ng_car
Отправлено: Cell от 14 Апреля 2010, 17:35:28
ну многим существенный :)
какие идеи в этом направлении?
Блин, а где это можно заюзать? Только при динамическом управлении шейпером, больше нигде.


Название: Re: ng_car
Отправлено: tuneil от 16 Апреля 2010, 21:55:50
Копайте в направлении CoA, через radclient можно динамически менять полосу. Схема уже накатаная и используется.


Название: Re: ng_car
Отправлено: amasis от 27 Февраля 2011, 22:49:58
Реализовывал кто-либо добавление нод из nofire.pl ?
Стоит ли игра свеч ? есть ли реальное уменьшение нагрузки по сравнению с dummynet ?