Абоненты не могут авторизоваться

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (2)

просмотр истории страницы
# Если предыдущие варианты не помогли, включите [radius debug|CarbonBilling:Настройки (в файле)] в настройках биллинга, снова попытайтесь автозизоваться, получив лог ошибки обратитесь в [техподдержку|CarbonBilling:Контакты]

h2. Сессия устанавливается, но сбрасывается биллингом: Idle-Timeout

Для диагностики проблемы необходимо обратиться к логу RADIUS и к аудиту подключений. Аудит подключений Вы можете посмотреть в карточке абонента, на вкладке "Аудит"
!Скрин2.png|border=1,width=800!
В этом случае, необходимо увеличить значение атрибута Idle-Timeout

h2. Дублирование запросов на авторизацию Error: Discarding duplicate request from client

Данная ошибка фиксируется в логе */app/asr_billing/var/log/radius/radius.log* и выглядит следующим образом
{code}
Mon Sep 28 10:00:36 2020 : Error: Request 5994 has been waiting in the processing queue for 5 seconds. Check that all databases are running properly!
Mon Sep 28 10:00:37 2020 : Error: Discarding duplicate request from client ib-bras-00 port 1645 - ID: 14 due to unfinished request 6008
Mon Sep 28 10:00:37 2020 : Error: Discarding duplicate request from client ib-bras-00 port 1645 - ID: 15 due to unfinished request 6009
Mon Sep 28 14:40:26 2020 : Error: rlm_sql_firebird. Fetch problem:'lock conflict on no wait transaction. deadlock. update conflicts with concurrent update. concurrent transaction number is 226490005. At procedure 'RAD6_CHECK' line: 1, col: 523'
Mon Sep 28 14:40:26 2020 : Error: CARBON rlm_sql_getvpdata: fetch_res=-1
{code}

Причиной возникновения ошибки является запрос от NAS на авторизацию абонента, ранее переданный в биллинг, но до текущего момента он не был обработан и ответ в NAS не поступал. Это обычно связано с тем, что биллинг не смог обработать запрос за нужное время, так как база данных была занята.
Для ее решения, необходимо:
1. Проверить нагрузку на сервере [по документации|CarbonBilling:Биллинг медленно работает].
2. Убедитесь, что если используете биллинг на виртуальной машине, то в момент возникновения ошибки не выполняются никакие "внешние" действия с ВМ (пример:бэкапирование)

h2. Попытка подключения с запрещенного адреса
Данная ошибка может возникать при типе авторизации *любая через RADIUS*
В логе Radius */app/asr_billing/var/log/radius/radius.log* при этом будут присутствовать записи:
{code}
Wed May 19 04:53:46 2021 : Auth: Login incorrect (rlm_chap: Clear text password not available): [testold/<CHAP-Password>] (from client 10.10.0.33 port 15761811 cli 10.0.19.152)
{code}

А в аудите подключений
!Скрин1.png|border=1,width=800!
ошибки вида
{code}
Попытка подключения с запрещенного адреса: 10.0.19.152
{code}

Данная ошибка возникает, когда у абонентов в настройках учетной записи с типом авторизации *любая через RADIUS* указан *Host IP (только для VPN)*. Для решения этой проблемы необходимо удалить адрес из поля *Host IP (только для VPN)*.
Массово очистить данное поле у абонентов, находящихся в группе с ID 1364 и её подгруппах, можно с помощью api-запроса:
{code}
sqlexec "set list on; select u.id from users u left join abonents a on a.id=u.abonent_id where a.id in (SELECT abonent_id FROM GLN_RECURSIVE_ABONENTS_GET(1364))" | awk ' {print $2} ' | sed '/^$/d' | while read line; do curl -XPOST -d 'method1=objects.get&arg1={"id":'$line'}&method2=set&arg2={"host_ip":""}&method3=save&arg3={}' http://169.254.80.82:8082/rest_api/v2/Users/ -D - ; done
{code}

h2. Массовые некорректные запросы на авторизацию
Количество запросов к radius серверу ограничено 30 запросами в секунду при постоянной нагрузке, и 60 запросов в секунду при пиках. При привышении лимита запросы авторизации будут отброшены. Это сделано, чтобы защитить БД от массовых запросов авторизации со сбойнго оборудования.
Найти сбойное клиентское оборудование можно по radius логу. Следующая команда выдаст список логинов и паролей, которые не были авторизованы, а также количество попыток авторизации.
{code:title=Команда}
fgrep 'Login incorrect' /app/asr_billing/var/log/radius/radius.log | grep -oE "\[.*\]" | sort | uniq -c
{code}
{code:title=Результат}
13578 [0002445/887799]
13568 [^^0002445/FFFFFFFFFFFFF]
3 [00596-00-00/618743509401]
{code}
Найдите устройства на своей сети используя таблицу сессий вашего НАС.