Содержание

Связывание IP-login (bind, bind_multi)

Управление услугами и полосой пропускания для абонентов с динамической выдачей IP-адресов осуществляется по условному имени (login), которое в командах управления задается через соответствующий параметр --login. Для поддержки в DPI функциональности связывания с login необходимо активировать UDR.

Удобство заключается в том, что профили услуг и полисинга назначаются на login и могут быть неизменны долгое время, хотя адрес абонента динамически меняется. При своевременном обновлении связок DPI имеет всегда актуальные правила на IP абонента и статистику.

DPI поддерживает связывание IP-login двух типов:

Важным отличием семантики bind от bind_multi является:

  1. load --bind замещает ранее назначенный абоненту адрес, в то время как load --bind_multi добавляет его
  2. load --bind автоматически забирает назначенный адрес у другого абонента
  3. load --bind экономнее расходует размер БД

В случае, если динамическая выдача IP-адресов осуществляется RADIUS-сервером, рекомендуется использовать FastRADIUS (Монитор событий RADIUS. RADIUS Mapping), который автоматически будет передавать на DPI информацию о выданных и освобожденных IP-адресах. В этом случае в качестве login используется атрибут User-Name в запросах RADIUS. Для интеграции с другими платформами необходима поддержка выполнения пользовательских скриптов по событиям выдачи и освобождения адреса (например, такая возможность присутствует в штатном DHCP сервере Linux).

Команды управления одиночной связкой (single)

Связывание IP адреса с login:

fdpi_ctrl load --bind --user имя_абонента:ip_адрес

Создание двух разных одиночных связок:

fdpi_ctrl load --bind --user test_ipv4:191.168.1.1
fdpi_ctrl load --bind --user test_ipv6:2001:470:e5bf:dead::0/64

Замещение связанного IP для login test_ipv4:

fdpi_ctrl load --bind --user test_ipv4:191.168.1.2

Удаление связки IP ↔ login:

fdpi_ctrl del --bind --login test_ipv6

Просмотр связанного IP-абонента:

fdpi_ctrl list --bind --login test_ipv4

Просмотр всех абонентов со связанным IP

fdpi_ctrl list all --bind

Команды управления множественной связкой (multi)

IP-адреса можно выделять абоненту поштучно или блоками:

192.168.0.1                      одиночный IPv4 адрес
192.168.0.1-192.168.0.5          интервал (включает границы)
192.168.0.0/30                   CIDR
192.168.0.1,192.168.0.3          список
2001:db8:2000:1200::/64		 IPv6 подсеть

Связывание IP-адресов с одним login (каждая команда только добавляет IP к login, при наличии IP в bind_multi повторное назначение не явняется ошибкой):

fdpi_ctrl load --bind_multi --user test:192.168.0.1
fdpi_ctrl load --bind_multi --user test:192.168.0.1-192.168.0.5
fdpi_ctrl load --bind_multi --user test:192.168.0.0/30
fdpi_ctrl load --bind_multi --user test:192.168.0.1,192.168.0.3
fdpi_ctrl load --bind_multi --user test:2001:db8:2000:1200::/64

Удаление всех IP, связанных с login:

fdpi_ctrl del --bind_multi --login test

Удаление одного из IP, связанных с login:

fdpi_ctrl del --bind_multi --ip 192.168.0.1

Просмотр всех IP абонента с несколькими IP:

fdpi_ctrl list --bind_multi --login test

Просмотр всех абонентов с несколькими IP:

fdpi_ctrl list all --bind_multi