Nota: Todas las versiones de Windows requieren npcap con el modo de compatibilidad WinPcap habilitado.
Cómo Construir la Documentación
pip install --upgrade pip
pip install -r doc/requirements.txt
make doc
Usa el servidor web python3 incorporado para ver la documentación:
make doc-view
Cómo Añadir un Nuevo Disector de Protocolo
El procedimiento completo de añadir nuevos protocolos en detalle:
Añade el nuevo protocolo junto con su ID único a: src/include/ndpi_protocol_ids.h
Crea un nuevo protocolo en: src/lib/protocols/
Las variables que se deben mantener durante la duración de todo el flujo (como variables de estado) deben colocarse en: src/include/ndpi_typedefs.h en ndpi_flow_tcp_struct (solo para TCP), ndpi_flow_udp_struct (solo para UDP) o ndpi_flow_struct (para ambos).
Añade una nueva entrada para la función de búsqueda del nuevo protocolo en: src/include/ndpi_private.h
Elige (no cambies nada) una máscara de bits de selección de: src/include/ndpi_define.h
Establece los puertos predeterminados del protocolo en ndpi_init_protocol_defaults en: src/lib/ndpi_main.c
Asegúrate de tener soporte nBPF, clonando PF_RING en el mismo directorio donde clonaste nDPI: git clone https://github.com/ntop/PF_RING/ && cd PF_RING/userland/nbpf && ./configure && make. Puedes ignorar el error /bin/sh: 1: ../lib/pfring_config: not found
Desde el directorio raíz de nDPI, ./autogen.sh && ./configure --with-pcre2 (nBPF y PCRE2 son generalmente opcionales, pero se necesitan para ejecutar/actualizar todas las pruebas unitarias)
make
make check
Actualiza la documentación, añadiendo este nuevo protocolo a doc/protocols.rst
Actualiza la configuración de Windows Visual Studio, añadiendo el nuevo archivo c en windows/nDPI.vcxproj
Cómo usar nDPI para Bloquear Tráfico Seleccionado
Puedes usar nDPI para bloquear selectivamente tráfico de Internet seleccionado incrustándolo en una aplicación (recuerda que nDPI es solo una biblioteca). Tanto ntopng como nProbe cento pueden hacer esto.
Si bien hacemos nuestro mejor esfuerzo para detectar protocolos de red, no podemos garantizar que nuestro software esté libre de errores y sea 100% preciso en la detección de protocolos. Asegúrate de respetar la privacidad de los usuarios y de tener la autorización adecuada para escuchar, capturar e inspeccionar el tráfico de red.