Код:
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 217
Authenticator: {9F 14 6E 2D 2B 74 DC F2 77 72 37 84 57 F7 77 45}
Attributes:
User-Name=f8f082710b31:003a0107
NAS-Port-Id=2/1 vlan-id 200 clips 178905
NAS-Identifier=Redback-IPOE
User-Password=Redback
NAS-Port=553648328
Service-Type=5
Calling-Station-Id=b8a3861e10bf
NAS-Port-Type=5
Called-Station-Id=10.1.0.1
Platform-Type=4
UNKNOWN[2352-201]={01 0A 01 00 01}
Medium-Type=11
Agent-Remote-Id={F8 F0 82 71 0B 31}
UNKNOWN[2352-202]={3D 3D 07 01 B8 A3 86 1E 10 BF}
Agent-Circuit-Id={00 3A 01 07}
OS-Version=12.1.1.5
Mac-Addr=b8-a3-86-1e-10-bf
UNKNOWN[2352-125]={75 64 68 63 70 20 30 2E 39 2E 38}
NAS-Real-Port=553648328
UNKNOWN[3561--1]={02 08 F8 F0 82 71 0B 31}
UNKNOWN[3561--1]={01 06 00 3A 01 07}
Common options: {agentRemoteId={f8f082710b31}, macAddress=b8-a3-86-1e-10-bf, agentCircuitId={003a0107}, deviceState=1}
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] InetNas - Found agentDevice:8
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] InetNas - Search serv on deviceId=8; interfaceId=7
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] InetRadiusProcessor - [username=f8f082710b31:003a0107] InetServ not found (and is not card).
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] InetRadiusProcessor - [username=f8f082710b31:003a0107] Authenticated as inetServId:10
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] HourlyDataLogEntry - Create dataLog file: /usr/local/billing/BGInetAccess/data/radius/source_2/2014/2014-04/2014-04-21/log_2014$
04-21/14:31:27 INFO [rdsLstnr-p-7-t-1] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Reject
Identifier: 217
Authenticator: {86 B4 E1 E4 9F DB D0 C2 3F 2A 44 87 79 3D 9F 50}
Attributes:
Process time auth: 67
04-21/14:31:27 ERROR [rdsLstnr-p-7-t-1] RadiusListenerWorker -
java.lang.NullPointerException
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authorization(InetRadiusProcessor.java:738)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authenticationImpl(InetRadiusProcessor.java:608)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:469)
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:438)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:385)
at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:1)
at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:423)
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:225)
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.runWorker(ThreadPoolExecutor.java:1145)
Такая ошибка
Код:
# Порт для отправки PoD и CoA-запросов (по умолчанию - порт, заданный в параметрах устройства Хост/порт)
#radius.port=<порт устройства>
# При выдаче Access-Accept добавлять запись в базу.
# Hеобходимо, если используется Reject-To-Accept и по Start-пакету нельзя определить в каком состоянии соединение
connection.start.fromAccept=1
# Бывают ситуации, когда Start-пакет не дошел до Accounting-сервера. В этом случае, при
# 1 (значение по умолчанию) - сессия создастся от текущего момента,
# 2 - Accounting проверит, что время сессии из Update/Stop пакета не больше, чем значение connection.close.timeout и создаст сессию от ее начала, иначе,
# если время сессии больше чем connection.close.timeout, сессия создастся от текущего момента,
# 0 - сессия без Start-пакета создана не будет.
#connection.start.fromUpdate=1
# При создании сессии по Update-пакету нужно ли игнорировать отсутствие IP-адреса сессии (Framed-Ip-Address). По умолчанию сессия
# по Update-пакету без адреса не создается (0).
#connection.start.fromUpdate.ignoreFramedIpLack=0
# Таймаут перевода соединения в статус suspended при остутствии радиус пакетов
connection.suspend.timeout=900
# Таймаут закрытия соединения при остутствии радиус пакетов (не складывается с connection.suspend.timeout)
connection.close.timeout=900
# При закрытии соединения по таймауту, 0 (по умолчанию) - просто закрыть,
# 1 - попытаться сбросить также на NAS'е (вызвать connectionClose у обработчика активации сервисов)
#connection.close.timeout.forceClose=1
# Коды ошибок, при которых отвечать Access-Accept в состоянии disable (rejectToAccept)
radius.disable.accessCodes= 1,2,10,11,12,40,44
# Какие адреса выдавать при ответе Access-Accept в состоянии disable:
# 0 (по умолчанию) - из radius.disable.ipCategories, 1 - так же, как если бы не было ошибки (в том числе привязанные к сервису в договоре)
radius.disable.mode=1
# Id фиктивного сервиса, к которому будут привязываться сессии, по которым нормальный сервис не был найден (код ошибки: 1, логин не найден).
# Необходим, если в radius.disable.accessCodes присутствует код 1
radius.disable.servId=10
# Вендор атрибута, где хранится MAC-адрес
radius.macAddress.vendor=2352
# Код атрибута, где хранится MAC-адрес
radius.macAddress.type=145
# Префикс атрибута (если есть), где хранится MAC-адрес. Например, для cisco avpair
#radius.macAddress.prefix=client-mac-address=
# Режим поиска сервиса: 0 (по умолчанию) - по логину, 1 - по интерфейсу на устройстве (в предобработке должны быть
# проставлены опции AGENT_REMOTE_ID и AGENT_CIRCUIT_ID или INTERFACE_ID), 2 - по VLAN на устройстве (в предобработке
# должны быть проставлены опции AGENT_REMOTE_ID и AGENT_CIRCUIT_ID или VLAN_ID), 4 - по VLAN на устройстве или
# дочернем устройстве (в предобработке должны быть проставлены опции AGENT_REMOTE_ID и AGENT_CIRCUIT_ID или VLAN_ID),
# 5 - по MAC-адресу на устройстве (в предобработке должна быть проставлена опция MAC_ADDRESS), 6 - по MAC-адресу на
# устройстве или дочернем устройстве (в предобработке должна быть проставлена опция MAC_ADDRESS).
radius.servSearchMode=1
# Нужно ли проверять пароль: 0 - нет, 1 (по умолчанию) - да.
radius.password.verification=0
# Проверка на повторную аутентификацию при Access-Request. Бывает нужна в случаях, когда NAS сбрасывает (теряет) сессию, но
# Stop-пакет не присылает и клиент пытается подключиться повторно, но у него стоит ограничение на максимум одну сессию. При совпадении
# callingStationId с одной из активных сессий и установленным параметром: 1 - осуществляется попытка закрытия старой сессии (connectionClose),
# 2 - попытка закрытия сессии (connectionClose) и завершение ее в базе, не дожидаясь стоп пакета, 3 - завершение в базе.
#radius.connection.checkDuplicate=808
# Нужно ли убирать домен перед поиском сервиса по логину из поля User-Name. По умолчанию - да (1).
# Следует отключить, если при посылке CoA и PoD пакетов NAS'у необходим атрибут User-Name.
#radius.username.removeDomain=1
# Нужно ли убирать пробелы из поля User-Name перед поиском логина. По умолчанию - нет (0).
# Следует отключить, если при посылке CoA и PoD пакетов NAS'у необходим атрибут User-Name.
#radius.username.removeWhitespace=0
# Должен ли поиск по логину идти без учета регистра. По умолчанию - нет (0).
#radius.username.ignoreCase=0
# Шаблон вывода ошибки в мониторе с использованием атрибутов из RADIUS-пакета
#radius.accessError.infoPattern=LOGIN:$User-Name
# Атрибуты, которые передаются для всех сессий.
# 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=Context-Name=IPOE;HTTP-Redirect-Profile-Name=NOAUTH;Forward-Policy=in:HTTP-REDIRECT;Acct-Interim-Interval=900
# Наборы атрибутов для разных опций. В данном случае указываются разные скорости доступа
#option.1.attributes=Context-Name=IPOE;Service-Name:1=RSE-SVC-EXT;Service-Options:1=1;Service-Parameter:1=RATE=10240 BURST=1966080 BURST-EX=3932160
option.2.attributes=Context-Name=IPOE;Service-Name:1=RSE-SVC-EXT;Service-Options:1=1;Service-Parameter:1=RATE=20480 BURST=3932160 BURST-EX=7864320
#option.3.attributes=Service-Name:1=RSE-SVC-EXT;Service-Options:1=1;Service-Parameter:1=RATE=20480 BURST=3932160 BURST-EX=7864320
#option.4.attributes=Service-Name:1=RSE-SVC-EXT;Service-Options:1=1;Service-Parameter:1=RATE=20480 BURST=3932160 BURST-EX=7864320
#option.5.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=1
dhcp.ipCategories=1
dhcp.disable.ipCategories=1
#атрибуты, выдаваемые при rejectToAccept
# Атрибуты, выдаваемые при ответе Access-Accept в состоянии disable
radius.disable.attributes={@const.access.attributes};{@redirect.attributes}
#категории ip адресов из ресурсов, из которых будут выдаваться адреса для отключенных ("пул", указывается во вкладке "IP ресурсы")
radius.disable.ipCategories=1
#атрибуты, при наличии которых соединение должно считаться в состоянии DISABLE (т.е. с ограниченным доступом)
# Используемый для отключенных пул адресов и параметры http-редиректа.
radius.disable.pattern.attributes=HTTP-Redirect-Profile-Name=NOAUTH
#привязка кодов опций модуля к атрибутам
#данные атрибуты будут выдаваться в AccessAccept при удачной авторизации и при наличии активных опций в тарифе или сервисе
#radius.inetOption.1.attributes={@const.access.attributes};{@option.1.attributes}
radius.inetOption.2.attributes={@const.access.attributes};{@option.2.attributes}
# Параметры активации сервисов
# длина паузы, если возникла ошибка
#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=nas.radius.inetOption.
#sa.radius.connection.attributes=NAS-Port, Acct-Session-Id, User-Name, Framed-IP-Address, NAS-IP-Address, NAS-Identifier
# атрибуты CoA-запроса для прекращения доступа (используется при sa.radius.connection.withoutBreak=1)
#sa.radius.disable.attributes={@radius.disable.attributes}
# фиксированные атрибуты, добавляемые в запрос перед отправкой CoA
#sa.radius.coa.attributes=
# добавлять ли при отправке CoA-атрибуты реалма (для default - из radius.realm.default.attributes)
#sa.radius.realm.addAttributes=0
# фиксированные атрибуты, добавляемые в запрос перед отправкой PoD
#sa.radius.pod.attributes=
# Параметры извлечения опций из RADIUS-пакета
# игнорирование заголовка опций (длина)
radius.agent.option.removeHeader=0
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.-------
# Шаблон, по которому создается ключ для привязки RADIUS-сессии и DHCP-пакетов.
# $deviceId - устройство (обычно NAS и relay-агент, с которого пришел DHCP-запрос на биллинг)
# $remoteId - агенское устройство (обычно коммутатор, к которому подключен абонент), определенное по agentRemoteId
# $circuitId - в зависимости от типа поиска сервиса либо interfaceId, либо VLAN
# $mac - MAC-адрес
#radius.key.pattern=$deviceId:$remoteId:$circuitId:$mac
radius.key.pattern=$deviceId:$mac
# поиск по giaddr, агентское устройство будет найдено позднее
dhcp.deviceSearchMode=2
#dhcp.deviceSearchMode=0
dhcp.servSearchMode=1-2
dhcp.key.pattern=$deviceId:$mac
dhcp.connection.closeOnNew=1
dhcp.option82.removeHeader=0
dhcp.option82.agentRemoteId.code=2
dhcp.option82.agentRemoteId.type=0
dhcp.option82.agentRemoteId.position=0
dhcp.option82.agentRemoteId.length=6
Что ему надо ?