forum.bitel.ru
http://forum.bitel.ru/

Ошибка RejectToAccept при работе с Opt82 (CRM)
http://forum.bitel.ru/viewtopic.php?f=44&t=8661
Страница 1 из 1

Автор:  Угрюмов Роман [ 05 ноя 2013, 18:50 ]
Заголовок сообщения:  Ошибка RejectToAccept при работе с Opt82

Произвожу разбор пакета с опцией 82 и устанавливаю там устройство и интерфейс:
При авторизации по механизму RejectToAccept при в логе вижу:
Код:
11-05/16:26:29  INFO [rdsLstnr-p-9-t-1] InetNas - Search serv on deviceId=7; interfaceId=6
11-05/16:26:30  INFO [rdsLstnr-p-9-t-1] InetDhcpHelperProcessor - Put auth accept 2:7:0:60EB69B38938


При обычной авторизации строка в логе такая:
Код:
11-05/16:26:29  INFO [rdsLstnr-p-9-t-1] InetNas - Search serv on deviceId=7; interfaceId=6
11-05/16:26:30  INFO [rdsLstnr-p-9-t-1] InetDhcpHelperProcessor - Put auth accept 2:7:6:60EB69B38938


Соответственно когда DHCP пытается выдать адрес в режиме RejectToAccept
то он выдает ошибку:
Код:
11-05/16:26:25 ERROR [dhcpLstnr-p-11-t-1] InetDhcpHelperProcessor - Not found params for request: 2:7:6:60EB69B38938 (pattern: $deviceId:$remoteId:$circuitId:$mac, servSearchMode: 1, deviceId: 2, agentDeviceId: 7, mac: 60EB69B38938)

Автор:  Угрюмов Роман [ 07 ноя 2013, 17:49 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Господа!!!!!!!!! Ну проблема сама собой не рассосется! Факт имеет место быть! Не работает RejectToAccept совместно с опцией 82!
я даже примерно место ошибки могу назвать! Ну давайте решим эту проблему, у нас скоро новый дом подключается и мне надо гостевой доступ сделать на 400 квартир!!!!
Пришел пакет, access его обработал, вот лог:
Код:
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] SmartEdgeClipsProtocolHandler - Start setAgentOptions
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] SmartEdgeClipsProtocolHandler - Parse as Qtech bytes (setAgentOptions)
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 26
Authenticator: {CF D9 D0 62 08 29 06 C0 8F E6 19 89 65 E9 17 93}
Attributes:
  User-Name=001fce599769:566c616e3130302b45746865726e6574312f34
  NAS-Port-Id=3/3 vlan-id 100 clips 265754
  NAS-Identifier=RedBack
  User-Password=Redback
  NAS-IP-Address=172.16.98.7
  NAS-Port=50528256
  Service-Type=5
  Calling-Station-Id=60eb69b38938
  NAS-Port-Type=5
  Platform-Type=6
  Medium-Type=11
  Agent-Remote-Id={00 1F CE 59 97 69}
  UNKNOWN[2352-202]={0C 0C 0E 66 6F 78 70 64 6C 6C 2D 4C 65 6E 6F 76 6F}
  Agent-Circuit-Id={56 6C 61 6E 31 30 30 2B 45 74 68 65 72 6E 65 74 31 2F 34}
  OS-Version=11.1.2.7p2
  Mac-Addr=60-eb-69-b3-89-38
  NAS-Real-Port=855638116
  UNKNOWN[3561--1]={02 08 00 1F CE 59 97 69}
  UNKNOWN[3561--1]={01 15 56 6C 61 6E 31 30 30 2B 45 74 68 65 72 6E 65 74 31 2F 34}
Common options: {agentRemoteId=001FCE599769, interfaceId=4, deviceState=1}
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetNas - Found agentDevice:7
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetNas - Search serv on deviceId=7; interfaceId=4
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - [username=001fce599769:566c616e3130302b45746865726e6574312f34] InetServ not found.
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - [username=001fce599769:566c616e3130302b45746865726e6574312f34] Authenticated as inetServId:54
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - Write new waiting connection to DB
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - New connection id=65046
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - Return code=0
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetConnectionKeyMap - interfaceId not set
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetDhcpHelperProcessor - interfaceId not set
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS:
Packet type: Access-Accept
Identifier: 26
Authenticator: {}
Attributes:
  Reply-Message=1
  Framed-IP-Address=192.168.172.28
  DHCP-Max-Leases=1
  Service-Name:1=RSE-SVC-EXT
  Service-Options:1=1
  Service-Parameter:1=Rate=1000 Burst=250000
  IP-Interface-Name=NOAUTH

Process time auth: 35

11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Accept
Identifier: 26
Authenticator: {28 28 1E 1A F4 71 34 83 B6 49 8F 33 71 A1 81 3A}
Attributes:
  Reply-Message=1
  DHCP-Max-Leases=1
  Service-Name:1=RSE-SVC-EXT
  Service-Options:1=1
  Service-Parameter:1=Rate=1000 Burst=250000
  IP-Interface-Name=NOAUTH

Во первых странно что
Код:
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetRadiusProcessor - Return code=0

Хотя я создал договор с балансом ниже лимита, и сервисом со статусом закрыт
Обратите внимание, что интерфейс не устанговлен,
Код:
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetConnectionKeyMap - interfaceId not set

хотя вот эта строка правильная, пакет пришел от устройства с id=7 и с интерфейса № 4
Код:
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetNas - Search serv on deviceId=7; interfaceId=4


Далее когда DHCP сервер пытается выделить адрес для этого запроса:
Код:
11-07/15:38:43  INFO [dhcpLstnr-p-11-t-2] SmartEdgeClipsProtocolHandler - Start preprocessDhcpRequest
11-07/15:38:43  INFO [dhcpLstnr-p-11-t-2] SmartEdgeClipsProtocolHandler - Parse as Qtech bytes (preprocessDhcpRequest)
11-07/15:38:43  INFO [dhcpLstnr-p-11-t-2] InetAbstractDhcpProcessor - REQUEST_AFTER_PREPROCESS:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Discover{1}
htype: 1, hlen: 6, hops: 1
xid: -2019271094, secs: 3, flags: 0
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 192.168.172.1
Client MAC: {60EB69B38938}
  Host name{12}={foxpdll-Lenovo}
  Parameter request list{55}={1, 28, 2, 3, 15, 6, 119, 12, 44, 47, 26, 121, 42, 121, -7, -4, 42}
  Agent information{82}=
    sub{1}={566C616E3130302B45746865726E6574312F34}
    sub{2}={001FCE599769}
Common options: {agentRemoteId=001FCE599769, interfaceId=4}
11-07/15:38:43 ERROR [dhcpLstnr-p-11-t-2] InetDhcpHelperProcessor - Not found params for request: 2:7:4:60EB69B38938 (pattern: $deviceId:$remoteId:$circuitId:$mac, servSearchMode: 1, deviceId: 2, agentDeviceId: 7, mac: 60EB69B38938)
11-07/15:38:43  INFO [dhcpLstnr-p-11-t-2] InetAbstractDhcpProcessor - RESPONSE_BEFORE_POSTPROCESS:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP NAK{6}
htype: 1, hlen: 6, hops: 1
xid: -2019271094, secs: 0, flags: 0
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 192.168.172.1
Client MAC: {60EB69B38938}
  Agent information{82}=
    sub{1}={566C616E3130302B45746865726E6574312F34}
    sub{2}={001FCE599769}

11-07/15:38:43  INFO [dhcpLstnr-p-11-t-2] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP NAK{6}
htype: 1, hlen: 6, hops: 1
xid: -2019271094, secs: 0, flags: 0
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 192.168.172.1
Client MAC: {60EB69B38938}
  Agent information{82}=
    sub{1}={566C616E3130302B45746865726E6574312F34}
    sub{2}={001FCE599769}

То он не находит параметры для запроса:
Код:
11-07/15:38:43 ERROR [dhcpLstnr-p-11-t-2] InetDhcpHelperProcessor - Not found params for request: 2:7:4:60EB69B38938 (pattern: $deviceId:$remoteId:$circuitId:$mac, servSearchMode: 1, deviceId: 2, agentDeviceId: 7, mac: 60EB69B38938)

Поскольку я подозреваю радиус не установил значение интерфейса
Код:
11-07/15:38:43  INFO [rdsLstnr-p-9-t-1] InetDhcpHelperProcessor - interfaceId not set


Я не уверен, заранее прошу извенить, если я не прав, но что-то надо сделать с проблемой!!!

Автор:  Угрюмов Роман [ 07 ноя 2013, 17:50 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

лиент: вер. 6.0 сборка 1239 от 10.09.2013 03:46:10
os: Windows Vista; java: Java HotSpot(TM) Client VM, v.1.6.0_07
ВНИМАНИЕ: Необходимо обновить таймзоны
Сервер: вер. 6.0 сборка 1578 от 10.09.2013 16:40:11
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_21
ВНИМАНИЕ: Спецификация версии 1.7 не рекомендуется

bill вер. 6.0 сборка 327 от 09.09.2013 13:04:08
card вер. 6.0 сборка 218 от 03.09.2013 18:56:25
inet вер. 6.0 сборка 1234 от 10.09.2013 16:40:10
npay вер. 6.0 сборка 217 от 03.09.2013 18:57:03
ru.bitel.bgbilling.plugins.cladr вер. 6.0 сборка 120 от 31.05.2013 13:57:05

P.S. Если в обработчике DHCP сделать вот такой костыль:
Код:
   @Override
   public void preprocessDhcpRequest( DhcpPacket request, DhcpPacket response )
       throws Exception
   {
           ...................
           //Тут я выбросил кусок кода для получения remoteIdString

            request.setOption( InetDhcpProcessor.AGENT_REMOTE_ID, remoteIdString); //Поиск агента по серийному номеру
            devicePort = 0; //Костыль!!!!!!!!!!!!!!!!!
            request.setOption( InetDhcpProcessor.INTERFACE_ID, devicePort ); //Поиск по порту
         return;
   }
}

То адрес DHCP выделяет нормально!!!

Автор:  Amir [ 07 ноя 2013, 17:53 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Т.е. ошибка на гостевом доступе - когда сервис Inet не найден?

Автор:  Угрюмов Роман [ 07 ноя 2013, 17:55 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Amir писал(а):
Т.е. ошибка на гостевом доступе - когда сервис Inet не найден?

Нет!!! DHCP не выделяет адрес!!!

Автор:  Amir [ 07 ноя 2013, 18:01 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

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

Автор:  Угрюмов Роман [ 07 ноя 2013, 18:17 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Amir писал(а):
Вы же хотите реализовать схему, когда абонент авторизируется, а ни договора, ни сервиса у него нет?

Да
Amir писал(а):
Я имею в виду, что если ошибка доступа, например, баланс ниже лимита - то отрабатывает нормально при этом?

Трудно однозначно ответить.
1) авторизация в нормально ситуации идет по опции82, то есть из пакета я вычленяю номер устройства и номер порта и устанавливаю его обработчике:

Код:
protected void setAgentOptions( RadiusPacket request )
   {
           .....
           request.setOption( InetRadiusProcessor.AGENT_REMOTE_ID, remoteIdString); //Поиск агента по устройству
           request.setOption( InetRadiusProcessor.INTERFACE_ID, devicePort ); //Поиск по порту
        return;
   }

На каждого такого клиента заведен договор с сервисом с авторизацией по устройству и интерфейсу на устройстве и в этом случае авторизация проходит успешно.

Однако, для договора на гостевой доступ я завел договор с авторизацией по устройству, логину и паролю. А устройство при добавлении сервиса поставил корневое устройство, на котором нет интерфейсов. Прикол в том, что всегда независимо от состояния баланса биллин авторизует любое подключение с кодом 0, НО!!! в пакете Access-Accept правильно ставит IP-Interface-Name=NOAUTH, которое я прописал в
Код:
 radius.disable.attributes=IP-Interface-Name=NOAUTH;DHCP-Max-Leases=1;Service-Options:1=1;Service-Name:1=RSE-SVC-EXT;Service-Parameter:1=Rate=1000 Burst=250000

Автор:  Amir [ 07 ноя 2013, 18:30 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Проблема вроде как только с абонентами, у которых нет договора. Быстро не исправить.

Попробуйте просто изменить шаблон привязки RADIUS/DHCP в конфигурации устройства-Redback:
dhcp.key.pattern=$deviceId:$remoteId:$mac

Вроде бы не должно возникнуть проблем, если на одном коммутаторе-$remoteId не может быть больше одного абонента с одним и тем же MAC-адресом.

Автор:  Угрюмов Роман [ 07 ноя 2013, 18:39 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Amir писал(а):
Попробуйте просто изменить шаблон привязки RADIUS/DHCP в конфигурации устройства-Redback:
dhcp.key.pattern=$deviceId:$remoteId:$mac

Не могу я этого сделать, поскольку в шаблоне dhcp.key.pattern=$deviceId:$remoteId:$circuitId:$mac
$circuitId - это номер порта в свиче! То есть мне надо обязательно знать, что с устройства $remoteId и по порту $circuitId пришел запрос на гостевой доступ.
Мы перенаправляем этого клиента на свою страницу, где он нажимает кнопку "Подключиться к нам" и я автоматически завожу договор на устройство:порт $remoteId:$circuitId

Автор:  Угрюмов Роман [ 07 ноя 2013, 18:41 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Amir писал(а):
Проблема вроде как только с абонентами, у которых нет договора. Быстро не исправить..

Да, вроже проблема только для тех у кого нет договора. Сколько вам надо времени на исправление? Хоть примерно?

Автор:  dm777 [ 11 ноя 2013, 12:08 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

тоже интересна данная схема

Автор:  Угрюмов Роман [ 12 ноя 2013, 11:26 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82

Господа! Ну скажите что нибудь, мы дом подключаем с гостевым доступом

Автор:  Amir [ 13 ноя 2013, 19:36 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

На следующей неделе.

Автор:  Угрюмов Роман [ 27 ноя 2013, 12:34 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

Подправили, можно обновляться?

Автор:  Угрюмов Роман [ 29 ноя 2013, 18:44 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

Господа!!! У нас в доме стоит уже оборудование!!!

Автор:  Amir [ 02 дек 2013, 19:24 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

Попробуйте с последним билдом. Не забудьте сделать бэкап старых библиотек.

Автор:  Угрюмов Роман [ 03 дек 2013, 18:17 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

СПАСИБО!!!!!!!!!!!!!!!!!!!!!!!!!! Завтра попробуем!

Автор:  Угрюмов Роман [ 10 дек 2013, 15:07 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

Господа! Ничего не изменилось. Все тоже самое!!!
Код:
[b]Клиент: вер. 6.0 сборка 1269 от 04.12.2013 18:03:00
    os: Windows Vista; java: Java HotSpot(TM) Client VM, v.1.6.0_07
    ВНИМАНИЕ: Необходимо обновить таймзоны
  Сервер: вер. 6.0 сборка 1643 от 09.12.2013 18:32:23
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_21
    ВНИМАНИЕ: Спецификация версии 1.7 не рекомендуется

  bill вер. 6.0 сборка 339 от 02.12.2013 17:09:58
  card вер. 6.0 сборка 222 от 02.12.2013 20:14:54
  inet вер. 6.0 сборка 1279 от 09.12.2013 18:32:19
  npay вер. 6.0 сборка 221 от 14.11.2013 19:04:53
  ru.bitel.bgbilling.plugins.cladr вер. 6.0 сборка 120 от 31.05.2013 13:57:05[/b]

Автор:  stark [ 15 янв 2014, 17:44 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

Угрюмов Роман писал(а):
Господа! Ничего не изменилось. Все тоже самое!!!
Код:
[b]Клиент: вер. 6.0 сборка 1269 от 04.12.2013 18:03:00
    os: Windows Vista; java: Java HotSpot(TM) Client VM, v.1.6.0_07
    ВНИМАНИЕ: Необходимо обновить таймзоны
  Сервер: вер. 6.0 сборка 1643 от 09.12.2013 18:32:23
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_21
    ВНИМАНИЕ: Спецификация версии 1.7 не рекомендуется

  bill вер. 6.0 сборка 339 от 02.12.2013 17:09:58
  card вер. 6.0 сборка 222 от 02.12.2013 20:14:54
  inet вер. 6.0 сборка 1279 от 09.12.2013 18:32:19
  npay вер. 6.0 сборка 221 от 14.11.2013 19:04:53
  ru.bitel.bgbilling.plugins.cladr вер. 6.0 сборка 120 от 31.05.2013 13:57:05[/b]


Вы бы написали лучше в helpdesk

Автор:  skyb [ 15 янв 2014, 18:12 ]
Заголовок сообщения:  Re: Ошибка RejectToAccept при работе с Opt82 (CRM)

stark писал(а):
Угрюмов Роман писал(а):
Господа! Ничего не изменилось. Все тоже самое!!!
Код:
[b]Клиент: вер. 6.0 сборка 1269 от 04.12.2013 18:03:00
    os: Windows Vista; java: Java HotSpot(TM) Client VM, v.1.6.0_07
    ВНИМАНИЕ: Необходимо обновить таймзоны
  Сервер: вер. 6.0 сборка 1643 от 09.12.2013 18:32:23
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_21
    ВНИМАНИЕ: Спецификация версии 1.7 не рекомендуется

  bill вер. 6.0 сборка 339 от 02.12.2013 17:09:58
  card вер. 6.0 сборка 222 от 02.12.2013 20:14:54
  inet вер. 6.0 сборка 1279 от 09.12.2013 18:32:19
  npay вер. 6.0 сборка 221 от 14.11.2013 19:04:53
  ru.bitel.bgbilling.plugins.cladr вер. 6.0 сборка 120 от 31.05.2013 13:57:05[/b]


Вы бы написали лучше в helpdesk

да тут для начала бы стоило
Клиент: вер. 6.0 сборка 1269 от 04.12.2013 18:03:00
os: Windows Vista; java: Java HotSpot(TM) Client VM, v.1.6.0_07
ВНИМАНИЕ: Необходимо обновить таймзоны
Сервер: вер. 6.0 сборка 1643 от 09.12.2013 18:32:23
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_21
ВНИМАНИЕ: Спецификация версии 1.7 не рекомендуется
коечто поправить

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/