BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 28 апр 2024, 10:11

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Не дает accept при установленном
СообщениеДобавлено: 11 авг 2012, 22:29 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
При установленном значении radius.disable.accessCodes=1 когда логин не найден в биллинге модуля Inet не выдает accept а выдает reject.
Получается параметр со значением 1 не отрабатывает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 13 авг 2012, 10:13 
Не в сети

Зарегистрирован: 20 апр 2011, 09:56
Сообщения: 346
Карма: 19
о, я не один такой.
viewtopic.php?f=44&t=6866#p55059


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 13 авг 2012, 16:03 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
Так как разработчики могут сказать почему так происходит?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 13 авг 2012, 17:20 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Выложили обновление модуля.
Для того, чтобы выдавался Access-Accept при не найденном inetServ дополнительно нужно создать фиктивный (системный) договор с балансом ниже лимита, в нем сервис и указать id этого сервиса в конфигурации устройства
Код:
radius.disable.servId=123
При этом все сессии, для которых не был найден inetServ будут привязаны к указанному.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 15 авг 2012, 11:56 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
Да спасибо сейчас при ошибке 1 выдает Accept, но почему-то через каждые 3 минуты послылает команду CoA disconnected
Код:
08-15/11:44:22 DEBUG [sa-p-10-t-1] AcknowledgeConsumer - Caught BGInetAccess:Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaStateModifyEvent] moduleId: 1; pluginId: no; cid: 6;
 scid: -1; userId: 0; deviceId: 4; inetServId: 3; connectionId: 97; state: 0; accessCode: 3; timestamp: 1345009462093
08-15/11:44:22  INFO [sa-p-10-t-1] ServiceActivatorDeviceWorker - Do task deviceId: 4; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaStateModifyEvent] moduleId: 3; pluginId: no; cid:
 6; scid: -1; userId: 0; deviceId: 4; inetServId: 3; connectionId: 97; state: 0; accessCode: 3; timestamp: 1345009462093
08-15/11:44:22  INFO [sa-p-10-t-1] InetApplication - TariffOptionMap: {}
08-15/11:44:22  INFO [sa-p-10-t-1] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=2; inetServId: 3; call: true; oldState: 1; newState: 0; oldOptionSet: ; newOptio
nSet:
08-15/11:44:22  INFO [sa-p-10-t-1] ServiceActivatorDeviceWorker - Processing deviceId:4; command ServiceActivatorEvent type=2; inetServId: 3; call: true; oldState: 1; newState: 0; oldOptionSet: ;
 newOptionSet:
08-15/11:44:22  INFO [sa-p-10-t-1] ServiceActivatorSet - Invoking connectionClose
08-15/11:44:22  INFO [sa-p-10-t-1] CoAServiceActivator - Connection close
08-15/11:44:22  INFO [sa-p-10-t-1] CoAServiceActivator - Send PoD:
Packet type: Disconnect-Request
Identifier: 68
Authenticator: {80 31 35 55 6D 9F 11 6F DF 0B 8A 3B 45 67 29 B2}
Attributes:
  User-Name=0021071B757D
  NAS-Identifier=test
  NAS-IP-Address=1.1.1.1
  Framed-IP-Address=2.2.2.2


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 15 авг 2012, 13:13 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
И если посмотреть на логи в Мониторе текущих соединений то там отображается множество запрсов Acces-request на которые столько же идет Access-accept


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 15 авг 2012, 15:08 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
Так кажется я нашел проблему, которую необходимо разработчикам как-то исправить.
Дело в том что при установленно
Код:
radius.disable.accessCodes=1

и привязанном его к Id сервиса на договоре отрабатывает счетчик количества одновременных сессий, который у нас стоит 1, поэтому и происходит разрыв соединений, а максимум можно выставить значение 30 соединений, а если соединений с ошибкой 1 более 30 то биллинга каждые 3 минуты будет рвать все такие соединения.
Прошу разработчиков учесть данну. проблему.
И еще непонятно почему сессиям с кодом 1 идет команда на разрыв соединения с ошибкой по логам accessCode 3, если в настройках устройства
стоит значение
Код:
radius.connection.checkDuplicate=0

Хотя данное значение для всех других соединений отрабатывает корректно.
Получается что когда отрабатывает radius.disable.accessCodes биллинг применяет не значения с устройства а какие-то свои значения по умолчанию


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 16 авг 2012, 15:48 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Может быть лучше просто создать фиктивный сервис (или тип сервиса) с неограниченным количеством одновременных сессий?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 16 авг 2012, 16:55 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
Ок так и сделали


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 19 авг 2012, 04:09 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Amir писал(а):
Для того, чтобы выдавался Access-Accept при не найденном inetServ дополнительно нужно создать фиктивный (системный) договор с балансом ниже лимита, в нем сервис и указать id этого сервиса в конфигурации устройства
Код:
radius.disable.servId=123
При этом все сессии, для которых не был найден inetServ будут привязаны к указанному.

А без этого разве никак не обойтись?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 19 авг 2012, 15:01 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А куда привязывать сессии, которые некуда привязывать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 20 авг 2012, 11:05 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Amir писал(а):
А куда привязывать сессии, которые некуда привязывать?

В /dev/null. Я слабо понимаю зачем нужно что-то делать с теми, кого в биллинге официально нет (нет логина, логин есть, но период не совпадает и т.д. и т.п.).
В dialup люди с ISG выкручивались привязывая сервисы к служебному договору и в inet Вы предлагаете делать то же самое, но я не понимаю, зачем нужно:
Amir писал(а):
Выложили обновление модуля.

Т.е. зачем нужно вообще трогать модуль в тех ситуациях, когда люди сами не хотят пораскинуть мозгами и каким либо образом обработать реализованную ими ситуацию с
Код:
radius.disable.accessCodes=1

когда ее (и еще 100500 вариантов) можно и в дин. коде обработать, вместо того, чтобы тут говорить о том что нужно исправление модуля под их конкретную, персональную ситуацию, которая сложилась в результате их личных действий и является результатом их, персонального дизайна. При этом стоит помнить о том, что многие, наверное, не попадут в эту ситуацию вообще никогда.
Упор на "персональность" ситуации тут не случаен, т.к. именно от Вас, уважаемые разработчики, я регулярно слышу о том что вы не склонны решать персональные проблемы перепиливая общее для всех решение и это похвально (персональные траблы == "хд => $ => profit"(с)), но ВНЕЗАПНО я читаю о том, что Вы трогаете общий для всех модуль в попытке решить местечковую проблему, которая, повторюсь, может и, пожалуй, должна быть решена дин. кодом. Что это за система двойных стандартов такая? Или дело в модулях и в inet мы пилим, а в, например, приснопамятном npay нет?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 20 авг 2012, 11:33 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
snark - мне кажется ты тупишь.
При чем тут - луди не могут пораскинуть мозгами. Как видно из твоей писанины ты считаешь себя самым мозговитым.
Во первых разработчики еще для модуля Diulap - реализовали поддержку reject-accept, до этого все делали это сами - своими мозгами.
Теперь в новом модуле они также реализовали данную поддержку, но она работает некорректно о чем разработчикам и было сообщено.
Как я понимаю на данном форуме обсуждают выявленные ошибки и предложения того чтобы улучшило данный продукт.
А уже разработчикам решать добавлять что-то и устранять выявленные ошибки в коде.

С ваших слов получается - зачем вы вообще реализовали поддержку reject-accept - пускай все сами ее решают динамическим кодом. Пойдем дальше - зачем вы вообще реализовали поддержку CoA - пускай думают мозгами и решают ее динамическим кодом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 20 авг 2012, 12:54 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Я не говорю что я самый умный, но елки-палки речь то тут идет об ошибке номер 1 (один), т.е. ошибке говорящей об отсутствии логина (его физически нет в БГ или еще чего - не суть) и обрабатывать это стоит уже не в в общем контексте такой хорошей, нужной и полезной (я так серьезно считаю) ф-ции каковой является R2A, а отдельными методами. Почему? Потому что в случае с IPoE - "нет логина" - это одно, а в случае с *РРР - это другое, но все равно логина не существует и раз его не существует, то в в каждой отдельно взятой инсталяции это должно обрабатываться своими средствами и не нужно для этого пилить _общий_ модуль.
Надеюсь я ясно выразил свою позицию? Если не ясно, разъясняю по пунктам:
1. ф-ця R2A нужна и востребована
2. если кто-то хочет обрабатывать ситуацию отсутствия логина - пусть делает это сам, а не заставляет разработчиков пилить общий модуль под себя

P.S. Если у кого-то проблемы с (пере)созданием сессий - это проблемы inet и их надо решать, но не в контексте обработки ошибки номер 1 (один), а именно в контексте возникшей проблемы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не дает accept при установленном
СообщениеДобавлено: 21 авг 2012, 13:51 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Сделали, потому что: в текущей структуре было сделать просто, в dialup это было, для однообразия (тоже самое планируем сделать для dhcp, для упрощения работы монтажников, например). Также, потому что не очень нравится, когда в предобработке работают с базой - не всегда не у всех получается оптимально.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.387s | 48 Queries | GZIP : On ]