¿Cómo leo el resultado de tcpdump tan rápido como lo imprime en la terminal?

¿Cómo leo el resultado de tcpdump tan rápido como lo imprime en la terminal?

Cuando se ejecuta tcpdump en la línea de comando, los paquetes aparecen en tiempo real a medida que se reciben. Sin embargo, cuando tcpdump se canaliza a cualquier cosa, recurre a la salida almacenada en el búfer. Las opciones -ly -Use proporcionan para permitir la configuración de esto. Sin embargo, encuentro que no importa qué opciones establezca, el resultado nunca es tan rápido como ejecutar desde la CLI sin formato. Probé Python con subproceso, tee e incluso un contenedor Rust. Los paquetes siempre parecen salir en lotes.

¿Algunas ideas?

Respuesta1

tcpdump ahora tiene --immediate-mode, lo que me resolvió este problema. Para que funcione, lo usé junto con -l.

Veresta respuesta.

información relacionada