Команды fdpi_ctrl

Управление свойствами BRAS L2

FastDPI BRAS хранит в своей внутренней БД UDR дополнительные свойства IP-адреса абонента:

MAC-адрес

VLAN-теги

Кроме того, внутри fastDPI BRAS есть ещё один признак, который не сохраняется в UDR, а живет только в памяти, - состояние DHCP-сессии (см. Сессия пользователя).

При штатной работе BRAS запоминает значения этих свойств из DHCP трафика. Но может возникнуть ситуация, когда значения этих свойств не будут соответствовать действительности, - например, при перезагрузке fastDPI, при добавлении нового абонента, при изменении топологии сегмента сети (когда меняются значения VLAN-тегов) и пр. Во всех этих случаях может потребоваться ручная корректировка UDR, - эту возможность предоставляет утилита fdpi_ctrl.

Команда задания свойств IP-адреса:

fdpi_ctrl load --ip_prop --ip 10.20.30.40 --mac a0:b1:c2:d3:e4:f5 --vlan 509.23 --session_status=0

Эта команда задает для IP-адреса 10.20.30.40 свойства:

–mac a0:b1:c2:d3:e4:f5 MAC-адрес абонента

–vlan 509.23 значение VLAN-тегов (в данном случае QinQ). Для одинарного VLAN задается только одно число

–session_status=0 внутренний статус сессии:

-1 – неизвестный статус

0 – сессия активна

1 – сессия завершена

Здесь –ip_prop – это ключевое слово, говорящее команде load, что будут задаваться свойства IP-адреса. Можно задавать не все свойства сразу, а только те, которое необходимо изменить, например, изменение MAC-адреса, привязанного к IP-адресу, выглядит так:

fdpi_ctrl load --ip_prop --ip 10.20.30.40 --mac a0:b1:c2:d3:e4:f5

Команда просмотра свойств IP-адреса:

fdpi_ctrl list --ip_prop --ip 10.20.30.40

Удаление свойства (удаляется не полностью IP-адрес, а только его указанные свойства):

# Удаление MAC-адреса fdpi_ctrl del --ip_prop --ip 10.20.30.40 --mac # Удаление VLAN и MAC-адреса fdpi_ctrl del --ip_prop --ip 10.20.30.40 --mac --vlan # Удаление всех свойств fdpi_ctrl clear --ip_prop --ip 10.20.30.40

Задание шлюза:

# Адрес 10.45.89.1 будет восприниматься СКАТом как клиентский шлюз. fdpi_ctrl load --ip_prop --ip=10.45.89.1 --session_status=gateway

Если тип IP-адреса - шлюз (type=Gateway), то все прочие параметры - MAC, VLAN и другие - не имеют значения:

fdpi_ctrl list --ip_prop --ip=10.45.89.1 ================================ IP=10.45.89.1 subnet-mask=n/a MAC=n/a VLAN=n/a type=Gateway Gateway-status=undef last-activity=2018/06/25 11:55:28 iface_idx=0 --------------------------------- Result processing ip=10.45.89.1 : ------------------ 1/0/0

Начиная с версии СКАТ 7.5, поддерживаются команды массового изменения параметров:

# Замена VLAN для всех IP-адресов из подсети 10.20.30.0/24 fdpi_ctrl load --ip_prop --cidr 10.20.30.0/24 --vlan=456 # Замена VLAN для всех IP-адресов из диапазона 192.168.251.5...192.168.251.17 fdpi_ctrl load --ip_prop --ip_range 192.168.251.5-192.168.251.17 --vlan 709 # Удаление VLAN у всех IP-адресов из подсети 10.20.31.0/24 fdpi_ctrl del --ip_prop --cidr 10.20.31.0/24 --vlan # Удаление всех IP-адресов подсети 10.20.32.0/24 из UDR fdpi_ctrl clear --ip_prop --cidr 10.20.32.0/24

Замечание: массовая замена MAC-адресов невозможна, так как MAC-адрес - уникальны для каждого IP.

Ручное управление статусом авторизации

Иногда возникает необходимость в ручной установке/сбросе статуса авторизации абонента. Это возможно сделать с помощью утилиты fdpi_ctrl:

[СКАТ 8.4] Статусом авторизации также можно управлять используя CLI-команды.

Установка статуса авторизации "авторизован" (аналог Access-Accept):

fdpi_ctrl load --auth=1 --ip=192.168.10.1

Аналог для IPv6:

fdpi_ctrl load --auth=1 --ip=2001:dead::/64

Установка статуса авторизации "неавторизован" (аналог Access-Reject):

fdpi_ctrl load --auth=0 --ip=192.168.10.1

Аналог для IPv6:

fdpi_ctrl load --auth=0 --ip=2001:dead::/64

Просмотр текущего статуса авторизации абонента:

fdpi_ctrl list --auth --ip=192.168.10.1 fdpi_ctrl list --auth --ip=2001:dead::/64

Для сброса текущего статуса авторизации абонента служит команда:

fdpi_ctrl del --auth --ip=192.168.10.1 fdpi_ctrl del --auth --ip=2001:dead::/64

После сброса статуса первый же пакет от абонента приведет к запросу авторизации через Radius-сервер.

При установке статуса авторизации можно указать время (в секундах), в течение которого будет действовать данный статус:

# Установка статуса авторизации "авторизован" на 10 минут fdpi_ctrl load --auth=1 --ip=192.168.10.1 --timeout=600

По умолчанию время жизни авторизации задается параметром auth_expired_timeout.