Да что-то не совсем понятно, ничего не менялось и раз началось ...
error.log
Код:
java.lang.IllegalArgumentException
at java.nio.Buffer.limit(Buffer.java:247)
at ru.bitel.bgbilling.modules.inet.dyn.device.redback.SmartEdgeClipsProtocolHandler.setAgentOption(SmartEdgeClipsProtocolHandler.java:112)
at ru.bitel.bgbilling.modules.inet.dyn.device.redback.SmartEdgeClipsProtocolHandler.setAgentOptions(SmartEdgeClipsProtocolHandler.java:175)
at ru.bitel.bgbilling.modules.inet.dyn.device.redback.SmartEdgeClipsProtocolHandler.preprocessAccessRequest(SmartEdgeClipsProtocolHandler.java:219)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.preprocessAccessRequest(InetRadiusProcessor.java:352)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.preprocessAccessRequest(InetRadiusProcessor.java:1)
at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:382)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:59)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:1)
at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.processPacket(RadiusListenerWorker.java:228)
at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.runImpl(RadiusListenerWorker.java:147)
at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)
radius 04-02/14:54:56 ERROR [rdsLstnr-p-8-t-3] InetRadiusProcessor -
java.lang.IllegalArgumentException
Конфигурация SE
Код:
#хост для отправки PoD и CoA запросов (по умолчанию - хост, заданный в параметрах устройства Хост/порт)
#radius.host=<хост устройства>
#порт для отправки PoD и CoA запросов (по умолчанию - порт, заданный в параметрах устройства Хост/порт)
radius.port=3799
#идентификатор - Nas-Identifier (по умолчанию - значение из поля Идентификатор параметров устройства)
#radius.identifier=<идентификатор устройства>
#используемый secret для общения по radius-протоколу (по умолчанию - значение из поля Community/secret параметров устройства)
#radius.secret=<community/sercret устройства>
# Атрибуты, которые передаются для всех сессий.
# IP-Interface-Name соответствует интерфейсу в конфиге RedBack, к которому "биндится" абонентская сессия (обязательный параметр).
# DHCP-Max-Leases - обязательный параметр, необходим для получения адреса по DHCP.
const.access.attributes=IP-Interface-Name=CLIPS-001;DHCP-Max-Leases=1;Acct-Interim-Interval=900
# Атрибуты для сессий абонентов, отключенных по балансу. Используются для http-редиректа.
redirect.attributes=HTTP-Redirect-Profile-Name=NOAUTH;Forward-Policy=in:HTTP-REDIRECT;Acct-Interim-Interval=900
# Наборы атрибутов для разных опций. В данном случае указываются разные скорости доступа
option.1.attributes=Service-Name:1=RSE-SVC-EXT;Service-Options:1=1;Service-Parameter:1=RATE=10240 BURST=1966080 BURST-EX=3932160
option.2.attributes=Service-Name:1=RSE-SVC-EXT;Service-Options:1=1;Service-Parameter:1=RATE=20480 BURST=3932160 BURST-EX=7864320
#атрибуты, выдаваемые при авторизации по реалму default (default - реалм по умолчанию)
radius.realm.default.attributes={@const.access.attributes}
#категории ip адресов из ресурсов, из которых будут выдаваться адреса ("пул", указывается во вкладке "IP ресурсы")
radius.realm.default.ipCategories=2
dhcp.ipCategories=2
dhcp.disable.ipCategories=2
#коды ошибок, при которых вместо reject выдавать accept с заданными атрибутами
#(пользователю выдается серый адрес и устанавливается HTTP-редирект)
radius.disable.accessCodes=1,2,3,4,10,11,12
#атрибуты, выдаваемые при rejectToAccept
radius.disable.attributes=IP-Interface-Name=CLIPS-001;DHCP-Max-Leases=1;{@redirect.attributes}
#категории ip адресов из ресурсов, из которых будут выдаваться адреса для отключенных ("пул", указывается во вкладке "IP ресурсы")
radius.disable.ipCategories=2
#атрибуты, при наличии которых соединение должно считаться в состоянии DISABLE (т.е. с ограниченным доступом)
# Используемый для отключенных пул адресов и параметры http-редиректа.
radius.disable.pattern.attributes=HTTP-Redirect-Profile-Name=NOAUTH
#привязка кодов опций модуля к атрибутам
#данные атрибуты будут выдаваться в AccessAccept при удачной авторизации и при наличии активных опций в тарифе или сервисе
radius.inetOption.1.attributes={@option.1.attributes}
radius.inetOption.2.attributes={@option.2.attributes}
#radius.inetOption.3.attributes={@const.access.attributes};{@option.3.attributes}
radius.agent.option.removeHeader=2
radius.agent.option.remoteId.position=0
radius.agent.option.remoteId.length=6
#--------------
#параметры dhcp
#--------------
#настройки DHCP-сервера
dhcp.option.serverIdentifier=0.0.0.0
dhcp.option.leaseTime=900
dhcp.net.option.10.1.0.0:255.255.240.0.gate=10.1.15.254
dhcp.net.option.10.1.0.0:255.255.240.0.dns=91.000.000.7
#----------------------------
#параметры активации сервисов
#----------------------------
#длина паузы, если возникла ошибка
#sa.error.pause=60
#количество заданий за раз
#sa.batch.size=20
#время (сек) ожидания завершения всех заданий (при асинхронной работе)
#sa.batch.wait=5
#пауза (сек) после обработки заданий
#sa.batch.pause=0
#время (сек) ожидания новой задачи перед вызовом disconnect.
#sa.batch.waitNext=5
#----------------------------------------
#параметры обработчика активации сервисов
#----------------------------------------
#откуда при отправке CoA брать атрибуты опций (по умолчанию - те же атрибуты, что выдаются при удачной авторизации)
sa.radius.option.attributesPrefix=option.
sa.radius.connection.attributes=Acct-Session-Id
#атрибуты CoA запроса для прекращения доступа (используется при sa.radius.connection.withoutBreak=1)
sa.radius.disable.attributes={@redirect.attributes}
#фиксированные атрибуты, добавляемые в запрос перед отправкой CoA
#sa.radius.coa.attributes=
#добавлять ли при отправке CoA атрибуты реалма (для default - из radius.realm.default.attributes)
#sa.radius.realm.addAttributes=0
#атрибуты, посылаемые при закрытии сервисов
sa.radius.service.closeAttributes=Deactivate-Service-Name:1=RSE-SVC-EXT
#фиксированные атрибуты, добавляемые в запрос перед отправкой PoD
#sa.radius.pod.attributes=
dhcp.deviceSearchMode=0
dhcp.servSearchMode=1
radius.servSearchMode=1
dhcp.renew=1
dhcp
Код:
#DHCP
# Привязка к xid DHCP-запросов
# 0 - выкл., 1 (по умолчанию) - вкл.
dhcp.xid=0
#Режим выдачи IP DHCP сервером
# 0 - работает как обычно, т.е. для disable сессий (в состоянии отключена) пытается выдать адрес из специального пула.
# 1 - выдает адрес точно так же, как-будто это обычная сессия (в состоянии включена, т.е. статус открыт, баланс больше лимита).
dhcp.disable.mode=1
#dhcp.connection.closeOnNew=1
#dhcp.renew=1
# поиск по giaddr, агентское устройство будет найдено позднее
#dhcp.deviceSearchMode=2
dhcp.deviceSearchMode=0
dhcp.servSearchMode=1-2
# Удаление заголовка, при необходимости, 0 - не удалять, 2 - 2 удалить байта (тип+длина) из значения DHCP-опции.
# При удалении поля position для agentRemoteId, vlanId, interfaceId нужно уменьшить на тоже кол-во байт
#dhcp.option82.removeHeader=0
#dhcp.option82.removeHeader=2
# позиция agentRemoteId
dhcp.option82.agentRemoteId.type=0
dhcp.option82.agentRemoteId.code=2
dhcp.option82.agentRemoteId.position=0
dhcp.option82.agentRemoteId.length=6
# Код субопции 82, содержащей VLAN, позиция и длина в субопции
dhcp.option82.vlanId.code=1
dhcp.option82.vlanId.position=3
dhcp.option82.vlanId.length=3
# Код субопции 82, содержащей интерфейс, позиция и длина в субопции
dhcp.option82.interfaceId.code=1
dhcp.option82.interfaceId.position=6
dhcp.option82.interfaceId.length=2
#настройки DHCP-сервера
dhcp.option.serverIdentifier=0.0.0.0
dhcp.option.leaseTime=900
dhcp.net.option.10.1.0.0:255.255.240.0.gate=10.1.0.1
dhcp.net.option.10.1.0.0:255.255.240.0.dns=91.000.000.7
# Шаблон, по которому создается ключ для привязки RADIUS-сессии и DHCP-пакетов.
# $deviceId - устройство (обычно NAS и relay-агент, с которого пришел DHCP-запрос на биллинг)
# $remoteId - агенское устройство (обычно коммутатор, к которому подключен абонент), определенное по agentRemoteId
# $circuitId - в зависимости от типа поиска сервиса либо interfaceId, либо VLAN
# $mac - MAC-адрес
radius.key.pattern=$remoteId:$mac
dhcp.key.pattern=$remoteId:$mac