FastDPI в режиме DHCP proxy
СКАТ, получив запрос DHCP-Discover от пользовательского оборудования, направляет его "как есть" в fastPCRF для обработки. В случае успешного выделения IP-адреса fastPCRF отвечает DHCP-Offer, попутно оповещая Radius-сервер о старте сессии Accounting Start.
Радиус-сервер может задать следующие атрибуты, влияющие на длительность сессии:
- Lease time - время лизинга IP-адреса. Задается значением DHCP-опции 51, например, установка opt51 в 3600 секунд задается в Access-Accept так:
VasExperts-DHCP-Option-Num="51:3600". Session-Timeout- длительность сессии в секундах. Здесь имеется ввиду длительность логической сессии, по сути никак не связанной с lease time.Idle-Timeout- интервал неактивности абонента в секундах. Если в течение этого времени у абонента нет трафика, accounting-сессия закрывается по причине неактивности. Заметим, чтоIdle-Tiemoutникак не влияет на доступ абонента в сеть: если сессия абонента была завершена по причинеIdle-Timeout, а потом абонент становится вновь активным в течениеSession-Timeout, стартует новая accounting-сессия.
Получив ответ на DHCP-Discovery, СКАТ в течение времени Session-Timeout отвечает сам на все последующие запросы DCHP-Request, тем самым разгружая Радиус. По истечении Session-Timeout СКАТ направит пришедший DHCP-Request на Радиус. При этом текущая accounting-сессия завершается (посылается Acct Stop), по Ack-ответу от Радиуса начинается новая accounting-сессия.
DHCP-Discovery всегда посылается на Радиус; с помощью опций rate limit можно ограничить число запросов DHCP-Discover от абонента.
По запросам DHCP-Release/DHCP-Decline fastDPI отмечает у себя во внутренней БД, что лизинг данного IP-адреса закончился и направляет оповещение Radius-серверу (через fastPCRF) о завершении сессии в виде Accounting Stop. После завершения сессии все пакеты от данного пользовательского IP-адреса дропаются.
СКАТ ждет от Радиус-сервера ответа в течение fastdpi.conf-параметра bras_dhcp_timeout (по умолчанию 7 секунд).
Также СКАТ мониторит длительность сессии Session-Timeout: если сессия устарела,
а пользователь не продлил лизинг (не прислал DHCP-Request), то сессия считается просроченной и все пакеты
от данного пользовательского IP-адреса дропаются.
DHCP-Inform
fastDPI также обрабатывает запросы DHCP-Inform. Напомним, что DHCP-Inform предназначен для оборудования со статически сконфигурированным неменяющимся IP-адресом, то есть оборудование априори знает свой IP-адрес. Фактически, это запрос "дай мне конфигурацию сети для указанного IP-адреса". Концептуально, fastDPI обрабатывает такие запросы так же, как и DHCP-Discover, - отправляет их на fastPCRF, который формирует Radius-запрос с немного другими параметрами, чтобы можно было отличить DHCP-Inform от DHCP-Discover.
Если в сети провайдера не используется DHCP-Inform, то следует сконфигурировать Radius-сервер таким образом, чтобы на DHCP-Inform он отвечал ошибкой - Access-Reject без указания атрибута Framed-IP-Address. Тогда на DHCP-Inform не будет сформировано никакого DHCP-ответа, что равносильно отказу (напомним, что согласно RFC-2131, ответом на DHCP-Inform может быть только подтверждение DHCP-Ack).
Была ли полезна эта информация?