{{indexmenu_n>14}} ====== Версия 13.0 Congo ====== 13.0 Congo ((Колыбель человечества: люди обитают здесь более 50 тыс лет)) Проверить текущую установленную версию можно командой: yum info fastdpi Откат на 12.4: yum downgrade fastdpi-12.4-0 fastpcrf-12.4-0 После обновления или смены версии требуется рестарт сервиса: service fastdpi restart :!: Если используются PCRF и/или Radius, их тоже надо рестартовать. Для рестарта PCRF предпочтителен следующий порядок: service fastdpi stop service fastpcrf restart service fastdpi start :!: Не проводите обновления ядра Linux. В новых версиях ядра может быть нарушена бинарная совместимость с Kernel ABI и сетевой драйвер после обновления не загрузится. Если вы все-таки произвели обновление, то на время решения проблемы настройте в загрузчике GRUB загрузку прежней версии ядра: в файле ''/etc/grub.conf'' установите параметр ''default=1''. Если при обновлении появляется сообщение, что обновление не найдено или возникают проблемы с зависимостями, то перед обновлением выполните команду: yum clean all ==== Изменения в версии 13.0 ==== ===DPI=== - Поддержка LAG/LACP в on-stick. [[dpi:dpi_components:platform:dpi_inst_spec:dpi_onstick|Описание]] - Переход на DPDK 23.11 - Изменено: для QUIC и QUIC_IETF: если не определили SNI — проверяем по AS - Изменено: при анализе STUN проверяется AS от Facebook — определяем FACEBOOK_VIDEO, а не WHATSAPP_VOICE - Задание RSS hash флагов для UDP и TCP - Изменено: определение протокола openvpn - Исправлено: обработка SIGHUP только если fastDPI полностью инициализирован. Возможно падение, если в процессе запуска fastDPI приходит SIGHUP - Запись trace/debug пакетов переведена на новый API - Добавлено: поддержка протокола wechat для UDP - Поддержка дополнительной разметки автономных систем ''mark1'', ''mark2'', ''mark3''. [[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#протоколы|Описание]] - Поддержка жестких блокировок (несмотря на имя хоста/SNI) — задается в дополнительном поле в черном списке адресов, пример: ''1.1.1.1 443 hard''. [[dpi:dpi_options:opt_filtration:making_dictionary|Описание]] - Улучшено детектирование YOUTUBE, SIGNAL - Добавлен протокол DPITUNNEL, в который включены аномалии трафика, обычно применяемые для обхода DPI - Обновление dpiutils - Новые протоколы VK_CDN_VIDEO, META_CHAT - Улучшение сигнатур протоколов FACEBOOK_VIDEO, META_CALLS - Исправлено имя протокола VK_CDN_VIDEO - Исправлено: декодирование SNI в QUIC IETF и возможность образования корки в исключительных случаях - Исправлено: очистка структур поиска при удалении CUSTOM протоколов - Добавлена возможность добавлять комментарии (#) и пустые линии во входных файлах для утилит [[dpi:dpi_options:opt_priority:priority_config#конвертация_файла|lst2dscp]], [[dpi:dpi_options:opt_shaping:shaping_session#настройка_полисинга_по_сессии|lst2tbf]] - Добавлены протоколы QUIC_UNKNOWN - QUIC без SNI и QUIC_UNKNOWN_MARKED - QUIC без SNI и AS с пометкой MARK2. [[dpi:dpi_options:opt_priority:priority_config_as|Описание]] - Исправлено: определение хар-к stun для TCP - Изменено: если достигли ограничения просмотра пакетов stun - устанавливаем этот протокол с учетом AS - Обновлены утилиты для поддержки новых протоколов - Улучшения в протоколах QUIC_UNKNOWN, QUIC_UNKNOWN_MARKED, SIGNAL, DpiTunnel - Определения встроенных протоколов по SNI/HOST вынесены в облако, поддерживается приоритет SNI/IP - Изменено: сравнение SNI производится без учета регистра - Добавлена сигнатура протокола LANTERN_WEAK - Улучшено распознавание протокола IMAP - Исправление в LPM при выборе канала по IP/CIDR - Добавлено: в формат записи в текстовый файл DNS - формат vchnl - номер виртуального канала. - Добавлено: в шаблон IPFIX передачи данных для DNS номер канала. [[dpi:dpi_options:opt_li:li_ipfix#dns|Описание]] - Исправлено: падение при трейсе DNS - Улучшено определение протокола VIBER_VSTREAMS - Исправлено: в процессе остановки fastDPI не принимаем и не обрабатываем никакие запросы по ctl - Добавлен протокол SSTP (49296) - Добавлен протокол ANYDESK (49297,54273) - Улучшено распознавание LANTERN ===BRAS=== - Добавлено: учет DHCP-пакетов от абонента в биллинговой статистике: абонентский CPE (то есть Wi-Fi роутер) без клиентов (например, ночью) — посылает только запросы на продление лицензии. Так как эти запросы перехватывались BRAS и не включались в аккаунтинг, происходило завершение сессии по idle timeout - Исправлено: действия при изменении QinQ/VLAN у абонента - Исправлено: ''framed-pool renew''\\ В некоторых случаях формировались некорректные DHCP-ответы. Добавлена трассировка в лог DHCP-пакетов для ''framed-pool renew'' - Исправлено: прием пакетов от relay. Ранее проверялось, что relay находится в сети fc::/7. Теперь эта проверка излишняя и удалена, — у relay может быть любой адрес. - Исправлено: разбор DHCPv6-опций от Радиуса - Добавлена команда ''subs prop show active''. Команда выводит дамп L2-свойств всех активных (не-expired) абонентов. [[dpi:bras_bng:cli:subs#subs_prop_show|Описание]] - Изменено: запрет вызова CLI-команд в процессе остановки - Исправлено: idle-timeout для сессии. Для PPPoE-сессий idle timeout должен браться из настройки ''bras_ppp_idle_timeout'', если не задан явно в ответе авторизации (атрибут Idle-Timeout). - Добавлена приоритетная переадресация с переводом DSCP. [[dpi:dpi_options:opt_priority:priority_settings#настройка_наследования_и_преобразования_dscp|Описание]] - Исправлено: добавление лишней опции 61 (Client-Id) в ответ fastDPI при распределении адреса из Framed-Pool - Исправлено: вывод в лог IP-адресов DHCP-серверов - Исправлено: включение услуг с профилями. Атрибут `VasExperts-Service-Profile` (имя профиля услуги, неявно включает услугу) имеет больший приоритет, чем `VasExperts-Enable-Service` (включение/выключение услуги без задания профиля). - Добавлена команда ''ping inet'' от имени абонентов через всю цепочку обработку BRAS/NAT/ROUTER. Подсказка - ''fdpi_cli ping inet ?''. [[dpi:bras_bng:cli:subs#subs_ping_inet|Описание]] - Исправлено: вызов деанонса IP-адреса абонента при acct idle. В опцию роутера ''router_subs_announce'' добавлен новый флаг: ''0x10000'' - деанонсировать L3-абонента при наступлении acct idle (закрытие acct-сесси по idle timeout). [[dpi:dpi_components:router#особенности_анонсирования_адресов|Описание]] - Добавлена поддержка задания профиля услуги 18 при авторизации. Включение услуги 18 в ответе Радиуса Access-Accept задается обычным для услуги с обязательным профилем образом (здесь ''serv18'' - имя профиля):VasExperts-Service-Profile = "18:serv18" - В команду ''subs prop show'' добавлен поиск по ''MAC'' и ''subs_id''. Результат поиска по ''MAC'' или ''subs_id'' может быть многозначным, - несколько разных записей для одного того же ''MAC''/''subs_id''. Результат команды ''subs prop show active'' изменен, что может быть критично при разборе json-выхлопа команды. [[dpi:bras_bng:cli:subs#subs_prop_show|Описание]] - Исправлено: установка флага link up/down для портов, не поддерживающих link up/down прерывания (например, af_packet) - Код возврата команды Uptime. CLI-команда ''uptime'' может использоваться для контроля полного запуска fastDPI: она возвращает ''result=0'' (Success) только тогда, когда fastDPI полностью проинициализирован и все рабочие потоки запущены. По получении ответа от fastDPI на команду ''fdpi_cli uptime'' сама утилита fdpi_cli проверяет результат выполнения и если ''result!=0'' — выставляет ненулевой код возврата. - Исправлено: при наличии VRF (service 254) в Access-Accept пакет неправомерно выводился в лог как ошибочный - Восстановление работы UDR после вызова команды с большим числом параметров ===NAT=== - Добавлена утилита ''checknat'' для проверки распределения белых адресов. [[dpi:dpi_components:utilities:management_utilities#checknat|Описание]] - Исправлено online изменение параметра ''nat_private_cidr'' ===Балансировщик=== - Добавлен режим L2 балансировщика трафика. Данная доработка позволяет использовать СКАТ как балансировщик трафика на основе IP-адресов, принадлежащих AS и определяемой как ''local'' в ''asnum.dscp''. [[dpi:load_balancer|Описание]] - Добавлен движок mqrx_lb_engine, который активируется при dpdk_engine=2. [[dpi:load_balancer#настройка_etc_dpi_fastdpiconf|Описание]] ===Router=== - Распределение mempool для emit-пакетов: не допускаем полного исчерпания пула, в пуле должно быть не менее 256 свободных элементов - Ошибка удаления маршрута ''errno=3'' (No record found) переведена в разряд TRACE, чтобы не засоряла лог - Исправлен порядок завершения компонентов роутера - Изменено: system error при очистке route tables. Очистка route tables (удаление всех записей, добавленных СКАТ) производится при стопе и старте fastDPI. В процессе очистки может возникнуть ошибка EBUSY, которая является фатальной для netlink-сокета, сокет должен быть закрыт. - Исправлено: TAP link down in LAG. Если порт входит в лаг, то TAP этого порта в состояние Link down нужно производить только тогда, когда ВСЕ порты LAG в down. - Исправлено: контроль за исчерпанием selfgen mempool - Оптимизация вычитывания данных с TAP - Исправлено LAG+On-stick: перевод TAP в состояние link down. TAP переводится в link down только тогда, когда все порты в LAG в состоянии down. Если же есть хотя бы один порт в состоянии Up - TAP должен находится в состоянии Link Up. - Исправлено: отведение трафика в роутере для on-stick девайса в LAG. При формировании топологии VRF не учитывалось, что в LAG входит базовый (физический) девайс, а при описании роутера указывается on-stick (виртуальный) девайс. - Исправлено: вычитывание всех данных с TAP-девайса. При старте fastDPI были возможны ситуации, когда роутер еще не полностью инициализирован, а TAP уже мониторится, но не вычитывается. - Опция router_subs_announce сделана горячей (hot) - Исправлено: утечка mbuf при старте fastDPI ===SDS=== - Значение ''storage_tag'' устанавливается на основании приоритета по направлению или приоритета по протоколу ===Radius=== - Добавлена возможность работы со стандартными интерфейсами linux с помощью ''libpcap''. [[dpi:dpi_components:radius:radius_requirements#рекомендуемая_схемаприем_трафика_radius_accounting_на_выделенный_linux-интерфейс_не_связанный_с_fastdpi|Описание]] ====Изменения в версии 13.1==== Внимание! Обнаружена ошибка в версии 13.1. В PPPoE не происходит закрытие сессии при истечении ''idle_timeout''.\\ Исправление планируется в следующем релизе. ===DPI=== - Глобальный рефакторинг кода - отказ от поддержки ''pf_ring'' - Добавлено: услуга 19 - подмена DNS-ответов. [[dpi:dpi_options:dns_substitution|Описание]] - Изменено: минимальный размер PCAP файла до 100 MB. Ротация PCAP-файлов при reload [[dpi:dpi_options:opt_li:li_ctrl|Описание]] - Изменено: улучшена трассировка событий DROP - Исправлено: ошибочное появление сообщения уровня ERROR при некоторых запросах ''fdpi_ctrl'' - Исправлено: некорректный разбор TLS(SNI) в случае если задано несколько 'ALPN Protocol' - Изменено: механизм обновления списков соответствия AS и IP. [[dpi:dpi_options:opt_statistics:statistics_asn|Описание]] ===BRAS=== - Исправлено: контроль активности абонента с помощью unicast ARP Request. Ранее был broadcast ARP Request, что не оптимально для сети. [[dpi:bras_bng:bras_l2_options:subs_activity|Описание]] - Добавлено: SHCV (Subscriber Host Connectivity Verification) — контроль активности DHCP-абонента. Учтен сценарий для уже "закрытой" записи, чтобы не было повторного срабатывания SHCV и росте счетчика 'SHCV: session closed by inactivity'. [[dpi:bras_bng:bras_l2_options:subs_activity|Описание]] - Добавлено: ARP Proxy для известных маршрутов (только в режиме роутера), Данную возможность применяем только если инициатор ARP-запроса - известный нам абонент. В опцию ''bras_arp_proxy'' добавлен новый флаг - 0x0004. [[dpi:bras_bng:bras_l2_vlan:bras_l2_vlan_arp_proxy|Описание]] - Исправлено: help() для IPv6-адресов в команде ''subs prop show'' - Исправлено: ошибка разбора параметров команды ''subs prop del'', что приводило к невозможности удаления свойств по IP c ошибкой ERROR: Result code=9: No subscriber IP address - Добавлено: CLI-команда ''dhcp disconnect''. Это CLI-аналог CoA Disconnect. Режим выполнения дисконнекта задается опцией ''bras_dhcp_disconnect''. - ''dhcp disconnect all'' - дисконнект всех DHCP-сессий - ''dhcp disconnect [ mac=X | ip=X ]'' - дисконнект указанной сессии - Исправлено: отправка L3 reauth для L2-абонента заранее, не дожидаясь завершения session timeout - Добавлено: в CLI-команду ''dhcp show stat'' добавлено число закрытых по неактивности сессий (SHCV) - Исправлено: ошибка при перехвате и обработке ICMPv6-пакетов, при изменении ICMPv6-пакета в некоторых случаях не пересчитывалась контрольная сумма ===NAT=== - Изменено: трассировка в ''vdpi_new_flow_nat_ipv4'' выводится всегда - Исправлено: в зависимости от значения параметра ''nat_exclude_private'' проверяется дополнительно пара CHECK_AS_LOCAL или CHECK_AS_PEER для AS при local interconnect ===Router=== - Добавлено: ARP менеджмент. [[dpi:dpi_components:router#arp_менеджмент|Описание]] - Исправлено: выбор порта для записи в сквозном LAG. Если LAG проходит сквозь fastDPI, то при выборе порта для записи с TAP нужно учитывать не только состояние самого порта Link Up/Down, но и состояние Link Up/Down второго плеча моста для этого порта - Исправлено: анонсирование подсетей профиля NAT при добавлении - Добавлено: CLI-команда ''router vrf dump''. Команда выводит список VRF, заданных в системе, и свойства этих VRF - Исправлено: не учитывать term by AS при анонсе подсетей NAT. Режим ''term_by_AS'' относится к абонентам, а не к профилям NAT, поэтому его **не** нужно учитывать при анонсировании NAT-подсети - Исправлено: порядок перехвата пакетов из общего конвейера обработки - Исправлено: Увеличено число ''mbuf'' в ''selfgen mempool'', если включен роутер: если роутер disabled: ''mempool size=512 * число_slave_на_кластер'', если роутер enabled: ''mempool size=8 * 1024 * число_slave_на_кластер'' ===LAG=== - Исправлено: необнуление массива при построении нового списка активных портов. Ошибка приводит к переполнению массива и порчи памяти - Добавлено логирование ошибки "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#второй_вариант|Описание]] fdpi_ctrl list profile --policing --profile.name htb_6 --outformat=json2 - [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-девайса было:"pci_address": "on-stick based on 82:00.3"Теперь: // адрес базового девайса "pci_address": "82:00.3" // признак on-stick "on-stick": "true|false" - Удалены поддельные 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] Добавлены протоколы "HLS VIDEO" 49298 "ICMP TUNNEL" 49299 "DNS TUNNEL" 49300 "FORTICLIENT_VPN" 49301 "CISCO_ANYCONNECT_VPN" 49302 "SHADOWSOCKS_VPN" 49303 "NOT_DNS" 49304 - Добавлена возможность отправки 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] Добавлены протоколы:\\ BIGOTV 49305 SAYHI_CALL 49306 AZARLIVE 49307 LINE_CALL 49308 QQ_CALL 49309 VYKE_CALL 49310 VEEGO_STREAMS 49311 BHABI_CAM 49312 WEPARTY 49313 - [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'' с настройкой global(parser.escapeControlCharactersOnReceive="off") либо пользоваться утилитой ''journalctl''. Пример: journalctl -t fastdpi -p 4 --since "1 hour ago" -o verbose --output-fields PRIORITY,MESSAGE - Можно перенаправить запись логов на удаленный сервер. Пример из ''/etc/rsyslog.conf'': - на локальном сервере с fastdpi:*.* action(type="omfwd" target="192.0.0.1" port="10514" protocol="tcp" action.resumeRetryCount="100" queue.type="linkedList" queue.size="10000") - на удаленном сервере: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")