Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
dpi:bras_bng:bras_pppoe:bras_pppoe_radius:bras_pppoe_radius_rej [2023/10/13 12:15] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | dpi:bras_bng:bras_pppoe:bras_pppoe_radius:bras_pppoe_radius_rej [2024/09/26 15:29] (текущий) – внешнее изменение 127.0.0.1 |
---|
| ====== Формат Access-Reject для PPPoE-сетей ====== |
| {{indexmenu_n>3}} |
| |
| Возможно два типа "неавторизованности" абонента: |
| * абонент наш, но по какой-то причине (нулевой баланс, заблокирован и пр.) ему не может быть выдан полный спектр услуг |
| * абонент нам неизвестен - в этом случае абонента в сеть пускать нельзя |
| |
| В первом случае (наш абонент) абоненту нужно выдать IP-адрес (то есть PPPoE-сессия будет установлена, авторизация успешна), |
| но следует задать урезанные настройки - специальный профиль полисинга, услугу 5 (белый список + captive portal), - |
| чтобы абонент смог зайти в сеть и, например, пополнить свой баланс. |
| То есть Access-Reject должен содержать атрибут Framed-IP-Address для таких абонентов. |
| |
| Во втором случае (левый абонент, ошибка в параметрах авторизации) пакет Access-Reject не должен |
| содержать атрибута Framed-IP-Address, что трактуется как запрет входа в сеть: PPPoE-сессия не устанавливается, |
| авторизация не проходит. |
| |
| Access-Reject содержит следующие атрибуты: |
| * ''Framed-IP-Address'' - IP-адрес, выданный абоненту. Если абонент "левый", ему не надо выдавать IP-адрес, то есть атрибута Framed-IP-Address в Access-Reject быть не должно. |
| * ''Idle-Timeout'' - тайм-аут бездействия, в секундах. PPPoE-сессия будет закрыта, если в течение этого времени не было пакетов от/к абоненту. Если этот атрибут не задан, сессия считается бессрочной (пока явно не будет закрыта абонентом) |
| * ''Reply-Message'' - необязательный атрибут: сообщение, которое будет передано абоненту в PPP Auth-Ack/Auth-Nak ответе |
| * ''Session-Timeout'' - необязательный атрибут: max время жизни сессии, секунд. |
| * ''Acct-Interim-Interval'' - необязательный атрибут: период отправки промежуточных данных accounting'а, секунд (не может быть меньше 60). 0 - не отправлять промежуточный accounting. |
| * ''Class'' - необязательный атрибут: этот атрибут, если задан, будет отправляться "as is" во всех accounting-пакетах |
| |
| Для типа авторизации MS-CHAPv2 поддерживается также атрибут ''MS-CHAP-Error'' [RFC2548]. |
| |
| Поддерживаются следующие VSA-атрибуты Microsoft (vendor-id=311, RFC2548), все они не являются обязательными: |
| * ''MS-Primary-DNS-Server'' - IP-адрес primary DNS сервера |
| * ''MS-Secondary-DNS-Server'' - IP-адрес secondary DNS сервера |
| * ''MS-Primary-NBNS-Server'' - IP-адрес primary NetBios сервера |
| * ''MS-Secondary-NBNS-Server'' - IP-адрес secondary NetBios сервера |
| |
| VSA-атрибуты VASExperts (vendor-id=43823), не являются обязательными: |
| |
| [41] ''VASExperts-DHCP-DNS'' - IP-адрес DNS сервера. Может быть не более двух атрибутов VASExperts-DHCP-DNS: для |
| основного (primary) и резервного (secondary) сервера. |
| |
| Адреса DNS-серверов могут быть заданы через Microsoft VSA-атрибуты или VASExperts VSA-атрибут. |
| |
| Если абонент авторизован, то есть ему выдан IP-адрес, то в дополнение к вышеперечисленным атрибутам |
| **обязательно** следует задать в специальных VASExperts VSA-атрибутах профиль полисинга ''VasExperts-Policing-Profile'' |
| и профиль услуги 5 (белый список + Captive Portal) ''VasExperts-Service-Profile'', |
| подробнее см. [[dpi:bras_bng:radius_integration:radius_auth_server_integration:radius_auth_response:radius_auth_access_reject|L3 BRAS]]. |
| |
| ===== Зачем для "наших" абонентов нужен Access-Reject?.. ===== |
| Профиль полисинга и услуги, заданные в Access-Reject, применяются временно. |
| Если свойства абонента, пришедшие в атрибутах Access-Accept, запоминаются во внутренней базе данных (UDR) |
| fastDPI и применяются даже после перезагрузки, то свойства из Access-Reject применяются без сохранения в UDR. |
| То есть при перезагрузке fastDPI восстановятся те свойства абонента, которые пришли последний |
| раз в Access-Accept, и fastDPI будет их применять до тех пор, пока не получит новые в ответ на Access-Request. |
| |