Распознавание ложных сессий EcoNAT Documentation
Система EcoSGE способна распознавать ложные абонентские сессии, замаскированные, например, под обращения к интернет-ресурсам с бесплатным доступом. Распознавание основано на сверке доменных имён и IP-адресов назначения абонентских сессий с таблицей соответствия доменных имён и IP-адресов интернет-ресурсов (далее – таблица соответствия). Для использования данной функции необходима связка подсистем DPI и BRAS: первая отвечает за формирование таблицы соответствия, а вторая, при соответствующих настройках, обращается к данной таблице для сверки доменных имён и IP-адресов назначения и принимает решение о действиях с сессиями. Данная функция работает только с сессиями HTTPS (TCP на порту 443).
Подсистема DPI может формировать таблицы соответствия двух типов: статическую и динамическую.
Статическая таблица формируется из загружаемого файла, который пользователь подготавливает самостоятельно. Для каждого доменного имени можно указать не более 16 адресов IPv4 и не более 16 адресов IPv6. Разделитель – пробел или табуляция. Пример содержимого файла:
site-ipv4-file.net 10.10.0.3 10.10.0.9
site-ipv6-file.net aa::3 aa::9
Время хранения записей в статической таблице не ограничено. Можно удалять записи специально предусмотренной командой (см. описание команд ниже), но добавление записей возможно только путём загрузки и обработки обновлённого файла.
Динамическая таблица формируется при анализе DNS-ответов. В один или несколько DPI-списков загружаются списки доменных имён тех ресурсов, обращения к которым необходимо контролировать. Подсистема DPI сверяет с загруженными списками доменное имя в каждом DNS-ответе и при обнаружении совпадения извлекает из DNS-ответа IP-адреса и TTL и добавляет в динамическую таблицу временную запись вида "прошло времени/TTL Доменное имя IP-адрес(а)", например 550/600 site-ipv4-memory.net 10.10.0.9 10.10.0.3. Отсчёт времени хранения записи ведётся от 0 до значения TTL. При повторном получении DNS-ответа с таким же доменным именем и набором IP-адресов таймер хранения записи перезапускается с 0 до значения TTL текущего DNS-ответа. Обрабатываемые типы ресурсных записей в DNS-ответах: A, AAAA, CNAME.
Настройка формирования таблиц соответствия производится в ветке system.dpi.dns_cache:
EcoSGE:system.dpi.dns_cache# ls
disable
download_url ""
update_schedule never
dpilists ( )
EcoSGE:system.dpi.dns_cache#
В таблице ниже дано описание параметров ветки system.dpi.dns_cache.
Параметр | Описание |
---|---|
enable | disable | Включение / выключение формирования таблиц соответствия |
download_url <URL> | URL загружаемого пользовательского файла для формирования статической таблицы соответствия |
update_schedule { interval <секунды> | never } | Периодичность загрузки (обновления) пользовательского файла: interval <секунды> – периодичность в секундах, never – никогда не обновлять |
dpilists ( ) | Номера DPI-списков, используемых для анализа DNS-ответов и формирования динамической таблицы соответствия |
В таблице ниже описаны команды для работы с загружаемым файлом, статической и динамической таблицами соответствия.
Команда | Действие |
---|---|
dpiload dnscache <URL> | Загрузка файла с указанного URL |
dpiload dnscache | Обновление статической таблицы соответствия данными из загруженного файла |
dpiview dnscache | Вывод содержимого файла |
dpierase dnscache | Удаление загруженного файла (при этом статическая таблица соответствия сохраняется) |
clear dnscache file <доменное имя> | Удаление записи для указанного доменного имени из статической таблицы соответствия |
clear dnscache memory <доменное имя> | Удаление записи для указанного доменного имени из динамической таблицы соответствия |
show dnscache file | include <string> | Вывод записей статической таблицы соответствия с фильтрацией по указанной подстроке |
show dnscache memory | include <string> | Вывод записей динамической таблицы соответствия с фильтрацией по указанной подстроке |
clear dnscache file | Очистка статической таблицы соответствия |
clear dnscache memory | Очистка динамической таблицы соответствия |
Для того чтобы BRAS проверял сессии по таблицам соответствия, в настройках сервиса необходимо задать dns_cache_check on. В первую очередь BRAS обращается к статической таблице.
Если IP-адрес назначения сессии для определённого доменного имени не соответствует записи в статической или динамической таблице, то BRAS рассматривает такую сессию как ложную и не применяет к ней сервис. При этом срабатывают счётчики:
- cr_dpi_dns_cache_fraud_sessions – количество распознанных ложных сессий;
- cr_dpi_dns_cache_fraud_packets – суммарное количество пакетов ложных сессий.