{{indexmenu_n>3}} ======DHCP Dual Proxy====== ===== Общая информация ===== **DHCP Dual Proxy** (далее — Dual DHCP) — в этом режиме fastDPI работает как единая точка авторизации, запрашивая все параметры у RADIUS-сервера через fastPCRF одним запросом. Режим оптимизирован для работы Dual Stack (IPv4/IPv6) абонентов, но также полностью поддерживает и абонентов только с IPv4 или только с IPv6. Активация: bras_dhcp_mode=3 Режим Dual DHCP предназначен для сетей, где требуется упростить авторизацию и управление сессиями. В отличие от режима DHCP proxy (''[[dpi:bras_bng:bras_l2_vlan:bras_l2_vlan_dhcp:bras_l2_vlan_dhcp_proxy|bras_dhcp_mode=2]]''), для Dual Stack абонентов создается одна сессия аккаунтинга, а RADIUS-сервер возвращает адреса и настройки для обоих протоколов в одном ответе Access-Accept. Если в ответе авторизации получен только один тип адреса (только IPv4 или только IPv6), это означает, что абоненту доступен только этот протокол и абоненту будет возвращен DHCP NAK на попытки запроса DHCPv4 или DHCPv6. Режим использует существующие опции конфигурации от ''[[dpi:bras_bng:bras_l2_vlan:bras_l2_vlan_dhcp:bras_l2_vlan_dhcp_proxy|bras_dhcp_mode=2]]'', такие как ''bras_dhcp_check_secondary_keys'', ''bras_dhcp_ratelimit'', ''bras_dhcp_ratelimit_ban'' и ''bras_dhcp_qinq_only''. ===== Session-Timeout и Lease-Time ===== В режиме Dual DHCP четко разграничены время жизни сессии (''session-timeout'') и время аренды адреса (''lease-time''). ''Session-timeout'', задаваемый через атрибут RADIUS Session-Timeout, определяет период актуальности параметров авторизации и не может быть менее 600 секунд (по умолчанию равен 1 суткам). ''Lease-time'' задает, на какое время абоненту выдали IP-адрес, то есть через какое время абонент должен отправить DHCP-запрос на продление аренды. В режиме Dual DHCP критически важно, чтобы ''Session-timeout'' был как минимум в 4 раза больше ''Lease-time''. Если это условие не выполняется, то ''Lease-time'' автоматически устанавливается равным 1/4 от ''Session-timeout''. ''Lease-time'' определяется в следующем порядке приоритета: * атрибут ''DHCP-IP-Address-Lease-Time''; * атрибут ''VasExperts-DHCP-Option-Num'', задающий DHCP-опцию 51; * DHCP-опция 51, если адрес распределен из ''Framed-Pool''. Если ''Lease-time'' не задан ни одним из перечисленных способов, то он принимается равным 1/16 от ''Session-timeout''. Минимальные значения: * ''Session-timeout'' — 600 секунд; * ''Lease-time'' — 60 секунд. ===== Реавторизация ===== Абонент регулярно отправляет запросы обновления аренды (DHCP Renew). В течение действия ''session-timeout'' СКАТ автоматически их подтверждает без обращения к RADIUS-серверу. Для принудительной реавторизации используется CoA Disconnect: после его получения следующий DHCP Renew инициирует новый запрос авторизации на RADIUS. Если при этом абоненту назначается новый IP-адрес, СКАТ отправляет в ответ на Renew пакет NAK, что вызывает стандартную процедуру получения адреса без дополнительной авторизации: отправка абонентом DHCP-Discover → СКАТ отвечает DHCP-Offer (предложение нового адреса) → абонент DHCP-Request → СКАТ DHCP-ACK. При этом повторного запроса авторизации не будет — СКАТ уже получил все свойства абонента и в течение ''session-timeout'' сам отвечает на DHCP-запросы абонента. ===== Назначение IPv6-адресов ===== В ответе авторизации RADIUS выдает IPv6-адреса в атрибутах ''Framed-IPv6-Address'', ''Framed-IPv6-Prefix'', ''Delegated-IPv6-Prefix''. ''Delegated-IPv6-Prefix'' сообщается абоненту, а ''Framed-IPv6-Address'' и ''Framed-IPv6-Prefix'' являются взаимоисключающими — выдается либо единый адрес (''Framed-IPv6-Address''), либо целая подсеть (''Framed-IPv6-Prefix''). Адреса подсети СКАТ распределяет самостоятельно при запросах абонента следующим образом: * Если в ответе присутствует атрибут ''Framed-IPv6-Address'', абоненту назначается только один указанный IPv6-адрес. Если в ответе есть атрибут ''Framed-IPv6-Prefix'' — он игнорируется. Все последующие запросы абонента на получение дополнительных IPv6-адресов будут отклоняться. * Если в ответе присутствует атрибут ''Framed-IPv6-Prefix'' и отсутствует ''Framed-IPv6-Address'', СКАТ будет удовлетворять запросы абонента на выделение множественных адресов из этого пула. ===== Работа с пулами адресов ===== Для получения адресов СКАТ поддерживает использование пулов, задаваемых атрибутами ''Framed-Pool'' (IPv4) и ''Framed-IPv6-Pool'' (IPv6). Возможна смешанная конфигурация, например, явное указание IPv4-адреса через ''Framed-Address'' с одновременным получением IPv6-адреса из пула. Если в ответе RADIUS указаны и конкретный адрес, и пул, приоритет отдается адресу, а пул игнорируется. При работе с пулами fastPCRF запрашивает адреса у локального или внешних DHCP-серверов и должен соблюдать протокол аренды. Для этого в СКАТ различаются два времени аренды: ''lease-time'' для **абонента** и ''lease-time'' для **пула**, который задается DHCP-сервером и должен быть сопоставим с ''session-timeout''. Это позволяет реже обновлять аренду в пуле, избегая излишней нагрузки.