BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 24 июн 2025, 03:56

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




Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2  След.
Автор Сообщение
СообщениеДобавлено: 25 май 2012, 16:00 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
У цисок (в моем случае ASR 1k2) есть возможность вставлять в опцию82, проприетарные поля, которые хранят данные о первом релее и идентификаторе vpn.

Выглядит это следующим образов.

Код:
Agent information{82}=
    sub{9}={000000091A0A186D6E30975212010600040307000202080006FC7516F2B320}
    sub{2}={020A00006D6E3086F20000AB}
    sub{-105}={00696E6672612D77616E2D696E65742D69706F65}
    sub{-106}={6D6E3084}
    sub{-104}={6D6E3086}


В субопции 9 находится содержимое, субопций 1 и 2 пришедшие от первичного релея.

Субопции 1 и 2 имеют такой вид

Код:
 
cisco-avpair=circuit-id-tag=000403070002
cisco-avpair=remote-id-tag=0006fc7516f2b320


При попытке парсить субопцию 9, получаю следующий экзепшен:

Код:
java.lang.NullPointerException
        at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpHelperProcessor.processRequestImpl(InetDhcpHelperProcessor.java:306)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:47)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:1)
        at ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker.runImpl(DhcpListenerWorker.java:55)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)


Настройки для парсинга:

Код:
dhcp.82.vlanOptionCode=9
dhcp.82.vlanPosition=16

dhcp.82.interfaceOptionCode=9
dhcp.82.interfacePosition=22

dhcp.82.remoteIdOptionCode=9
dhcp.82.remoteIdPosition=25
dhcp.82.remoteIdLength=6


В связи с чем вопросы.
Возможен ли парсинг любых субопций (кроме 1 и 2) ?
Не ограничена ли длина субопций ?
Нету ли ошибки в настройках для парсинга ?

Бьюсь уже второй день, не могу найти ошибку. Совсем глаз замылился.

Спасибо.

P.S

и еще вопрос.
Кто нибудь реализовал схему ISG с двумя релеями (subscriber routed, initator dhcp) ?

Первый - кошка на агрегации, вешает маршрут на unnumbered, по отрелееным дхцп пакетам.
Второй - ISG роутер, создает сессию и вешает сервисы, по отрелееным дхцп пакетам

На сайте циски есть упоминание, http://www.cisco.com/en/US/docs/ios-xml ... 4C09799E87


Последний раз редактировалось Zar1n 27 июл 2012, 08:21, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 25 май 2012, 20:01 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Это ошибка, в понедельник выложим обновление.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 29 май 2012, 04:49 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Когда ждать обновление ?
Пока в ченжлоге не вижу изменений в данном направлении. :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 31 май 2012, 07:57 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Люююди, где выыыыы ? :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 31 май 2012, 16:52 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Там не совсем ошибка была, скорее не слишком универсальная интерграция. Сейчас изменили и правим документацию.
У вас ISG? Клиент привязывается к порту на устройстве? Или по vlan?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 31 май 2012, 18:37 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
ISG, клиент привязан к порту на коммутаторе доступа.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 31 май 2012, 18:40 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В DHCP опции 82 значение порта у вас будет всегда в одном месте или может быть в разных опциях в зависимости от конечного коммутатора?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 31 май 2012, 18:57 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Всегда в одном месте. По крайней мере в обозримом будущем, вендора железа доступа менять не собираемся.

Главное чтобы cisco не поменяла содержимое субопции 9.

P.S

Код:
Субопции:
9 - giaddr (первого релея, вроде) + circuit.id + remote.id
2 - имя VRF на ASR.
Что в остальных, неизвестно, не нашел описание на циске.
Но в ответе возвращать нужно все пришедшие субопции, чтобы ASR ответил первому релею юникастом.


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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 31 май 2012, 19:26 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Код:
06-01/00:20:23  INFO [rdsLstnr-p-9-t-9] RadiusListenerWorker - REQUEST:
Packet type: Access-Request
Identifier: 121
Authenticator: {}
Attributes:
  User-Name=0006fc7516f2b320:000403070002:0800.270e.636a
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.1
  NAS-Port=0
  Service-Type=5
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

06-01/00:20:23  INFO [rdsLstnr-p-9-t-9] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 121
Authenticator: {}
Attributes:
  User-Name=0006fc7516f2b320:000403070002
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.1
  NAS-Port=0
  Service-Type=5
  Calling-Station-Id=0800.270e.636a
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171


В радиус запросах, субопции 1 и 2 передаются на своих местах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 05 июн 2012, 17:40 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Amir
Доброго времени суток.

Как обстоят дела с допиливанием ?
Хотелось бы поскорее оттестировать и приобрести модуль для продакшена :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 06 июн 2012, 19:42 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Выложили обновление. В конфигурации устройства-NAS'а нужно указать:
Код:
radius.servSearchMode=1
Если вдруг что-то не получится, лучше доступ сразу сделайте.

http://bgbilling.ru/v5.2/doc/ch18s13s03s01.html
http://bgbilling.ru/v5.2/doc/ch18s13s04s01.html
http://bgbilling.ru/v5.2/doc/ch18s13s04s02.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 08 июн 2012, 06:19 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Спасибо.
Настраиваюсь, тестируем. Сообщу :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 23 июл 2012, 05:26 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Доброго времени суток.

Тестирую дальше. Наткнулся на приведенный ниже экзепшен.

Код:
Attributes:
  User-Name=0006fc7516f2b320:000403070002:001a.6bd2.67c6
  NAS-Identifier=
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Acct-Session-Id=01066BE8
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 07-23/10:17:51  INFO [rdsLstnr-p-9-t-1] ISGProtocolHandler - 000403070002
radius 07-23/10:17:51  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 64
Authenticator:
Attributes:
  User-Name=0006fc7516f2b320:000403070002
  NAS-Identifier=
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Calling-Station-Id=001a.6bd2.67c6
  Acct-Session-Id=01066BE8
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] RadiusProcessor - Create new radius session.
radius 07-23/10:17:51  INFO [rdsLstnr-p-9-t-1] InetNas - Found agentDevice:9
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] HourlyDataLogger - Create log file...
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] HourlyLogFileUtils - Next log file: /bglogs/access/data/radius/source_7/2012/2012-07/2012-07-23/log_2012-07-23-10.001.bgdl
radius 07-23/10:17:51  INFO [rdsLstnr-p-9-t-1] HourlyDataLogEntry - Create dataLog file: /bglogs/access/data/radius/source_7/2012/2012-07/2012-07-23/log_2012-07-23-10.001.bgdl
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] BGDataLog - DataLog file [/bglogs/access/data/radius/source_7/2012/2012-07/2012-07-23/log_2012-07-23-10.001.bgdl] was opened
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] DataLog - Writing TLV finished(3)=[0]
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] DataLog - Writing TLV buffer(4)=[type=chunked, size=524288]
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] DataLog - Writing TLV compression(5)=[type=zlib, level=1, strategy=1]
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] DataLog - Writing TLV distributed(6)=[1]
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] DataLog - Writing TLV streaming(7)=[1]
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] BGDataLog - Header length=51
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] ZLIBWritableChannel - ZLIBWritableChannel bufferLength=524304
radius 07-23/10:17:51 DEBUG [rdsLstnr-p-9-t-1] ProcessorRequest - Sending to /192.168.192.6:1645
radius 07-23/10:17:51  INFO [rdsLstnr-p-9-t-1] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Reject
Identifier: 64
Authenticator:
Attributes:

Process time auth: 16

radius 07-23/10:17:51 ERROR [rdsLstnr-p-9-t-1] RadiusListenerWorker - 5
java.lang.ArrayIndexOutOfBoundsException: 5
   at ru.bitel.bgbilling.modules.inet.api.server.InetUtils.parseInt(InetUtils.java:454)
   at ru.bitel.bgbilling.modules.inet.runtime.device.AbstractInetDeviceRuntime.getOption82InterfaceId(AbstractInetDeviceRuntime.java:322)
   at ru.bitel.bgbilling.modules.inet.runtime.device.InetDeviceRuntime.getOption82InterfaceId(InetDeviceRuntime.java:1)
   at ru.bitel.bgbilling.modules.inet.radius.InetNas.findServRuntime(InetNas.java:1051)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authenticationImpl(InetRadiusProcessor.java:434)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:401)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:1)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.authentication(RadiusSession.java:115)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.accessRequest(RadiusSession.java:92)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequestImpl(RadiusProcessor.java:374)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:361)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:1)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:361)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:58)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:1)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.processPacket(RadiusListenerWorker.java:213)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.runImpl(RadiusListenerWorker.java:135)
   at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
   at java.lang.Thread.run(Thread.java:662)
   at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)



Метод поиска сервиса

radius.serviceSearchMode=1

Параметры:
Код:
dhcp.82.interfaceOptionCode
dhcp.82.interfacePosition
dhcp.82.remoteIdOptionCode
dhcp.82.remoteIdPosition
dhcp.82.remoteIdLength

Не заданы. Используются значения по умолчанию. Все вроде должно парсится.

В скрипте пред.обработки для установки значений remote.id и circuit.id используется функция приведенная ниже

Код:
   /**
    * Установка опций в запрос устройства-агента для последующей обработки
    * @param request
    */
   protected void setAgentOptions( final RadiusPacket request )
   {
      final Object agentRemoteId = getAttributeValue( request, radiusVendor, agentOptionRemoteIdType, agentOptionRemoteIdPrefix );
      if( agentRemoteId != null )
      {
//         logger.info( agentRemoteId );
         setAgentOption( request, agentRemoteId, InetRadiusProcessor.AGENT_REMOTE_ID );
      }

      final Object agentCircuitId = getAttributeValue( request, radiusVendor, agentOptionCircuitIdType, agentOptionCircuitIdPrefix );
      if( agentCircuitId != null )
      {
         logger.info( agentCircuitId );
         setAgentOption( request, agentCircuitId, InetRadiusProcessor.AGENT_CIRCUIT_ID );
      }
   }


Версии

Код:
bill вер. 5.2 сборка 263 от 21.06.2012 18:34:45
  bvcom вер. 5.2 сборка 45 от 18.05.2012 15:12:33
  card вер. 5.2 сборка 178 от 05.06.2012 16:47:51
  cerbercrypt вер. 5.2 сборка 196 от 08.06.2012 13:41:24
  dba вер. 5.2 сборка 147 от 13.03.2012 14:03:35
  dialup вер. 5.2 сборка 343 от 19.06.2012 11:17:51
  email вер. 5.2 сборка 166 от 08.06.2012 13:41:32
  inet вер. 5.2 сборка 916 от 21.06.2012 18:34:46
  ipn вер. 5.2 сборка 230 от 20.06.2012 14:34:15
  mps вер. 5.2 сборка 151 от 31.05.2012 14:53:35
  npay вер. 5.2 сборка 182 от 02.06.2012 03:52:05
  phone вер. 5.2 сборка 240 от 21.06.2012 19:24:36
  reports вер. 5.2 сборка 176 от 18.06.2012 21:51:23
  rscm вер. 5.2 сборка 161 от 20.06.2012 17:47:55
  ru.bitel.bgbilling.plugins.cashcheck вер. 5.2 сборка 101 от 19.03.2012 12:57:09
  ru.bitel.bgbilling.plugins.crm вер. 5.2 сборка 182 от 22.06.2012 13:20:41
  ru.bitel.bgbilling.plugins.documents вер. 5.2 сборка 142 от 01.06.2012 16:21:15
  ru.bitel.bgbilling.plugins.helpdesk вер. 5.2 сборка 163 от 13.06.2012 11:34:11
  trayinfo вер. 5.2 сборка 156 от 17.05.2012 12:21:25
  voiceip вер. 5.2 сборка 182 от 19.06.2012 11:17:52
  wm вер. 5.2 сборка 169 от 17.05.2012 15:29:27
  yamoney вер. 5.2 сборка 37 от 17.05.2012 15:29:27


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 23 июл 2012, 12:20 
Не в сети
Разработчик
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 23 июл 2012, 13:47 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Перепроверил, не задано.


Если dhcp.82.interfacePosition сделать равным 4. Экзепшена нет, но и значение порта равно 0. (что вполне логично, там ведь 00)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 23 июл 2012, 15:58 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Не получается повторить. Можете дать доступ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 24 июл 2012, 05:26 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Разобрался, проблема была в переменной

isg.port.length=
Точнее в ее значении по умолчанию. По умолчанию там 4, тоесть порт нужно искать в 3м байте ( от 0).

Теперь новая проблема:

Родительская сессия получает ацепт, но сервисы реджектятся.
Сервисы привязаны в тарифе. Способ привязки такой же, как со значением переменной radius.serviceSearchMode=0

Нужно как-то по другому ?

Код:
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - [username=LOCAL] Login password error.


Код:
Packet type: Access-Request
Identifier: 120
Authenticator: {E9 13 E4 16 42 04 CF 08 09 58 0C 33 84 70 9C 00}
Attributes:
  User-Name=0006fc7516f2b320:000403070002:001a.6bd2.67c6
  NAS-Identifier=core-lan-asr1k2-1-jigura18-r5
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Acct-Session-Id=0112B276
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] ISGProtocolHandler - 000403070002
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 120
Authenticator: {E9 13 E4 16 42 04 CF 08 09 58 0C 33 84 70 9C 00}
Attributes:
  User-Name=0006fc7516f2b320:000403070002
  NAS-Identifier=core-lan-asr1k2-1-jigura18-r5
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Calling-Station-Id=001a.6bd2.67c6
  Acct-Session-Id=0112B276
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-6] RadiusProcessor - Create new radius session.
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetNas - Found agentDevice:9
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetNas - Search serv on deviceId=9; interfaceId=2
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - [username=0006fc7516f2b320:000403070002] Authenticated as inetServId:7
radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-6] InetRadiusProcessor - MAC-address from request:
radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-6] InetAccountingPeriodList - Create:
radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-6] InetAccountingPeriodList - AccountingPeriod: 5: 02.07.2012 00:00:00.0 - 31.07.2012 23:59:59.999
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetApplication - inetServ[id=7] balance ok: -5829.57 [-6000.00]
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetApplication - TariffOptionMap: {}
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - Set ip from pool
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - Return code=0
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetDhcpHelperProcessor - Put auth accept 7:9:2:001A.6BD2.67C6
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS:
Packet type: Access-Accept
Identifier: 120
Authenticator: {}
Attributes:
  Acct-Interim-Interval=1200
  Framed-IP-Address=37.200.72.3
  Idle-Timeout=600
  cisco-avpair=subscriber:accounting-list=INET-ISG
  cisco-SSG-Account-Info=AINET
  cisco-SSG-Account-Info=AS_50MB
  cisco-SSG-Account-Info=ALOCAL

Process time auth: 5

radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-6] ProcessorRequest - Sending to /192.168.192.6:1645
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-6] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Accept
Identifier: 120
Authenticator: {9F FC 28 EC DC 19 EE EC 28 F2 01 8C 07 C4 AA D1}
Attributes:
  Acct-Interim-Interval=1200
  Framed-IP-Address=37.200.72.3
  Idle-Timeout=600
  cisco-avpair=subscriber:accounting-list=INET-ISG
  cisco-SSG-Account-Info=AINET
  cisco-SSG-Account-Info=AS_50MB
  cisco-SSG-Account-Info=ALOCAL

Process time auth: 7

radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] RadiusListenerWorker - REQUEST:
Packet type: Access-Request
Identifier: 121
Authenticator: {63 1A 0F 3D 8C F7 24 CF 7F 61 AB 7A DB 02 03 A0}
Attributes:
  User-Name=LOCAL
  NAS-Identifier=core-lan-asr1k2-1-jigura18-r5
  NAS-Port-Id=15/0/2/171
  User-Password=cisco
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Acct-Session-Id=0112B276
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] ISGProtocolHandler - 000403070002
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 121
Authenticator: {63 1A 0F 3D 8C F7 24 CF 7F 61 AB 7A DB 02 03 A0}
Attributes:
  User-Name=LOCAL
  NAS-Identifier=core-lan-asr1k2-1-jigura18-r5
  NAS-Port-Id=15/0/2/171
  User-Password=cisco
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Acct-Session-Id=0112B276
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-7] RadiusProcessor - Create new radius session.
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetNas - Found agentDevice:9
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetNas - Search serv on deviceId=9; interfaceId=2
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] [b]InetRadiusProcessor - [username=LOCAL] Login password error.[/b]
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - Return code=2
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS:
Packet type: Access-Reject
Identifier: 121
Authenticator: {}
Attributes:
  Reply-Message=2

Process time auth: 3

radius 07-24/10:12:33 DEBUG [rdsLstnr-p-9-t-7] ProcessorRequest - Sending to /192.168.192.6:1645
radius 07-24/10:12:33  INFO [rdsLstnr-p-9-t-7] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Reject
Identifier: 121
Authenticator: {0A BA 92 57 50 43 CD E8 1E 61 C6 6C 31 CC 05 65}
Attributes:
  Reply-Message=2

Process time auth: 5


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 24 июл 2012, 16:07 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Сейчас, похоже, по порту находит обычный сервис Inet, а не сервис Inet, на котором прописано описание сервиса ISG.

Я рекомендую попробовать авторизацию сервисов ISG вынести на отдельный Access сервер. Т.е. создать еще одно устройство Access, добавить туда устройство-cisco, системные сервисы привязать к нему. Если дадите доступ - попробую помочь настроить. Хочется в wiki данный варинт описать, т.к. помоему он более прозрачный. И проблемы с типами поиска исключает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 25 июл 2012, 15:47 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Сконфигурировал. Все вроде стало работать.

Есть не очень понятная ошибка при активации сервиса редиректа (состояние пользователя отключен), в других случая вроде не замечал. Ошибка возникает на Access радиусе, который авторизирует сервисы.

Код:
access 07-25/14:49:04 WARN [access-p-7-t-1] SessionCountManager - inetServRuntime:7 is null
mq 07-25/14:49:06 ERROR [event-proc-p-2-t-1] Consumer -
java.lang.NullPointerException
at ru.bitel.bgbilling.modules.inet.access.InetConnectionManager.notify(InetConnectionManager.java:277)
at ru.bitel.bgbilling.kernel.event.AbstractConsumer.notify(AbstractConsumer.java:275)
at ru.bitel.bgbilling.kernel.event.Consumer.notify(Consumer.java:1)
at ru.bitel.bgbilling.kernel.event.Consumer.onMessage0(Consumer.java:112)
at ru.bitel.bgbilling.kernel.event.Consumer$EventListenerRunnable.runImpl(Consumer.java:51)
at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)
mq 07-25/14:49:06 INFO [event-proc-p-2-t-1] InetConnectionManager - Remove connection: InetConnection [id=593-592, iface=7:0, sessId=0123FE83, start=25.07.2012 14:45:25, uname=S_40MB, addr=[IpAddress:null]]
mq 07-25/14:49:06 INFO [event-proc-p-2-t-1] InetConnectionManager - Remove connection: InetConnection [id=594-592, iface=7:0, sessId=0123FE82, start=25.07.2012 14:45:25, uname=LOCAL, addr=[IpAddress:null]]
mq 07-25/14:49:06 INFO [event-proc-p-2-t-1] InetConnectionManager - Add connection: InetConnection [id=595-592, iface=7:0, sessId=012407FD, start=25.07.2012 14:49:06, uname=L4_REDIRECT_WIRE, addr=[IpAddress:null]]
access 07-25/14:49:36 WARN [access-p-7-t-1] SessionCountManager - inetServRuntime:7 is null


На днях смогу дать доступ.

Еще бы хотелось иметь возможность выдавать IP категорию динамичесских пулов, в зависимости от агентского устройства. (кажется об этом речь в соседней теме, не понятно, будет ли распространяться на ISG)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cisco proprietary option82
СообщениеДобавлено: 27 июл 2012, 06:39 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Еще вопрос.

Как быть с аккаунтингом сервисов ? в какую группу и NAS должен приходить аккаунтинг ?

Получилась такая схема.

Клиент авторизировался основной сессий. Акаунтинг пришел в ту же группу, где он авторизировался.
Клиент авторизировал сервисы в группе сервисов (отдельный радиус сервер для этой группы). Если акаунтинг приходит в группу сервисов. Получаем:

radius 07-27/10:46:03 DEBUG [rdsLstnr-p-8-t-2] InetRadiusProcessor - Option parentAcctSessionId is set but connection not found with acctSessionId=013DBBC1. Add to start with parent map.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июл 2012, 13:31 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Можно сделать, чтобы сервисный аккаунтинг, в отличие от сервисного Access-Request ISG посылал на основной InetAccounting (основную группу)? Тогда все должно работать нормально.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 31 июл 2012, 05:38 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Amir писал(а):
Можно сделать, чтобы сервисный аккаунтинг, в отличие от сервисного Access-Request ISG посылал на основной InetAccounting (основную группу)? Тогда все должно работать нормально.


Сделать можно. Так работает.

Встречный вопрос. Можно ли допилить до работы с отдельной аккантинг группой/сервером для сервисов?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 31 июл 2012, 14:04 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Т.е. чтобы сервисный аккаунтинг приходил на группу, куда приходить сервисный Access-Request? Теоретически можно попробовать, но не просто - т.к. Accounting считает сервисные сессии дочерними к главным, т.е. привязывает их к главным при получении старт пакета, а обсчитывает их почти как обычные сессии, .
Да и зачем? В том же Redback вообще нет авторизации сервисов, там все приходит на одну группу.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 31 июл 2012, 17:07 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Именно так.

Получается схема:

- Одно Access/Accounting устройство для всех сервисов на коробке.
- Нужное количество Access/Accounting устройств для в родительских сессий в зависимости от сегмента или типа услуги.

Хотим использовать эту возможность, для терминации в пределах коробки разных сегментов (и услуг), и выдавать динамически адреса из соответствующих IP ресурсов.

Тут сразу появляется вопрос. Выдача динамических адресов из разных IP категорий на основе агентского устройства для Cisco ISG будет ? или есть ? И возможно какой-то способ группировки, скажем прописать IP ресурс не в самом агентском устройстве, а в директории выше уровнем.

Тогда по большей части описанная выше схема не нужна.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 31 июл 2012, 18:22 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
Тут сразу появляется вопрос. Выдача динамических адресов из разных IP категорий на основе агентского устройства для Cisco ISG будет ? или есть ? И возможно какой-то способ группировки, скажем прописать IP ресурс не в самом агентском устройстве, а в директории выше уровнем.
Должна работать, по AgentRemoteId из RADIUS пакета определяться агентское устройство (в агентском устройстве указан его MAC в верхнем регистре, тоже самое, что передается в AgentRemoteId) - а уже для него браться категории. Но в соседней ветке пока удалось настроить, у нас же возможности протестировать - нет.

Категории же можно прописать хоть на агентском устройстве, хоть на корневом (Access+Accounting). Можно и между - создать устройство-папку, в ней - агентские, а в конфигурации указать категории IP - тоже должно работать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 авг 2012, 05:12 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Тестирую. MAC адрес в верхнем регистре.

Получаю экзепшен

Код:
radius 08-01/09:49:51  INFO [rdsLstnr-p-9-t-3] RadiusListenerWorker - REQUEST:
Packet type: Access-Request
Identifier: 116
Authenticator: {BE CE 92 8A 65 B8 CC 50 40 37 B5 74 AC 23 8B 3D}
Attributes:
  User-Name=0006fc7516f2b320:000403070002:001a.6bd2.67c6
  NAS-Identifier=core-lan-asr1k2-1-jigura18-r5
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Acct-Session-Id=018332DE
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 08-01/09:49:51  INFO [rdsLstnr-p-9-t-3] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 116
Authenticator: {BE CE 92 8A 65 B8 CC 50 40 37 B5 74 AC 23 8B 3D}
Attributes:
  User-Name=0006fc7516f2b320:000403070002
  NAS-Identifier=core-lan-asr1k2-1-jigura18-r5
  NAS-Port-Id=15/0/2/171
  User-Password=123
  NAS-IP-Address=192.168.192.6
  NAS-Port=0
  Service-Type=5
  Calling-Station-Id=001a.6bd2.67c6
  Acct-Session-Id=018332DE
  NAS-Port-Type=5
  cisco-avpair=circuit-id-tag=000403070002
  cisco-avpair=remote-id-tag=0006fc7516f2b320
  cisco-avpair=vendor-class-id-tag=MSFT 5.0
  cisco-NAS-Port=15/0/2/171

radius 08-01/09:49:51  INFO [rdsLstnr-p-9-t-3] HourlyDataLogEntry - Create dataLog file: /bglogs/access/data/radius/source_7/2012/2012-08/2012-08-01/log_2012-08-01-09.002.bgdl
radius 08-01/09:49:51  INFO [rdsLstnr-p-9-t-3] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Reject
Identifier: 116
Authenticator: {EC 7F 96 B8 67 1C 68 09 C7 B9 17 28 A0 65 44 7C}
Attributes:

Process time auth: 10

radius 08-01/09:49:51 ERROR [rdsLstnr-p-9-t-3] RadiusListenerWorker - 5
java.lang.ArrayIndexOutOfBoundsException: 5
   at ru.bitel.bgbilling.modules.inet.api.server.InetUtils.parseInt(InetUtils.java:454)
   at ru.bitel.bgbilling.modules.inet.runtime.device.AbstractInetDeviceRuntime.getOption82InterfaceId(AbstractInetDeviceRuntime.java:322)
   at ru.bitel.bgbilling.modules.inet.runtime.device.InetDeviceRuntime.getOption82InterfaceId(InetDeviceRuntime.java:1)
   at ru.bitel.bgbilling.modules.inet.radius.InetNas.findServRuntime(InetNas.java:1066)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authenticationImpl(InetRadiusProcessor.java:433)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:400)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:1)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.authentication(RadiusSession.java:115)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.accessRequest(RadiusSession.java:92)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequestImpl(RadiusProcessor.java:374)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:360)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:1)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:361)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:58)
   at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:1)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.processPacket(RadiusListenerWorker.java:213)
   at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.runImpl(RadiusListenerWorker.java:135)
   at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
   at java.lang.Thread.run(Thread.java:662)
   at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)


В нижнем регистре все хорошо. Но:


Код:
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetNas - Found agentDevice:9
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetNas - Search serv on deviceId=9; interfaceId=2
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetRadiusProcessor - [username=0006fc7516f2b320:000403070002] Authenticated as inetServId:7
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetApplication - inetServ[id=7] balance ok: -5829.57 [-6000.00]
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetApplication - TariffOptionMap: {}
radius 08-01/10:04:47 ERROR [rdsLstnr-p-9-t-9] InetNas - Not found ip resources inetNas:7 and realm: default!
radius 08-01/10:04:47 ERROR [rdsLstnr-p-9-t-9] InetRadiusProcessor - Can't reserve ip address!
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetRadiusProcessor - Return code=100
radius 08-01/10:04:47  INFO [rdsLstnr-p-9-t-9] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS:


Категорию
Код:
radius.realm.default.ipCategories=1
не цепляет.
Если категорию описать в конфиге сервера доступа (устройство с ID:7 ) то, все работает.

Код:
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetNas - Found agentDevice:9
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetNas - Search serv on deviceId=9; interfaceId=2
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - [username=0006fc7516f2b320:000403070002] Authenticated as inetServId:7
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetApplication - inetServ[id=7] balance ok: -5829.57 [-6000.00]
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetApplication - TariffOptionMap: {}
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - Set ip from pool
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - Return code=0
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetDhcpHelperProcessor - Put auth accept 7:0006FC7516F2B320:000403070002:001A6BD267C6
radius 08-01/09:50:51  INFO [rdsLstnr-p-9-t-7] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS:



Сборка не самая последняя.
Код:
 inet вер. 5.2 сборка 933 от 23.07.2012 14:26:45


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

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Amir
Отправил данные для доступа в личку.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 авг 2012, 15:50 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Выложили обновление модуля.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 авг 2012, 04:49 
Не в сети

Зарегистрирован: 11 май 2010, 17:57
Сообщения: 93
Карма: 0
Amir писал(а):
Выложили обновление модуля.


Работает.

Категория для отключенных пользователей также может находится в конфиге агента ?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2  След.

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


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

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


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

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