Jump to content
Калькуляторы

Ivan_83,

Шли это всё мне диффами, исправлю.

Хотелось бы понять - вы сейчас занимаетесь этим проектом, или сделали форк, или как?

А то по ссылке с первой страницы lISG-0.11.3-alpha.tar.gz как был древний, так и остался, а тут смотрю какая-то webauth версия появилась?

А проект-то интересный...

Share this post


Link to post
Share on other sites

Ivan_83,

Шли это всё мне диффами, исправлю.

Хотелось бы понять - вы сейчас занимаетесь этим проектом, или сделали форк, или как?

А то по ссылке с первой страницы lISG-0.11.3-alpha.tar.gz как был древний, так и остался, а тут смотрю какая-то webauth версия появилась?

А проект-то интересный...

До форка далековато. Просто скорее набор патчей.

Share this post


Link to post
Share on other sites

Поясните, кто разобрался с берстом в конфиге? Там как-то не совсем понятно.

С одной стороны, для каждого сервиса указываются скорости стандартная и берста:

## Format for download and upload rates: "rate;normal burst" (in bit/s)
## Use zero values (0;0) for no rate limit
$cfg{srv}{TESTSERV}{download_rate} = "512000;256000";
$cfg{srv}{TESTSERV}{upload_rate}   = "512000;256000";

 

Если вторая цифра - это скорость, то почему скорость берста меньше стандартной?

 

С другой стороны, указывается некий

$cfg{burst_factor} = 1.5;

 

Я так понимаю, что берст в данном случае - это некий объем данных, который передается без урезания скорости, или на повышенной скорости, соответственно, должно быть 2 параметра - объем данный и скорость берста.

Тут же совсем непонятно.

 

Делаю сервис на 15мбит:

$cfg{srv}{INET15M}{download_rate} = "15728640;10000000";
$cfg{srv}{INET15M}{upload_rate}   = "15728640;10000000";
$cfg{srv}{INET15M}{traffic_classes} = [ "ALL_INET" ];

а speedtest.net намеряет все 22 мегабита. Больше конечно не меньше, но неправильно как-то...

Share this post


Link to post
Share on other sites

Burst это не скорость, а глубина корзины токенов. Поставишь мало - tcp сессии не будут успевать разгоняться, поставишь много - всплески будут большие. Подбирать лучше руками как мне кажется.

$cfg{burst_factor} = 1.5 насколько я помню применяется к атрибуту Class=x/y, при ручном описании сервисов он во внимание не берется.

Share this post


Link to post
Share on other sites

$cfg{burst_factor} = 1.5 насколько я помню применяется к атрибуту Class=x/y, при ручном описании сервисов он во внимание не берется.

Именно так.

Share this post


Link to post
Share on other sites

И еще косяк...

Решил слить самую свежую версию, слил hg clone https://bitbucket.org/sysoleg/lisg.

Собралось нормально, модуль ставится.

А демон выдает ошибку при запуске:

Bareword "ISG::NO_ACCT" not allowed while "strict subs" in use at /usr/local/ISG/bin/ISGd.pl line 220.
Bareword "ISG::NO_ACCT" not allowed while "strict subs" in use at /usr/local/ISG/bin/ISGd.pl line 366.
Bareword "ISG::NO_ACCT" not allowed while "strict subs" in use at /usr/local/ISG/bin/ISGd.pl line 384.
BEGIN not safe after errors--compilation aborted at /usr/local/ISG/bin/ISGd.pl line 1013.

Perl v5.10.1

iptables v1.4.2

Linux lctest 2.6.32-bpo.5-686

Что я делаю не так?

Share this post


Link to post
Share on other sites

Опс, предыдущий вопрос снят.

Попробовал с новым дефолтным конфигом - запускается, буду искать, что не так.

Share this post


Link to post
Share on other sites

И снова я, с новой проблемой.

Хочу реализовать смену скоросей на лету, турбо-кнопки и все такое.

Клиенту скорости задаются разными сервисами, есть сервис INTRANET безлимитный по скорости, и сервисы INET30M и INET50M, 30 и 50 мегабит соответственно.

Вот клиент подключен:

lctest:/usr/local/ISG/bin# isg show_services E43C966AF1E5EB88
User IP-address NAT IP-address  Port number   Uniq. Identifier Durat.  Octets-in  Octets-out Rate-in    Rate-out   Service name     Flags
10.177.250.4    0.0.0.0         Virtual2      19450E028A90CE90 10277   574547534  98477026   31457280   31457280   INET30M          SOU
10.177.250.4    0.0.0.0         Virtual2      4E25BFFE4C60B1C1 288     0          132        0          0          INTRANET         SOU

Хочу заменить сервис INET30M на INET50M:

lctest:/usr/local/ISG/bin# echo NAS-Identifier="10.0.0.23",User-Name="10.177.250.4",Cisco-Account-Info="AINET50M" | radclient -x 127.0.0.1:3799 coa secret
Sending CoA-Request of id 210 to 127.0.0.1 port 3799
       NAS-Identifier = "10.0.0.23"
       User-Name = "10.177.250.4"
       Cisco-Account-Info = "AINET50M"
rad_recv: CoA-ACK packet from host 127.0.0.1 port 3799, id=210, length=20

Но нифига не меняется:

lctest:/usr/local/ISG/bin# isg show_services E43C966AF1E5EB88
User IP-address NAT IP-address  Port number   Uniq. Identifier Durat.  Octets-in  Octets-out Rate-in    Rate-out   Service name     Flags
10.177.250.4    0.0.0.0         Virtual2      19450E028A90CE90 10433   574677285  98510928   31457280   31457280   INET30M          SOU
10.177.250.4    0.0.0.0         Virtual2      4E25BFFE4C60B1C1 444     0          132        0          0          INTRANET         SOU

Вместо Cisco-Account-Info пробовал отправлять через Class - тот же самый эффект, что есть никакого.

Что я делаю не так?

 

И такой вопрос - может быть, для сессии задать аттрибут типа множитель скорости? То есть, отправил для сессии какой-нибудь RateMult=2, и все скорости в 2 раза увеличились?

Абрам, народ с надеждой смотрит на тебя! :)

Share this post


Link to post
Share on other sites

Seagull, в исходниках ISG(станартного), если я правильно понимаю, не обрабатывается значение атрибута Cisco-Account-Info,

если значение атрибута не начинается на Q

  if ($rp->vsattributes($rad_dict->vendor_num("Cisco"))) {
               foreach my $val (@{$rp->vsattr($rad_dict->vendor_num("Cisco"), "Cisco-Account-Info")}) {
                   if ($val =~ /^Q/) {
                       @rate_info = parse_account_qos($val);
                   }

Остальные значения просто игнорирутся(?)

Я могу ошибаться. Остается или ждать патча (а может он уже написан, надо бы ветку заново перечитать :) ),

либо писать патч самим, либо менять через isg change-rate, если этот метод работает (нашлось время потестить, не работает смена через change-rate...а как тогда вообще поменять?)

Edited by C@T

Share this post


Link to post
Share on other sites

Мужики, запилите этот проект уже на каком нибудь github, что бы можно было нормально следить за развитием.

А там уже кто поднятется.

Share this post


Link to post
Share on other sites

Очень понравился данный проект.

Недавно искал подобное решение более менее "адекватное", без Cisco и Mikrotik

 

Думаю в обозримом будущем добавлю поддержку в билилнг MikBill "ISG for Linux" .

 

и если нужно могу разместить у себя на серевер(Производительность/Надежность/Ресурсы сервера на высоком уровне) и github или SVN, если нужно и WIKI и раздел форума.

Если авторы заинтересовались пишите в личку посотрудничаем.

 

По возможности и в разработке буду тож чтото делать..но уже после того как в биллинг добавлю и если в этом будет нужда Нашим клиентам.

 

думаю такие проэкты стоит поддерживать.

 

 

Вопрос может глупый

 

Поделитесь кто пользутся "ISG for Linux" на каком Online абонентов , обьеме трафика , и какие шейперы.

 

Например 500 Online / 300 Mbit / 1,2,5,10 Мбит

Edited by ldemiurg

Share this post


Link to post
Share on other sites

 

Поделитесь кто пользутся "ISG for Linux" на каком Online абонентов , обьеме трафика , и какие шейперы.

 

Например 500 Online / 300 Mbit / 1,2,5,10 Мбит

Эх блин...

Хочу затестить на реальных юзерах - останавливает только одно - не работает CoA нифига, соотвественно, ни турбо-кнопки, ни ночного увеличения скорости не сделать...

А развитие похоже заглохло...

Жаль, очень жаль...

Share this post


Link to post
Share on other sites

Поделитесь кто пользутся "ISG for Linux" на каком Online абонентов , обьеме трафика , и какие шейперы.

 

Например 500 Online / 300 Mbit / 1,2,5,10 Мбит

 

cpu.png

traffic.png

Share this post


Link to post
Share on other sites

[557368.999556] ipt_ISG: Lost packet during sending data to listener (err=-11)

[557369.024622] ipt_ISG: Lost packet during sending data to listener (err=-11)

[557369.072401] ipt_ISG: Lost packet during sending data to listener (err=-11)

[557369.072552] ipt_ISG: Lost packet during sending data to listener (err=-11)

[557369.072695] ipt_ISG: Lost packet during sending data to listener (err=-11)

[557369.087658] ipt_ISG: Lost packet during sending data to listener (err=-11)

 

 

что это?

Share this post


Link to post
Share on other sites

Wingman - подскажите а какой процессор или процессоры вы использутее , какие карты, какая версия ядра/iptables ?

Share this post


Link to post
Share on other sites

2.6.34

Xeon® CPU E5620 @ 2.40GHz

~ # lspci -v | grep -i eth
05:00.0 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
05:00.1 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
08:00.0 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
08:00.1 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)

 

Скоро будем пробовать 10g с X520-DA2 + 2*X5660

Share this post


Link to post
Share on other sites

День добрый.

 

ISG , 200 пользователей, freeradiusm база oracle

Постоянно валится подобное :

 

Apr 19 17:35:51 isg-test ISG[8062]: Timeout waiting RADIUS reply for '172.19.75.98' from '127.0.0.1:1813'

Apr 19 17:35:51 isg-test ISG[8062]: No more servers to retry for '172.19.75.98', give up

 

Увеличивал тайм-ауты в конфиге фрирадиуса, количество sql сокетов - все без толку.

Сейчас стоит - max_request_time 16, max_servers = 64, num_sql_socks = 32

 

совсем запутался куда копать

 

PS tns_ping в моменты отвала показывает не более 10 ms

Edited by elcambino

Share this post


Link to post
Share on other sites

Не подскажите, как обстоят дела с реализацией ветки когда у клиента несколько ip ? Обсуждение было но чем закончилось так и не нашел сообщения.

 

PS: Как не заметно пропал автор сего замечательного продукта, интересно им кто-то на сегодня занимается ?

Share this post


Link to post
Share on other sites

У нас работает, часть в перле несколько модифицирована, чтобы по снмп забирать маки с коммутатора с супервланом и потом в радиусе отсылать правильный мак.

 

Клиенту просто выдаётся несколько IP, и указывается родительская сессия, как то так.

Share this post


Link to post
Share on other sites

Клиенту просто выдаётся несколько IP, и указывается родительская сессия, как то так.

А примерчик можно, а я пока только учусь этому чуду техники.

Share this post


Link to post
Share on other sites
А примерчик можно, а я пока только учусь этому чуду техники.

Этого я не реализовывал, это то что осталось в памяти от прочтения этой ветки и кода перлового демона.

Share this post


Link to post
Share on other sites

Чудо чудом , а автор пропал в пропасть , талантливый чел , отписался бы хоть , перспективы ограничил или как ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now