
Набор инструментов с открытым исходным кодом для глубокого анализа пакетов
nDPI® — это библиотека с открытым исходным кодом под лицензией LGPLv3 для глубокой проверки пакетов.
Общий FAQ о nDPI доступен здесь
Для компиляции этого проекта выполните
Если вы получаете ошибки при компиляции croaring.c, попробуйте:
Для компиляции библиотеки без инструментов или тестов:
Поддерживаются сборки вне дерева исходников:
Для запуска тестов дополнительно выполните:
или запустите всё командой: make check
Обратите внимание, что (минимальные) предварительные требования для компиляции включают:
В системах Debian/Ubuntu выполните:
В Arch Linux:
В FreeBSD:
Не забудьте использовать gmake, а не make в FreeBSD
В MacOS:
В Windows:
Поддерживаются три способа сборки nDPI:
Mingw-w64
Visual Studio (см. windows/nDPI.sln)
Примечание: Все версии Windows требуют npcap с включенным режимом совместимости WinPcap.
Используйте встроенный веб-сервер python3 для просмотра документации:
Полная процедура добавления новых протоколов подробно:
src/include/ndpi_protocol_ids.hsrc/lib/protocols/src/include/ndpi_typedefs.h в ndpi_flow_tcp_struct (только для TCP), ndpi_flow_udp_struct (только для UDP) или ndpi_flow_struct (для обоих).src/include/ndpi_private.hsrc/include/ndpi_define.hndpi_init_protocol_defaults в: src/lib/ndpi_main.cPF_RING в ту же директорию, где вы клонировали : . Вы можете игнорировать ошибку Вы можете использовать nDPI для избирательной блокировки выбранного интернет-трафика, встроив его в приложение (помните, что nDPI — это всего лишь библиотека). Как ntopng, так и nProbe cento могут это делать.
Хотя мы делаем всё возможное для определения сетевых протоколов, мы не можем гарантировать, что наше программное обеспечение не содержит ошибок и на 100% точно определяет протоколы. Пожалуйста, убедитесь, что вы уважаете конфиденциальность пользователей и имеете надлежащее разрешение на прослушивание, захват и проверку сетевого трафика.
nDPI является зарегистрированным товарным знаком в США и ЕС.
nDPIgit clone https://github.com/ntop/PF_RING/ && cd PF_RING/userland/nbpf && ./configure && make/bin/sh: 1: ../lib/pfring_config: not foundnDPI выполните ./autogen.sh && ./configure --with-pcre2 (nBPF и PCRE2 обычно необязательны, но они нужны для запуска/обновления всех модульных тестов)makemake checkdoc/protocols.rstwindows/nDPI.vcxproj