forum.bitel.ru http://forum.bitel.ru/ |
|
Поиск servid в preprocessAccountingRequest http://forum.bitel.ru/viewtopic.php?f=44&t=9470 |
Страница 1 из 1 |
Автор: | madmax [ 21 июл 2014, 16:08 ] |
Заголовок сообщения: | Поиск servid в preprocessAccountingRequest |
железка не передает в акаутинге ip адрес устройства и из-за этого в логи пишет кучу ошибок что адрес не найден. Но при создании сервиса адрес назначается статическим из сервиса. Хочу в preprocessAccountingRequest сделать поиск сервиса с него вытащить адрес и подставить его в Framed-ip-Address. Но вот не могу найти как в динамическом коде найти нужный servid учитывая то что авторизация идет по мак адресу Код: radius.servSearchMode=5
|
Автор: | madmax [ 22 июл 2014, 22:56 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Никто не подскажет как в динамическом коде найти сервис по мак адресу |
Автор: | stark [ 23 июл 2014, 10:44 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
У нас поиск происходит во внутренних классах, это скорее всего не вытащить сейчас через api. А это точно единственное решение ?Как-то смотрится не логичным искать это в предобработке если поиском занимается все равно потом accounting -сервер. Покажите какие ошибки у вас там в логах. |
Автор: | Cromeshnic [ 23 июл 2014, 11:00 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
#игнорировать отсутствие ip-адреса в update-пакете при создании сессии из апдейта connection.start.fromUpdate.ignoreFramedIpLack=1 не то? |
Автор: | Cromeshnic [ 23 июл 2014, 11:02 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Цитата: железка не передает в акаутинге ip адрес устройства и из-за этого в логи пишет кучу ошибок что адрес не найден А ошибки можете показать? И почему это является проблемой? |
Автор: | madmax [ 23 июл 2014, 12:00 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Обновляться не стали много что менять надо, позже обновимся. Ошибки лезут что ip адрес не найдет и по update потерянные сессии не создаются. Решили таким скриптом Код: request.setStringAttribute( -1, RadiusDictionary.User_Name, remove);
con = Setup.getSetup().getDBConnectionFromPool(); PreparedStatement ps = con.prepareStatement("SELECT INET_NTOA(CONV(HEX(addressFrom), 16, 10)) FROM inet_serv_13 WHERE HEX(macAddress)=?"); ps.setString( 1, remove); ResultSet rs = ps.executeQuery(); if(rs.next()) { String id = rs.getString(1); request.setIntAttribute( -1, RadiusDictionary.Framed_IP_Address, IPUtils.convertStringIPtoInt(id) ); } ps.close(); rs.close(); |
Автор: | madmax [ 23 июл 2014, 12:03 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Только вот проблема появилась стали приходить ошибки Connections pool to Master status Idle: 0; Active: 300; maxActive: 300; maxIdle: 20 Что не так в коде, кажется все сессии закрываются |
Автор: | stark [ 23 июл 2014, 12:06 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Может вы все-таки обновитесь до последней 5.2 и станете использовать опцию?. Не вижу смысла помогать вас с ошибками в старой версии. |
Автор: | Cromeshnic [ 23 июл 2014, 12:08 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
madmax писал(а): Ошибки лезут что ip адрес не найдет и по update потерянные сессии не создаются. Вот ваше решение же: Код: #игнорировать отсутствие ip-адреса в update-пакете при создании сессии из апдейта connection.start.fromUpdate.ignoreFramedIpLack=1 А по поводу коннектов, так вы его закрывайте в скрипте: Код: try{
... }finally{ ServerUtils.closeConnection(con); } |
Автор: | Cromeshnic [ 23 июл 2014, 12:10 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Но такой скрипт как решение - ужасно неэффективно. Лезть в базу в предобработке - ересь. |
Автор: | stark [ 23 июл 2014, 12:12 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Cromeshnic писал(а): madmax писал(а): Ошибки лезут что ip адрес не найдет и по update потерянные сессии не создаются. Вот ваше решение же: Код: #игнорировать отсутствие ip-адреса в update-пакете при создании сессии из апдейта connection.start.fromUpdate.ignoreFramedIpLack=1 Да у них вот эта проблема Цитата: madmax писал(а):
а с какого времени появилась возможность connection.start.fromUpdate.ignoreFramedIpLack=1 У нас обновления стоят от 23.07.2013 и мы с тех пор не обновлялись (все работает, да и web интерфейс переделывать нужно опять) c 11.09.2013 |
Автор: | stark [ 23 июл 2014, 12:15 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Я даже посмотрел что поменялось в web-интерфейсе 5.2 за этот период. Почти ничего, в основном Inet и tv. Да и то немного. В общем надуманная проблема. Я понимаю еще 6.0. |
Автор: | madmax [ 23 июл 2014, 12:31 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Да ладно вам ругаться, спасибо большое за помощь. Временное решение так как тестируем 6.1 чтобы переехать на него. Просто сейчас обновим 5.2 до актуальной версии и как всегда повылазиет куча других проблем. Скоро завершим тестирование и работу всех скриптов на версии 6.1 и сразу на него переключимся |
Автор: | Cromeshnic [ 23 июл 2014, 12:42 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
А как так "переключимся"? Без обновления что ли, на отдельный инстанс? Но там же базу надо и пр... Если просто обновлять на 6.1, то я бы побоялся перепрыгивать через версию, да ещё со старой 5.2. |
Автор: | stark [ 23 июл 2014, 12:55 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Cromeshnic писал(а): А как так "переключимся"? Без обновления что ли, на отдельный инстанс? Но там же базу надо и пр... Если просто обновлять на 6.1, то я бы побоялся перепрыгивать через версию, да ещё со старой 5.2. Вообще можно перепрыгивать через версию, инструкция по обновлению это позволяет. И так делают. Между 6.0 и 5.2 не такие большие различие как, например, между 5.1 и 5.2, так как 6.0 это фактически ветка которая идет от 5.2. Я бы обновился бы перед переходом на последнюю 5.2 - это делать проще скорее всего. А потом уже можно и на 6.1 сразу. Обновляться с версии 5.2 годовалой давности - так скорее всего никто не пробовал еще. |
Автор: | madmax [ 23 июл 2014, 14:38 ] |
Заголовок сообщения: | Re: Поиск servid в preprocessAccountingRequest |
Спасибо так и делаем на тестовой машине обновились до последней 5.2 и далее по инструкции на 6.1 Сейчас правим скрипты, веб морду и тестим все авторизации на модуле Inet |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |