Monitorizar Tráfico en Tiempo Real con Tshark

WiresharkWiresharkBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderá a monitorear el tráfico de red en tiempo real utilizando la herramienta de línea de comandos tshark de Wireshark. Practicará la captura de paquetes en la interfaz eth1, la configuración de actualizaciones de estadísticas en vivo y el análisis de la salida resumida con comandos clave como -i y --update-interval.

A través de ejercicios prácticos, observará los handshakes TCP, terminará sesiones e interpretará detalles del tráfico en tiempo real, incluyendo direcciones IP y protocolos. Este laboratorio brinda experiencia práctica con técnicas esenciales de análisis de red.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) wireshark/WiresharkGroup -.-> wireshark/interface("Interface Overview") wireshark/WiresharkGroup -.-> wireshark/packet_capture("Packet Capture") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") subgraph Lab Skills wireshark/interface -.-> lab-548934{{"Monitorizar Tráfico en Tiempo Real con Tshark"}} wireshark/packet_capture -.-> lab-548934{{"Monitorizar Tráfico en Tiempo Real con Tshark"}} wireshark/commandline_usage -.-> lab-548934{{"Monitorizar Tráfico en Tiempo Real con Tshark"}} end

Iniciar la captura con -i eth1

En este paso, aprenderá cómo iniciar la captura de paquetes de red utilizando la herramienta de línea de comandos tshark de Wireshark en la interfaz eth1. Esta es la operación fundamental para el análisis del tráfico de red.

Las interfaces de red son los puntos físicos o virtuales donde su computadora se conecta a una red. La bandera -i en tshark especifica desde qué interfaz de red se capturarán los paquetes. En la mayoría de los sistemas Linux, eth1 representa la primera interfaz Ethernet, que por lo general es su conexión de red cableada principal. En nuestro entorno de máquina virtual (VM) de LabEx, eth1 es la interfaz Ethernet predeterminada conectada a la red.

Cuando ejecuta tshark sin ningún filtro, capturará todo el tráfico de red que pase a través de la interfaz especificada. Esto incluye tanto paquetes entrantes como salientes. El comando que vamos a utilizar proporciona una vista en tiempo real de este tráfico.

Siga estos pasos para comenzar la captura:

  1. Abra la terminal en su máquina virtual de LabEx (ya debería estar en el directorio ~/project).
  2. Ejecute el siguiente comando para iniciar la captura en eth1:
tshark -i eth1

Este comando le dice a tshark que escuche en la interfaz eth1 y muestre cada paquete a medida que se captura. La salida mostrará información detallada sobre cada paquete de red en tiempo real.

Debería ver una salida similar a esta cuando comience la captura de paquetes:

Capturing on 'eth1'
1 0.000000000 192.168.1.100 → 192.168.1.1    TCP 74 55942 → 80 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=123456789 TSecr=0 WS=128
2 0.000123456 192.168.1.1 → 192.168.1.100    TCP 74 80 → 55942 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=1460 SACK_PERM=1 TSval=987654321 TSecr=123456789 WS=128

Cada línea representa un paquete capturado, mostrando su marca de tiempo, las direcciones IP de origen y destino, el tipo de protocolo (TCP en este caso) y varios detalles específicos del protocolo. El primer paquete muestra el inicio de una conexión TCP (bandera SYN), mientras que el segundo muestra la respuesta (SYN-ACK).

Para detener la captura, presione Ctrl+C en la terminal. Esto mostrará un resumen de los paquetes capturados antes de volver al indicador de comando. El resumen incluye estadísticas sobre cuántos paquetes se capturaron y procesaron.

Establecer actualizaciones cada 1 segundo con --update-interval 1000

En este paso, configuraremos tshark para mostrar actualizaciones periódicas de las estadísticas del tráfico de red. Este enfoque es especialmente útil para los principiantes, ya que proporciona una vista clara y manejable de la actividad de la red sin abrumarlos con los detalles constantes de los paquetes.

El parámetro --update-interval controla la frecuencia con la que tshark actualiza su pantalla. El valor se especifica en milisegundos (ms), donde 1000 ms equivalen a 1 segundo. Esto significa que obtendremos una instantánea de nuestro tráfico de red cada segundo, lo que facilita la observación de patrones y cambios.

Antes de comenzar, entendamos lo que vamos a hacer:

  • Estamos monitoreando la interfaz de red eth1 (el puerto Ethernet predeterminado en la mayoría de los sistemas).
  • En lugar de ver cada paquete individual, veremos recuentos resumidos.
  • La pantalla se actualizará automáticamente cada segundo.

Así es como se configura esto:

  1. Primero, asegúrese de estar en el directorio de trabajo correcto. Abra su terminal y navegue hasta:
cd ~/project
  1. Ahora, ejecute este comando para comenzar a monitorear con actualizaciones cada 1 segundo:
tshark -i eth1 --update-interval 1000

Después de ejecutar esto, verá una salida similar a:

Capturing on 'eth1'
Packets: 15
Packets: 32
Packets: 47

Notas importantes sobre la salida:

  • El recuento de "Packets" muestra el número total de paquetes capturados desde que se inició tshark.
  • Cada nueva línea representa una actualización después del intervalo especificado (1 segundo).
  • Los números variarán según la actividad real de su red.
  • Números más altos indican más tráfico de red durante ese período.

Este método le brinda una visión general periódica y clara de la actividad de la red, lo cual es especialmente útil cuando se está aprendiendo sobre el monitoreo de redes y se desea observar patrones de tráfico sin perderse en los detalles.

Mostrar resumen en vivo con -P

En este paso, exploraremos cómo monitorear el tráfico de red a un nivel general utilizando el modo de resumen de tshark. Esto es especialmente útil cuando se desea observar patrones de tráfico sin verse abrumado por los detalles de cada paquete individual. Piénsalo como si estuvieras viendo el flujo de tráfico de una carretera en lugar de examinar cada automóvil.

El parámetro -P le indica a tshark que muestre estadísticas periódicas en lugar de mostrar cada paquete. Cuando se combina con --update-interval, crea una vista similar a un panel de control que se actualiza en el momento que usted especifique. Este enfoque es mucho más eficiente que desplazarse por los datos de paquetes sin procesar cuando solo necesita una visión general.

Antes de comenzar, asegúrese de estar en el directorio de trabajo correcto donde tenga permiso para capturar el tráfico de red. El comando que usaremos se basa en lo que ha aprendido en pasos anteriores:

tshark -i eth1 --update-interval 1000 -P

A continuación, se explica lo que hace cada parte:

  • -i eth1 especifica la interfaz de red a monitorear.
  • --update-interval 1000 establece la frecuencia de actualización en 1000 milisegundos (1 segundo).
  • -P habilita el modo de visualización de estadísticas periódicas.

Después de ejecutar el comando, verá una salida que se actualiza cada segundo, mostrando tres métricas clave:

Capturing on 'eth1'
Packets: 15    Avg. packet size: 342 bytes    Packets/s: 5
Packets: 32    Avg. packet size: 356 bytes    Packets/s: 8
Packets: 47    Avg. packet size: 378 bytes    Packets/s: 7

Estas métricas le indican:

  1. El número total de paquetes capturados desde el inicio.
  2. El tamaño promedio de estos paquetes en bytes.
  3. La tasa actual de paquetes que fluyen a través de la interfaz.

Esta vista es especialmente útil para detectar picos repentinos de tráfico o patrones inusuales en la actividad de su red. Los números cambiarán dinámicamente a medida que cambien las condiciones de la red, brindándole una visión en tiempo real de lo que está sucediendo en su red.

Terminar con Ctrl+C

En este paso, aprenderemos cómo detener de forma segura una sesión activa de captura de paquetes de tshark. Como principiante, es importante entender que simplemente cerrar la terminal o finalizar el proceso abruptamente podría resultar en pérdida de datos. El método adecuado utiliza el mecanismo estándar de interrupción de Linux.

Cuando se ejecuta tshark, monitorea continuamente el tráfico de red y escribe datos en la memoria. Presionar Ctrl+C envía una señal SIGINT (señal de interrupción) que le indica a tshark que:

  1. Detenga inmediatamente la captura de nuevos paquetes.
  2. Finalice y muestre las estadísticas recopiladas.
  3. Salga limpiamente y regrese al indicador de comando.

Así es exactamente lo que debe hacer:

  1. Primero, asegúrese de que la captura de tshark esté en ejecución (utilizando el mismo comando anterior: -i eth1 --update-interval 1000 -P).
  2. En su teclado, presione y mantenga presionada la tecla Ctrl.
  3. Mientras mantiene presionada la tecla Ctrl, presione una vez la tecla C.

Verá una salida como esta:

^C
47 packets captured

El símbolo ^C confirma que presionó Ctrl+C. El número muestra cuántos paquetes se capturaron con éxito durante su sesión. Este recuento ayuda a verificar que la captura funcionó como se esperaba antes de detenerla.

Recuerde que este método preserva todos los datos capturados y le permite salir limpiamente, a diferencia de finalizar forzosamente el proceso, que podría hacer que se pierdan los paquetes que se estaban procesando al detenerlo.

Resumen

En este laboratorio, has aprendido a monitorear el tráfico de red en tiempo real utilizando Tshark, la interfaz de línea de comandos de Wireshark. Las técnicas clave incluyeron iniciar la captura de paquetes en eth1 con -i, establecer actualizaciones periódicas a través de --update-interval y mostrar resúmenes en vivo de paquetes utilizando -P.

Los ejercicios brindaron experiencia práctica en la captura de paquetes sin procesar, el análisis de los handshakes TCP y el seguimiento de estadísticas de tráfico en tiempo real. Estas habilidades fundamentales permiten un monitoreo y solución de problemas eficientes de la red a través de la inspección de paquetes basada en la terminal.