====== Пример BRAS L2 DHCP Relay Agent ====== {{indexmenu_n>2}} {{ dpi:qoe:use_cases:bras_l2_dhcp_radius_proxy.png?direct&600 |}} BRAS DHCP L2 означает, что СКАТ DPI выступает в качестве DHCP Relay и после успешного поднятия сессии авторизует абонента по выданному IP адресу. Дальше терминируется СКАТом и попадает на бордер. Для организации работы СКАТ в режиме BRAS L2 DHCP Radius Relay участвуют следующие элементы: - Клиент с типом доступа Q-in-Q - FastDPI - обработка трафика и применение политик - FastPCRF - проксирование запросов между fastDPI и Radius - Radius сервер - принимает запросы от fastPCRF и формирует ответы с заданными атрибутами - Router - отвечает за передачу пакетов в интернет и обратный маршрут, на текущий момент возможен сценарий со Static Route и сценарий с [[dpi:dpi_components:router|настройкой маршрутизации OSPF и BGP]] на СКАТ ===== Сценарий ===== ===== Настройка FastDPI ===== ==== Редактирование файла конфигурации DPI ==== Сперва необходимо раскомментировать (добавить) следующие строчки в файл конфигурации ///etc/dpi/fastdpi.conf// . #включение внутренней базы данных свойств пользователей udr=1 #включаем режим авторизации по IP enable_auth=1 #активирует режим L2 BRAS bras_enable=1 #"виртуальный" IP адрес DPI (должен быть уникальным в сети) bras_arp_ip=192.168.1.2 #"виртуальный" MAC адрес DPI (следует использовать рельный MAC адрес любого из DNA интерфейсов) bras_arp_mac=a0:36:9f:77:26:58 #IP адрес бордера bras_gateway_ip=192.168.1.1 #MAC адрес интерфейса, в который подключен DPI, на бордере bras_gateway_mac=c4:71:54:4b:e7:8a #данные сервера, где установлен Fastpcrf (если на том же, где и Fastdpi, не изменять) auth_servers=127.0.0.1%lo:29002 #включение режима DHCP Relay Agent bras_dhcp_mode=1 #192.168.10.2 – IP-адрес DHCP-сервера #veth0 – имя сетевого интерфейса, с которого производится связь c DHCP-сервером #67 – порт, значение по умолчанию: 68 #arp_proxy - лаг реагирования на ARP-запросы IP-адреса DHCP-сервера #alias_ip - алиас DHCP-сервера #reply_port - порт, на котором ждем ответы DHCP-сервера. bras_dhcp_server=192.168.10.2%veth0:67;arp_proxy=1;alias_ip=192.168.1.4;reply_port=67 #терминация vlan (в данном случае тэг будет вырезан) bras_vlan_terminate=1 #подмена MAC адресов bras_terminate_l2=1 #замыкание локального трафика bras_terminate_local=1 #включение accounting enable_acct=1 #статистика по биллингу абонента netflow=4 #тайм-аут отправки статистики netflow_timeout=60 Следует выставить **свои** значения для следующих параметров * bras_arp_ip * bras_arp_mac * bras_gateway_ip * bras_gateway_mac Если сессия успешно стартована, и режим L3-авторизации включен (enable_auth=1), fastDPI BRAS немедленно посылает Radius-запрос на авторизацию абонента, чтобы получить актуальный список подключенных услуг и профиль полисинга абонента. ===== Настройка FastPCRF ===== Необходимо настроить FastPCRF. Для этого редакитурем файл ///etc/dpi/fastpcrf.conf// . Находим строчку с параметрами RADIUS сервера и изменяем #secret123 - Radius секрет #192.168.1.10 - IP адрес Radius сервера #eth0 - интерфейс, **с которого** FastPCRF "общается" с Radius сервером #1812 - порт, на который FastPCRF отправляет запросы авторизации #acct_port - порт, на который FasPCRF отправляет Accouting radius_server=secret123@192.168.1.10%eth0:1812;acct_port=1813 ===== Настройка Radius ===== Настройка приводится в качестве **примера** на freeRADIUS 3 и может отличаться от конфигурации Вашего Radius сервера. ==== Словарь VasExperts ==== Сперва необходимо добавить VSA словарь * копируем словарь /usr/share/dpi/dictionary.vasexperts из дистрибутива fastpcrf в каталог $freeRadius/share/freeradius * Добавляем в главный словарь $freeRadius/share/freeradius/dictionary строку: $INCLUDE dictionary.vasexperts ==== Создание Radius клиента ==== Добавляем в raddb/clients.conf Radius-сервера следующие строки client fastdpi1 { ipaddr = 192.168.1.5 secret = secret123 require_message_authenticator = yes # add_cui = yes virtual_server = fastdpi-vs } ==== Создание виртуального сервера ==== Для создания конфигурации виртуального сервера копируем файл raddb/sites-available/default, входящий в поставку FreeRadius, в raddb/sites-enabled/fastdpi-vs и затем редактируем fastdpi-vs: * задаем имя виртуального сервера - меняем в начале файла строку server default на server fastdpi-vs * в секции listen для auth-запросов (type = auth) прописываем, на каком IP-адресе и каком порту слушать входящие запросы (заметим, это локальный адрес Radius-сервера): ipaddr = 192.168.1.10 port = 1812 interface = eth0 ==== Создание учетной записи для авторизации ==== Добавляем в файл ///etc/raddb/users// данные по абоненту (следует учесть, что FastPCRF по умолчанию в данном режиме использует в качестве логина MAC адрес источника, а в качестве пароля - VasExperts.FastDPI) 192.168.2.10 User-Password := "VasExperts.FastDPI" VasExperts-Policing-Profile = "10Mbps", В файл ///etc/raddb/users// также следует добавить две записи для FastPCRF VasExperts.FastDPI.unknownUser Cleartext-Password := "VasExperts.FastDPI" DEFAULT Cleartext-Password := "VasExperts.FastDPI" ===== Подключение тестового абонента ===== При подключении неизвестного абонента FastPCRF шлет Access-Request со следующим содержанием: User-Name = 192.168.2.10 User-Password = 0x372CC83FF66B8C8589C3BF18472DAEF6B0BB0723EC9DAEE188A08AA1EE6A050C Framed-IP-Address = 192.168.2.10 Acct-Session-Id = 0A02A8C00000000F Calling-Station-Id = 18:0f:76:01:05:19 NAS-Identifier = VasExperts.FastDPI Service-Type = [2] Framed VasExperts-Service-Type = 0 Message-Authenticator = 0x46A546AE34DCB0AEB9C24A9DFF1F0A02 Пример Access-Accept при успешной авторизации: VasExperts-Policing-Profile = 10Mbps VasExperts-User-Name = 192.168.2.10 ===== Диагностика ===== При внедрении L2 BRAS могут возникать различные ошибки, при которых абоненты не могут быть авторизованы и, соответственно, остаться без доступа к интернету. Ниже приведены Самые распрастраненные проблемы: ==== Нет запросов на авторизацию. ==== Проверить, запущен ли процесс fastpcrf. Корректно ли указан адрес Radius сервера. ==== Пингуется DPI, но до бордера пинг не доходит. ==== - Необходимо прописать статичный маршрут в сторону абонентов на бордере. Так как СКАТ, пока не умеет анонсировать абонентские подсети, которые обслуживает, соответственно, необходимо указать бордеру, куда маршрутизировать трафик. - В случае использования NAT для абонентов необходим аналогичный маршрут для подсетей, используемых в NAT. - Корректно ли заданы параметры **bras_gateway_ip** и **bras_gateway_mac** ==== Не отправляется статистика для Accounting. ==== - Проверить, разрешен ли в Firewall’e порт для приема статистики (по-умолчанию 1813) на Radius сервере. - Проверить, подключается ли для абонента услуга 9. - Проверить, включен ли accounting в настройках конфигурации DPI. - Проверить, корректное ли значение указано для параметра netflow. ==== Не доходят CoA до BRAS. ==== Проверить, разрешен ли в Firewall’e порт для приема CoA (по-умолчанию 3799) на сервере с FastPCRF.