Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
dpi:update [2024/09/26 15:29] – внешнее изменение 127.0.0.1 | dpi:update [2025/07/01 08:52] (текущий) – elena.krasnobryzh |
---|
====== Список изменений и обновление СКАТ ====== | ====== Список изменений и обновление СКАТ ====== |
{{indexmenu_n>10}} | {{indexmenu_n>10}} |
| |
===== Инструкция по обновлению ===== | ===== Инструкция по обновлению ===== |
<note important>Начиная с версии 12.0, DPI устанавливается только на CentOS 8.x и [[veos:installation|VEOS]]!</note> | <note important>Начиная с версии 12.0, DPI устанавливается только на CentOS 8.x и [[veos:installation|VEOS]]!</note> |
<note tip>Клиентам, использующим функционал BRAS, при обновлении СКАТ на новую версию необходимо обратить внимание на изменения.</note> | <note tip>Клиентам, использующим функционал BRAS, при обновлении СКАТ на новую версию необходимо обратить внимание на изменения.</note> |
| |
===== Обновление платформы DPI до версии 13.0 Congo ===== | ===== Обновление СКАТ до версии 13.0 Congo ===== |
| |
13.0 Congo ((Колыбель человечества: люди обитают здесь более 50 тыс лет)) | 13.0 Congo ((Колыбель человечества: люди обитают здесь более 50 тыс лет)) |
- Поддержка дополнительной разметки автономных систем ''mark1'', ''mark2'', ''mark3''. [[dpi:dpi_options:opt_priority:priority_config_as|Описание]] | - Поддержка дополнительной разметки автономных систем ''mark1'', ''mark2'', ''mark3''. [[dpi:dpi_options:opt_priority:priority_config_as|Описание]] |
- Приоритет определения по SNI в кастомных сигнатурах для автономных систем, помеченных как ''mark1''. [[dpi:dpi_options:opt_priority:priority_config_as|Описание]] | - Приоритет определения по SNI в кастомных сигнатурах для автономных систем, помеченных как ''mark1''. [[dpi:dpi_options:opt_priority:priority_config_as|Описание]] |
- Приоритет более специфичных кастомных SNI сигнатур.\\ Пример: для хоста ''a.b.c.d'' при наличии сигнатур ''*.d'', ''*.c.d'' и ''*.b.c.d'' будет выбран протокол, определенный сигнатурой ''*.b.c.d'' :!: работает только для сигнатур с ''*''. [[dpi:dpi_components:dpiui:user_guide:vas_cloud_services:custom_protocols:protocols|Описание]] | - Приоритет более специфичных кастомных SNI сигнатур.\\ Пример: для хоста ''a.b.c.d'' при наличии сигнатур ''*.d'', ''*.c.d'' и ''*.b.c.d'' будет выбран протокол, определенный сигнатурой ''*.b.c.d'' :!: работает только для сигнатур с ''*''. [[dpi:dpi_components:dpiui:user_guide:vas_cloud_services:custom_protocols#протоколы|Описание]] |
- Поддержка жестких блокировок (несмотря на имя хоста/SNI) — задается в дополнительном поле в черном списке адресов, пример: ''1.1.1.1 443 hard''. [[dpi:dpi_options:opt_filtration:making_dictionary|Описание]] | - Поддержка жестких блокировок (несмотря на имя хоста/SNI) — задается в дополнительном поле в черном списке адресов, пример: ''1.1.1.1 443 hard''. [[dpi:dpi_options:opt_filtration:making_dictionary|Описание]] |
- Улучшено детектирование YOUTUBE, SIGNAL | - Улучшено детектирование YOUTUBE, SIGNAL |
- Добавлено логирование ошибки "no mbuf" при отправке LACP | - Добавлено логирование ошибки "no mbuf" при отправке LACP |
| |
| ====Изменения в версии 13.2==== |
| - [BRAS][PPPoE] Исправлено: пинг неактивного клиента запросами Echo |
| - Добавлено: поддержка профилей услуги 19 (Подмена DNS-ответов). Для услуги 19 возможно задавать AAAA-записи и указывать * для доменов.[[dpi:dpi_options:dns_substitution|Описание]] |
| - Исправлено: для профиля услуги 18 не требуется одновременно задавать DSCP и TBF. [[dpi:dpi_options:opt_shaping:shaping_session#создание_профиля_услуги|Описание]] |
| - Исправлено: приоритет IP:PORT перед IP и CIDR для кастомных определений протоколов. [[dpi:dpi_components:dpiui:user_guide:vas_cloud_services:custom_protocols|Описание]] |
| - Изменено: приоритет пользовательских протоколов выше облачных. [[dpi:dpi_components:dpiui:user_guide:vas_cloud_services:custom_protocols|Описание]] |
| - Исправлено: длина АААА записей в услуге 19 |
| - Добавлено: в параметр ''block_options'' маска 8 — не формировать RST-пакеты блокировки и переадресации для направления пакетов inet→subs. [[dpi:dpi_options:opt_filtration:filtration_settings#настройки_блокировки|Описание]] |
| - [DPI] Улучшено: анализ out-of-order пакетов (также появилась возможность задавать количество буферов для обработки out-of-order пакетов) и расшифровка фрагментированного QUIC. Также появилась возможность задавать количество буферов для обработки out-of-order пакетов, устранено исчерпание буферов для обработки out-of-order пакетов. [[dpi:dpi_options:opt_filtration:filtration_common|Описание]] |
| - [DPI] Исправлено: распознавание DOT |
| - [CTRL] Добавлено: новый формат для вывода полисинга. [[dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_json#второй_вариант|Описание]] <code bash>fdpi_ctrl list profile --policing --profile.name htb_6 --outformat=json2</code> |
| - [CTRL] Добавлено: загрузка профилей полисинга c новым форматом (где есть value и unit). [[dpi:dpi_options:opt_bandwidth_mgmt:bandwidth_json#второй_вариант|Описание]] |
| - [BRAS][IPv6] Добавлено: при получении от клиента DHCPv6 confirm и отсутствии сессии в БД BRAS отправляется ответ со статусом ''NotOnLink'' |
| - [FastPCRF][DHCPv6] Исправлено: ошибка, приводящая к закрытию и последующему открытию текущей IPv6 accounting сессии при обработке DHCPv6 запросов от клиента на продление аренды адреса |
| - [DPI] Добавлено: обновление ''asnum.bin'' из облака, параметр ''asnum_download'' аналогичен по набору значений ''[[dpi:dpi_options:opt_filtration:filtration_settings|federal_black_list]]''. [[dpi:dpi_options:opt_priority:priority_config_as|Описание]] |
| - Добавлено: параметр ''mem_ssl_savebl'' (холодный). Задает количество сохраняемых буферов для разбора ssl при перемешивании пакетов. [[dpi:dpi_components:platform:dpi_admin:mem_problems#mem_ssl_savebl|Описание]] |
| - Добавлено: статистика утилизации сохранения буферов парсинга ssl запросов. [[dpi:dpi_components:platform:dpi_admin:mem_problems#cтатистика_утилизации_сохранения_буферов_парсинга_ssl_запросов|Описание]] |
| - [BRAS][DHCPv6] Добавлена возможность извлекать option 37 и option 38 из клиентского пакета |
| - [Router][tap] Исправлено: инициализация статуса моста при старте fastDPI. TAP-девайс для сквозного LAG находится в состоянии Up, если хотя бы один порт в сквозном LAG находится в состоянии Up и его второй конец в мосту также в Up. Статус моста (Up/Down) вычислялся только при наступлении события link Up/Down, при старте fastDPI статус моста полагался равным Down. Данный патч инициализирует статус мостов (Up/Down) при старте роутера на основании текущего статуса портов. |
| - [BRAS] Исправлено: local interconnect разрешаем только если srcIP — известный нам абонент. Ранее не проверялось, что srcIP — известный нам абонент, что могло привести к подделке IP-адреса абонента и DDoS от имени этого поддельного IP других локальных абонентов с пометкой local interconnect. |
| - Добавлено: CLI-команда ''permit''. |
| - [CLI][Ping] Изменено: сообщение об ошибке, если subs IP не найден |
| - [CLI] Добавлено: В json-вывод команды ''dev xstat'' добавлен булевый признак ''on_stick'' |
| - [CLI] Изменено: json-вывод команды ''dev info'' для on-stick.\\ Для on-stick-девайса было:<code bash>"pci_address": "on-stick based on 82:00.3"</code>Теперь:<code bash> // адрес базового девайса |
| "pci_address": "82:00.3" |
| // признак on-stick |
| "on-stick": "true|false"</code> |
| - Удалены поддельные yandex sni из TELEGRAM_TLS |
| - Добавлен параметр ''mem_quic_ietf_savebl''. Задает количество буферов для разбора ''quic_ietf''-запросов, которые состоят из нескольких пакетов. Значение по умолчанию 15% от ''mem_ssl_parsers''. [[dpi:dpi_components:platform:dpi_admin:mem_problems#mem_quic_ietf_savebl|Описание]] |
| - [DPI] Добавлены протоколы <code bash> |
| "HLS VIDEO" 49298 |
| "ICMP TUNNEL" 49299 |
| "DNS TUNNEL" 49300 |
| "FORTICLIENT_VPN" 49301 |
| "CISCO_ANYCONNECT_VPN" 49302 |
| "SHADOWSOCKS_VPN" 49303 |
| "NOT_DNS" 49304 |
| </code> |
| - Добавлена возможность отправки DNS query по IPFIX |
| - [DPDK] Добавлены read-only движки: RSS и диспетчер на порт |
| - [BRAS][SHCV] Исправлен вызов SHCV до полного запуска пайплайна обработки пакетов. Это было возможно в многопортовых конфигурациях, когда время запуска пайплайна относительно велико. |
| - [DPDK] Добавлен вывод типа создаваемых mempool на старте fastDPI |
| - [Router] Добавлена статистика по TAP-девайсам. В вывод CLI-команды ''router vrf show'' добавлена статистика по TAP-девайсам - сколько пакетов/байт вычитано с TAP, сколько записано в порт с TAP, сколько передано в TAP, число событий и ошибок. |
| - [Router] Изменена отправка пакетов, вычитанных с TAP-девайса: выбранный slave-поток для записи закрепляется за TAP-интерфейсом на ближайшие 5 секунд, что должно значительно уменьшить реордеринг при большом трафике с TAP-интерфейса |
| - [DPI] Улучшено детектирование DNS TUNNEL, CISCO_ANYCONNECT_VPN, SHADOWSOCKS_VPN, DPITUNNEL, FORTICLIENT_VPN, SHADOWSOCKS_VPN |
| - Изменен log level для запросов от телеметрии на INFO независимо от результата запроса |
| - [fastPCRF][ACCT] Исправлена отправка Interim-Update при переключении на резервный RADIUS сервер |
| - [BRAS][CLI] Исправлено: абоненты, закрытые по SHCV, теперь не выводятся командой ''fdpi_cli subs prop show active'' |
| - [BRAS][Auth] Оптимизация подключения/отключения услуг |
| - [FastRadius] Разбор конфигурационного файла переведен на новый движок |
| - [BRAS][DHCP] Offer посылаем сперва на bcast 255.255.255.255 |
| - [BRAS][CLI] Исправлено: команда ''dhcp show stat vrf'' поддерживается только в режиме Radius proxy (в режиме DHCP Relay вызов этой команды приводил к падению) |
| - [DPI] Улучшено распознавание DNS Tunnel и Shadowsocks |
| - [Utils] Улучшены утилиты. ''checkproto'': если задать IP и SNI, будет выведен результат с учетом MARK1 и приоритета, ''ascheckip'': выводит DSCP и MARK1 |
| - [Utils] Добавлена поддержка в url2norm окончания имени хоста на '':'', что позволяет задать "любой порт" для HTTP |
| - [CLI] Исправлена команда ''dhcp disconnect'' |
| - [DPI] Исправлено: допускается смена протокола по CUSTOM SNI если ранее произошло распознавание по встроенной сигнатуре |
| - [DPI] Дополнительная проверка целостности файла при загрузке списка AS из облака |
| - [DPI] Исправлена загрузка черных и белых списков из облака |
| - [utils] Добавлена поддержка новых форматов в утилите обратной конвертации черных и белых списков bin2ip |
| - Исправлено возможное падение в корку |
| - Поддержка 128-ядерных процессоров. [[dpi:dpi_brief:dpi_requirements#рекомендуемые_требования|Описание]] |
| |
| ====Изменения в версии 13.3==== |
| |
| - [DPI] Добавлены протоколы:\\ <code bash> |
| BIGOTV 49305 |
| SAYHI_CALL 49306 |
| AZARLIVE 49307 |
| LINE_CALL 49308 |
| QQ_CALL 49309 |
| VYKE_CALL 49310 |
| VEEGO_STREAMS 49311 |
| BHABI_CAM 49312 |
| WEPARTY 49313 |
| </code> |
| - [DPI] Улучшено распознавание Viber |
| - [DPI] Уменьшено число ложных срабатываний для DPI TUNNEL |
| - [DPI] Увеличена глубина просмотра пакетов при поиске BIGOTV |
| - [DPI] Изменен протокол FACETIME |
| - [DPI] Изменено: если протокол определился по ip/sni/cname, то не происходит переопределение протокола по встроенным сигнатурам |
| - [DPI] Упорядочено соблюдение приоритетов протоколов, что позволяет избежать лишних переключений между протоколами в процессе анализа. |
| - [DPI] Исправлено: поиск одновременно ''*'' и '':'' в http доменах |
| - [DPI] Исправлено: удаление адресов в виртуальных каналах при reload |
| - [DPI] Исправлено: игнорирования drop при задании параметра ''smartdrop'' при ошибках разбора ssl |
| - [BRAS][PPP] Исправлено: учет опции ''bras_pppoe_trace_mac'' при сохранение DHCPv6-пакетов в pcap. Ранее учитывалась только опция ''bras_dhcp_trace_mac''. Теперь для DHCPv6-пакетов в PPPoE-туннеле учитывается также и ''bras_pppoe_trace_mac'' |
| - [DPI] Исправлены ошибки при назначении vchannel по IP/CIDR |
| - [DPI] Исправлено: блокировка по IP DNS, работающего через tcp |
| - [DPI][PCRF] Изменен уровень логгирования с INFO на WARNING для сообщений старта и остановки |
| - [DPI Utils] Исправлена ''checkproto'' для случая IP протокол Unknown |
| - [Utils] Исправлено: ''checkproto'' проверяет с учетом MARK1, задан ли номер порта, т.е. ''checkproto 8.8.8.8 443 www.google.com'' и ''checkproto 8.8.8.8 www.google.com'' могут вернуть разный результат |
| - [Utils] ''bin2as'' принимает любое количество входных файлов как аргументов |
| - [Utils] ''ascheckip'' принимает адреса для гупповой проверки со ''stdin'' |
| - [Utils] ''bgp2bin'' аналог ''as2bin'', но принимает только подсети /24 и крупнее, понимает формат диапазона IP1-IP2 как в записях ripe (выделяя из него подсети /24 и крупнее), последующие записи приоритетнее предыдущих, создает файл немного крупнее чем ''as2bin'', но в нем диапазоны подсетей не пересекаются (т.к. менее приоритетные записи отфильтрованы), что позволяет передать утилите на вход данные из нескольких источников в порядке приоритета |
| - [BRAS] Доработка L3-авторизации: |
| * Если приходит Reject на IP-адрес, привязанный к multi-bind логину, то сначала отвязываем этот IP от логина, а затем навешиваем услуги (белый список, полисинг) на IP. |
| * При успешной авторизации (Access-Accept): если IP не имеет логина, но при авторизации (успешной) пришел логин - надо отвязать все услуги от IP, прежде чем связывать IP с новым логином. |
| - [BRAS][PPP] Исправлено: разнородный dual-stack. Один адрес (IPv4 или IPv6) задан явно, для второго (IPv6 или IPv4) указан framed-pool. |
| - [BRAS][PPP] Исправлено: бродкастные пакеты теперь молча дропаем |
| - [PCRF] Добавлена поддержка записи в syslog. Новый параметр ''syslog_level'' в fastpcrf.conf — уровень записи сообщений из alert-лога в syslog. ''0'' — запись в syslog отключена (значение по умолчанию) |
| - Добавлено: горячий параметр ''smartdrop = 1'', если для прокола задан ''drop'', то он будет отложен, пока не будет разобран tls или ошибка разбора tls |
| - Исправлено: добавление http доменов с окончанием на '':'' (номер порта) |
| - Изменен путь загрузки ASNUM из VAS Cloud (cloud.vasexperts.ru) |
| - Блокировка по черному списку в GTP туннеле (при заданной настройке ''detect_gtp_tunnel'') |
| - Исправлено: блокировка https с опцией ''hard'' |
| - Поддержка reload для автономных систем IPv6 |
| - Начальная поддержка записи alert лога в syslog. Включается настройкой ''syslog_level=7'' (уровень, включительно до которого дублируются сообщения в syslog), по умолчанию не писать. Замечания: |
| - По умолчанию rsyslog при записи в текстовый лог заменяет символ табуляции и переводы строк на их коды. Чтобы это отключить можно создать файл ''/etc/rsyslog.d/fastdpi.conf'' с настройкой <code bash>global(parser.escapeControlCharactersOnReceive="off")</code> либо пользоваться утилитой ''journalctl''. Пример: <code bash>journalctl -t fastdpi -p 4 --since "1 hour ago" -o verbose --output-fields PRIORITY,MESSAGE</code> |
| - Можно перенаправить запись логов на удаленный сервер. Пример из ''/etc/rsyslog.conf'': |
| - на локальном сервере с fastdpi:<code bash>*.* action(type="omfwd" target="192.0.0.1" port="10514" protocol="tcp" |
| action.resumeRetryCount="100" |
| queue.type="linkedList" queue.size="10000")</code> |
| - на удаленном сервере:<code bash>input(type="imptcp" port="10514" |
| ruleset="writeRemoteData") |
| ruleset(name="writeRemoteData" |
| queue.type="fixedArray" |
| queue.size="250000" |
| queue.dequeueBatchSize="4096" |
| queue.workerThreads="4" |
| queue.workerThreadMinimumMessages="60000" |
| ) { |
| action(type="omfile" file="/var/log/fastdpi.log" |
| ioBufferSize="64k" flushOnTXEnd="off" |
| asyncWriting="on")</code> |
| |
| |