| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
| dpi:dpi_components:radius:radius_requirements [2025/08/29 09:18] – [Настройка TAP интерфейсов] elena.krasnobryzh | dpi:dpi_components:radius:radius_requirements [2025/11/06 07:57] (текущий) – [Рекомендуемая схема: Прием трафика RADIUS Accounting на выделенный Linux-интерфейс не связанный с FastDPI] atereschenko |
|---|
| FastRADIUS (Монитор событий RADIUS) предназначен для создания в DPI связки IP-LOGIN в сетях с динамической выдачей IP-адресов на основании RADIUS Accounting (Mapping IP-LOGIN). \\ | FastRADIUS (Монитор событий RADIUS) предназначен для создания в DPI связки IP-LOGIN в сетях с динамической выдачей IP-адресов на основании RADIUS Accounting (Mapping IP-LOGIN). \\ |
| FastRADIUS поддерживает в FastDPI следующие команды: \\ | FastRADIUS поддерживает в FastDPI следующие команды: \\ |
| - [[dpi:dpi_components:platform:subscriber_management:dpi_dynamicip|Поддержка абонентов с одиночным IPv4 адресом и IPv6 подсетью]] \\ Связывание IP-адреса с LOGIN:<code bash>fdpi_ctrl load --bind --user user_name:ip_адрес</code> Удаление связки IP <-> login: <code bash>fdpi_ctrl del --bind --login user_name</code> | - [[dpi:dpi_components:platform:subscriber_management:dpi_dynamicip|Поддержка абонентов с одиночным IPv4 адресом и IPv6 подсетью]] \\ Связывание IP-адреса с LOGIN при получении Accounting Start:<code bash>fdpi_ctrl load --bind --user user_name:ip_адрес</code> Удаление связки IP <-> login при получении Accounting Stop: <code bash>fdpi_ctrl del --bind --login user_name</code> |
| - [[dpi:dpi_components:platform:subscriber_management:dpi_ipmulti|]] \\ Связывание IP-адреса или блока IP-адресов с LOGIN: <code bash>fdpi_ctrl load --bind_multi --user user_name:ip_адрес_или_блок</code> Удаление одного из IP, связанных с LOGIN:<code bash>fdpi_ctrl del --bind_multi --ip ip_адрес</code> | - [[dpi:dpi_components:platform:subscriber_management:dpi_ipmulti|]] \\ Связывание IP-адреса или блока IP-адресов с LOGIN при получении Accounting Start: <code bash>fdpi_ctrl load --bind_multi --user user_name:ip_адрес_или_блок</code> Удаление одного из IP, связанных с LOGIN при получении Accounting Stop:<code bash>fdpi_ctrl del --bind_multi --ip ip_адрес</code> |
| |
| Также возможно назначение CG-NAT ([[dpi:opt_cgnat|11 услуги]]) по заданным параметрам. | Также возможно назначение CG-NAT ([[dpi:opt_cgnat|11 услуги]]) по заданным параметрам. |
| ====== Схемы работы ====== | ====== Схемы работы ====== |
| ===== Рекомендуемая схема: Прием трафика RADIUS Accounting на выделенный Linux-интерфейс не связанный с FastDPI ===== | ===== Рекомендуемая схема: Прием трафика RADIUS Accounting на выделенный Linux-интерфейс не связанный с FastDPI ===== |
| RADIUS Accounting передается на FastRADIUS на стандартный Linux-интерфейс, указанный в конфигурационном файле (''in_dev''), путем зеркалирования существующего RADIUS трафика, либо с использованием RADIUS proxy (например [[dpi:dpi_components:freeradius|FreeRADIUS]]). В данном случае FastRADIUS только принимает зеркало и никак не отвечает RADIUS серверу. | RADIUS Accounting передается на FastRADIUS на стандартный Linux-интерфейс, указанный в конфигурационном файле (''in_dev''), путем зеркалирования существующего RADIUS трафика, либо с использованием RADIUS proxy (например [[dpi:dpi_components:freeradius|FreeRADIUS]]). В данном случае FastRADIUS только принимает трафик и никак не отвечает RADIUS серверу. |
| Работа со стандартными интерфейсами Linux осуществляется с помощью ''libpcap''. | Работа со стандартными интерфейсами Linux осуществляется с помощью ''libpcap''. Поддерживается прием и обработка RADIUS трафика в виде unicast-потока, который отправляет коммутатор по ERSPAN. |
| |
| {{ :dpi:dpi_components:radius:recommended_scheme.png?nolink&600 |}} | {{ :dpi:dpi_components:radius:recommended_scheme.png?nolink&600 |}} |
| * ''0x10'' — битые TACACS+ пакеты | * ''0x10'' — битые TACACS+ пакеты |
| * ''0x20'' — все TACACS+ пакеты | * ''0x20'' — все TACACS+ пакеты |
| * ''rad_check_code_pdu=2:4'' — анализировать PDU с кодом 2 и 4 | * ''rad_check_code_pdu=2:4'' — анализировать PDU с кодом (2) Request и (4) Accept |
| * ''rad_check_acct_status_type=1:3'' — анализировать PDU со статусом 1 и 3 | * ''rad_check_acct_status_type=1:3'' — анализировать PDU со статусом (1) Start, (2) Stop, (3) Interim-Update. Вне зависимости от установленных параметров пакеты с типом 2 (accounting stop) всегда обрабатываются. В случае если нужно отключить обработку accounting stop пакетов (не будет выполняться команда del - удаление связок IP-login в DPI), то нужно использовать параметр ''radius_acct_status_check_type=1,3''. В нем можно задать как перечисление номеров типов через запятую, так и диапазоны через дефис. Пример: radius_acct_status_check_type=1,3-5 . В данном случае будут обрабатывать radius accounting пакеты со статусом 1, 3, 4 и 5. **rad_check_acct_status_type имеет более низкий приоритет обработки чем radius_acct_status_check_type.** |
| * ''mem_preset=1'' — инициализировать память при старте | * ''mem_preset=1'' — инициализировать память при старте |
| * ''fdpi_servers=127.0.0.1:29000,123.45.67.85:29000'' — список DPI серверов, на которые отправлять данные, где 29000 управляющий порт по умолчанию | * ''fdpi_servers=127.0.0.1:29000,123.45.67.85:29000'' — список DPI серверов, на которые отправлять данные, где 29000 управляющий порт по умолчанию |
| * ''64'' — связывать только для подсетей /64 | * ''64'' — связывать только для подсетей /64 |
| * ''-1'' — связывать для любых подсетей.\\ Подсеть берется из RADIUS-атрибута ''Delegated-IPv6-Prefix(123)'' | * ''-1'' — связывать для любых подсетей.\\ Подсеть берется из RADIUS-атрибута ''Delegated-IPv6-Prefix(123)'' |
| | |
| | Параметры ''bind_ipv6_address'' и ''bind_ipv6_subnet'' можно задать одновременно.\\ При наличии маски 128 в Framed-IPv6-Prefix, она не проверяется на ограничение по значению ''bind_ipv6_subnet''. |
| |
| Абонент идентифицируется RADIUS-атрибутом ''User-Name'' или ''Сalling-Station-ID'' (в зависимости от настройки ''login_replace'') | Абонент идентифицируется RADIUS-атрибутом ''User-Name'' или ''Сalling-Station-ID'' (в зависимости от настройки ''login_replace'') |