Схема включения
Рассмотрим типовую схему включения абонентов BRAS и возможные проблемы при настройке
Для каждого абонента на BRAS создается сессия для абонента (session id) и его сервисов (service id), номера сессии уникальны. Номер session id можно использовать для поиска информации в логах. Вывести список активных сессий и сервисов можно командами
show subscriber-control sessions status
BRAS2# show subscriber-control sessions status
Session id User name IP address MAC address Interface Domain
-------------------- --------------- --------------- ----------------- ------------------ ---------------
576460752303423705 79123456789 192.168.244.21 14:58:d0:c5:2a:36 gi1/0/1.2001 ssid01.ru54.root
и
BRAS2# show subscriber-control services status
Service id Session id Service name User name Quota volume Quota time
(Bytes) (Seconds)
-------------------- -------------------- --------------- --------------- -------------- --------------
612489549322387457 576460752303423705 free 79123456789 -- --
Просмотреть список сервисов для определенной сессии можно командой
show subscriber-control services status session-id 576460752303423705
Отсутствие сетевых настроек у абонента
Абонент, подключаясь к точке доступа, высылает DHCP Discover, который передается через L2 сеть доступа оператора на ESR/BRAS. ESR, выполняющий функцию DHCP-relay, перенаправляет запрос на DHCP сервер, который выдает адрес клиенту на основании данных поля giaddr field. В качестве GW указывается адрес ESR. Считаем что DHCP сервер настроен правильно. До прохождения авторизации у абонента должны быть разрешены DHCP и DNS запросы, нужно проверить список доступа в настройках ESR: subscriber-control->bypass-traffic-acl DHCP. Пример списка разрешающего прохождение DHCP и DNS запросов:
ip access-list extended DHCP
rule 10
action permit
match protocol udp
match source-address any
match destination-address any
match source-port 68
match destination-port 67
enable
exit
rule 11
action permit
match protocol udp
match source-address any
match destination-address any
match source-port any
match destination-port 53
enable
exit
exit
Не открывается портал
В этом разделе будут рассмотрены случаи, когда в браузере есть редирект на портал, но страница не отображается или попадаем на страницу с облачкамиПроверка dns запросов с клиента.
Редирект на портал происходит при http(s) запросе в браузере абонента. Если редиректа при запросе URL по dns имени нет, можно проверить запрос по ip адресу, например http://1.1.1.2, если портал открылся, нужно проверить прохождение dns запросов на клиенте, например выполнив команду
C:\Users\Администратор>nslookup eltex.nsk.ru
server google-public-dns-a.google.com
Address: 8.8.8.8
Не заслуживающий доверия ответ:
name: eltex.nsk.ru
Address: 62.109.0.175
Если dns запросы не проходят, нужно проверить сетевые настройки на вышестоящем маршрутизаторе, например наличие маршрута в сторону сети абонентов.
Проверка логов eltex-portal
Лог находится в /var/log/eltex-portal/. Рассмотрим файл /var/log/eltex-portal/error_ep.txt.
Если в логе
2017-05-30T12:53:35,634 [http-8080-8] ERROR Kernel ParseRequestInterceptor.preHandle(line:72). Failed to parse request
org.eltex.portal.exception.EltexException: Incorrect domain: 'null'
Нужно проверить, активацию настройки "Взаимодействие с BRAS" в Конструкторе Порталов
Если в логе
2017-05-30T14:14:01,343 [http-8080-2] ERROR Kernel LoadPortalInterceptor.preHandle(line:44). No such portal with name 'portal_test'
Нужно проверить, имя портала в Личном кабинете меню Настройках PCRF→Подсети L2, оно должно совпадать с именем портала в Конструкторе порталов
Если в логе
Caused by: java.net.ConnectException: Failed to connect to localhost/0:0:0:0:0:0:0:1:7070
Нужно проверить запущен ли сервис eltex-pcrf. Проверку можно произвести выполнив команду
root@Bras-srv:/home/tester# ps aux | grep pcrf
pcrf 24843 184 7.5 4104852 296360 ? Sl 15:37 0:07 /usr/bin/java -XX:+UseParallelGC -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/eltex-pcrf -Xms256m -Xmx512m -jar /usr/lib/eltex-pcrf/eltex-pcrf.jar
root 24952 0.0 0.0 12992 2192 pts/3 S+ 15:37 0:00 grep --color=auto pcrf
Если сервис запущен, то нужно проверить что в Конструкторе Порталов на странице системные настройки->Доступ к PCRF, указанные правильные данные для PCRF, значение по умолчанию хост: localhost, порт: 7070
Если в логе
2017-05-30T15:48:58,178 [http-8080-5] ERROR Kernel SessionOverInterceptor.isQuotaExpired(line:220). Failed to invoke BRAS session
org.eltex.portal.beans.EltexPortalBeansException: Timeout: No Response from RADIUS Server
Нужно проверить ключ для Radius и CoA сообщений, они должны совпадать. Проверить нужно в трех местах
- В конфигурации ESR, профиль для Radius и CoA
- В EMS, меню "Управление точками доступа на Radius сервере", параметр ключ
- В Конструкторе Порталов Системные настройки->Взаимодействие с BRAS
Если включить debug на ESR (debug→debug BRAS error), то в консоле ESR можно увидеть соотвествующую ошибку
2017-05-30T17:31:22+07:00 %BRAS-E-ERROR: <bras_receive_message_from_socket> ESR_rc_check_reply failed! (Maybe, is shared secret incorrect?) Dropping packet without response
Если в логе
2017-05-30T14:21:48,788 [http-8080-1] ERROR Kernel ParseRequestInterceptor.preHandle(line:72). Failed to parse request
org.eltex.portal.exception.EltexException: No data in PCRF response
Нужно просмотреть логи eltex-pcrf
Проверка логов eltex-pcrf
Лог находится в /var/log/eltex-pcrf/. Просмотрим файл /var/log/eltex-pcrf/service.log, сообщение с ошибкой:
io.vertx.core.eventbus.ReplyException: {"key":"PcrfErrorCode.subnetNotFound","message":"Подсеть не найдена по запросу '{\"location\":\"ssid01test\",\"nas_ip\":\"192.168.107.201\"}'","code":29,"args":[{"location":"ssid01test","nas_ip":"192.168.107.201"}]}
at io.vertx.core.eventbus.impl.MessageImpl.fail(MessageImpl.java:114)
at org.eltex.softwlc.pcrf.tools.radius.PcrfJsonTools.replyFail(PcrfJsonTools.java:281)
at org.eltex.softwlc.pcrf.vertx.dhcp.verticle.SubnetsVerticle.lambda$findSubnets$65(SubnetsVerticle.java:134)
at io.vertx.ext.mongo.impl.MongoClientImpl.lambda$null$29(MongoClientImpl.java:454)
at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:316)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:418)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:440)
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873)
at java.lang.Thread.run(Thread.java:745)
2017-05-30 14:39:55,071 ERROR [PcrfWebMonitoring:981] {
"key" : "PcrfErrorCode.subnetNotFound",
"message" : "Подсеть не найдена по запросу '{\"location\":\"ssid01test\",\"nas_ip\":\"192.168.107.201\"}'",
"code" : 29,
"args" : [ {
"location" : "ssid01test",
"nas_ip" : "192.168.107.201"
} ]
}
говорит о том что Подсеть l2 в Личном Кабинете настроена с ошибкой. Нужно проверить что location на интерфейсе куда включен абонент совпадает с location интерфейса в Подсетях l2, данный параметр регистрозависимый, т.е. ssid1 и SSID1, это разные значения, также нужно проверить корректность заполнения поля NAS IP.
Открывается чужой портал
Нужно проверить наименование портала Настройках PCRF→Подсети L2 в Личном Кабинете, выбор портал осуществляется совпадению NAS IP и location интерфейса
Ошибки при авторизации на портале
Не настроен тарифный план
Если после ввода пароль, попали на станицу с облачками,
с текстом ошибки
Tariffs are not available for user. Enable tariff plans in portal settings in constructor of portals.
Нужно в Конструкторе Порталов настроить тарифный план для данного портала
Неверный логин и/или пароль
Абонент прошел получил пароль, ввел, но после выбора тарифного плана получает ошибку неверный пароль и/или логин.
Одна из причин возникновения данной ошибки, разные ключи для CoA сообщений, нужно проверить настройку ключей Radius и CoA в трех места:
- В конфигурации ESR, профиль для Radius и CoA
- В EMS, меню "Управление точками доступа на Radius сервере", параметр ключ
В Конструкторе Порталов Системные настройки->Взаимодействие с BRAS
Не работает mac авторизация
После получения первого ip пакета от абонента, BRAS запрашивает у PCRF параметры шейпера для данного абонента и пытается провести mac авторизацию. Для успешной mac авторизации в "Настройках PCRF->Подсети L2" в Личном Кабинете должна быть настроена корректная запись. Проверить можно так, узнаем имя l2 интерфейса к которому подключен абонент:show subscriber-control sessions status
Session id User name IP address MAC address Interface Domain
-------------------- --------------- --------------- ----------------- ------------------ ---------------
576460752303423750 -- 192.168.244.21 14:58:d0:c5:2a:36 gi1/0/1.2001 --Проверяем настройку l2 подсети в Личном Кабинете, а именно, NAS IP должен совпадать с адресов ESR, location интерфейса должен совпадать с именем интерфейса к которому подключен абонент, Service домен, должен совпадать с сервисным доменом абонента, подсеть с наименованием vlan2001. Сервисный домен задается в l2 подсети ks которая описывает какой портал будет отображен абоненту.