
Edita y reproduce el tráfico de red capturado a velocidades arbitrarias: una suite de herramientas pcap para *NIX y Windows.
Tcpreplay es un conjunto de utilidades con licencia [GPLv3] para UNIX (y Windows bajo [Cygwin]) para editar y reproducir tráfico de red previamente capturado por herramientas como [tcpdump] y [Wireshark]. Clasifica el tráfico como cliente o servidor, reescribe las cabeceras de Capa 2/3/4 y lo reproduce de vuelta en la red a través de switches, routers, firewalls, NIDS e IPS — desde un goteo hasta la velocidad máxima del cable. Tcpreplay admite modos de una y dos NIC, para probar tanto dispositivos de escucha como en línea.
Tcpreplay es utilizado por numerosos proveedores de firewall, IDS, IPS, NetFlow y otros fabricantes de redes, empresas, universidades, laboratorios y proyectos de código abierto. Si su organización utiliza Tcpreplay, háganos saber quién es usted y para qué lo usa, para que podamos seguir priorizando las funciones que importan.
Desde la versión 4.0, Tcpreplay también se orienta específicamente a las pruebas de dispositivos [IP Flow][flow]/[NetFlow]: temporización precisa de reproducción a alta velocidad e informes de resultados, estadísticas de Flujos Por Segundo (fps) y análisis de expiración de flujos para ajustar la configuración de tiempos de espera de un producto de flujos — hasta cientos de miles de flujos/seg, según los tamaños de flujo en el archivo pcap.
📖 La documentación completa está en https://tcpreplay.appneta.com — una guía de inicio, una página por herramienta, recetas prácticas, los conceptos detrás del conjunto, las páginas man y las preguntas frecuentes. Este README es el recorrido rápido; el sitio es la referencia.
tcpreplay-edit)
o aleatorizando direcciones IP (tcpreplay)tcpreplay normal suele quedarse en la Capa 2)Consulta el CHANGELOG para ver el historial completo de versiones.
Descarga el tarball de la última versión (también disponible en SourceForge), luego:
tar xf tcpreplay-*.tar.xz && cd tcpreplay-*
./configure && make && sudo make install
Un tarball de lanzamiento incluye parsers de CLI y páginas man pregenerados, por lo que esto no necesita nada más allá de un compilador de C y libpcap — consulta Compilación desde el código fuente a continuación solo si estás trabajando desde un checkout de git, o si quieres soporte para CMake, netmap, AF_XDP o io_uring.
Hay instrucciones más detalladas específicas para cada plataforma en el archivo INSTALL
incluido en el tarball (mismo contenido que docs/INSTALL aquí).
Compilar desde un checkout de git requiere python3 y asciidoctor (cualquiera de los
sistemas de compilación) para generar los parsers de opciones de CLI y las páginas man a partir de los
archivos *_opts.def — esto reemplazó a GNU AutoGen para ese propósito en 4.6
(AutoGen está EOL; estos no). AutoGen en sí solo sigue siendo necesario para un
header interno (src/tcpedit/tcpedit_stub.h) — consulta
scripts/autoopts/README.md. Nada de esto es
necesario al compilar un tarball de lanzamiento, que ya incluye estos generados.
./autogen.sh # only needed once, from a git checkout
./configure
make
sudo make install
A partir de la versión 4.6, la suite también se puede compilar con CMake (3.16+) — la forma recomendada y principal de compilar Tcpreplay. Autotools todavía se proporciona y se usa para los tarballs de las versiones, pero eventualmente se retirará, por lo que los nuevos scripts/empaquetado deberían apuntar a CMake.
cmake -B build
cmake --build build
sudo cmake --install build
Cada flag de ./configure tiene un equivalente en CMake — véase la tabla al principio de CMakeLists.txt. Algunos ejemplos:
# debug build with support for the -d option
cmake -B build -DENABLE_DEBUG=ON