Интеграция с Radius-сервером
FastPCRF шлет Access-Request-запросы со следующими атрибутами:
User-Name = "94.158.56.38" User-Password = "VasExperts.FastDPI" Framed-IP-Address = 94.158.56.38 Acct-Session-Id = "001122334455667788" NAS-Port-Type = 5 (Virtual) NAS-Port = 0 NAS-Port-Id = "708" NAS-IP-Address = 192.168.0.40 Service-Type = 2 (Framed-User) VasExperts-Service-Type=0 Message-Authenticator = 0x655ad71144647dd842afd3b65b08d421
где:
User-Name
— IP-адрес пользователя в виде строки. Можно задать, что указывать в атрибуте User-Name, подробнее см. ниже.User-Password
— пароль. Для всех пользователей пароль один и тот же и задается conf-параметромradius_user_password
. Не следует рассматривать это поле как пароль пользователя, — это пароль системы.Framed-IP-Address
— IPv4-адрес пользователя.Calling-Station-Id
— srcMAC адрес пакета, инициировавшего запрос. Полезно для L2-провайдеров — в этом случае это MAC-адрес абонента.Acct-Session-Id
— идентификатор accounting-сессии.NAS-Port-Type
— задается значением conf-параметраradius_attr_nas_port_type
. Перечень допустимых значений определен RFC 2865. В данном примере значение равно 5 (Virtual).NAS-Port
— значение тега VLAN пакета абонента; данный атрибут добавляется только для VLAN-сетей.NAS-Port-Id
— значение тегов QinQ пакета абонента в формате "outerVLAN/innerVLAN", например, "34/123"; данный атрибут добавляется только для QinQ-сетей.NAS-IP-Address
илиNAS-Identifier
— IP-адрес или строковый идентификатор сервера fastDPI. Берется из настройкиfdpi_server
.Service-Type
— задается значением conf-параметраradius_attr_service_type
. Полный список значений данного атрибута приведен в RFC-2865. В данном примереService-Type=2 (Framed-User)
.VasExperts-Service-Type
(VSA vendor-id=43823, attr-id=6) — тип запроса авторизации: 0 — L3-авторизация, 1 — лизинг DHCP-адреса + авторизация, см. режим DHCP Radius proxy.Message-Authenticator
— вычисляемый атрибут, см. RFC-2869. Этот атрибут включается в Access-Request, если conf-параметрradius_msg_auth_attr=1
(рекомендованное значение).
IPv6
Запрос авторизации для IPv6 несколько отличается — вместо атрибута Framed-IP-Address в запросе присутствуют следующие атрибуты:
Framed-IPv6-Prefix
— префикс IPv6-подсети. Фактически, авторизация проводится не для конкретного IPv6-адреса, а для всех адресов с данным префиксом.Framed-IPv6-Address
— IPv6-адрес. По умолчанию в данном атрибуте указывается адрес префикса, например, для адреса 2001:1::1 значение атрибута будет 2001:1::. Но если задатьfastpcrf.conf
-параметруipv6_native_framed_address
значение 1, то значением атрибутаFramed-IPv6-Address
будет полный IPv6-адрес, в нашем примере - 2001:1::1. Следует помнить, что заданиеipv6_native_framed_address=1
не означает, что СКАТ будет авторизовать каждый IPv6-адрес, — нет, он по-прежнему будет рассматривать IPv6-авторизацию как авторизацию абонентских подсетей. Например, если идут пакеты от абонента 2001:1::1 и 2001:1::ab, то на авторизацию будет послан только один из этих адресов, а возвращенные параметры будут применены ко всем адресам подсети 2001:1::/64.
Значение атрибута User-Name
В качестве User-Name в запросе Access-Request может быть использован:
- логин абонента (не всегда известен СКАТ);
- IP-адрес абонента (известен всегда);
- Q-in-Q теги (для QinQ-сетей, "vlan-per-user").
В fastpcrf.conf
параметр radius_user_name_auth
задает значение атрибута User-Name
в порядке предпочтения:
login
- использовать логин абонента;ip
- использовать IP-адрес абонента;qinq
- использовать QinQ-тег в формате "outerVLAN.innerVLAN"; например, "101.205";mac
- использовать srcMAC из пакета. Для L2-провайдеров это MAC-адрес абонента.
Пример:
# В атрибут User-Name помещать QinQ-тег, если его нет - логин абонента, если его нет - IP-адрес radius_user_name_auth=qinq,login,ip
Значение по умолчанию: radius_user_name_auth=login,ip,qinq
В ответе Access-Accept или Access-Reject СКАТ ожидает получить истинный логин абонента в атрибуте VasExperts-UserName
или User-Name
.