Bandera: Русский Русский Bandera: English English

Solución de problemas de redes para principiantes: Escuchando los cables

Publicado el 17.09.2025


Introducción

Imagínese: ping funciona, DNS responde, los puertos están abiertos, mtr no muestra pérdidas, y curl devuelve errores como connection reset by peer o SSL handshake failed. El problema está ahí, pero las utilidades estándar son impotentes.

En esos momentos queda mirar el propio tráfico — es decir, “escuchar los cables”. Este proceso se llama packet sniffing o análisis de paquetes. En el artículo veremos cómo usar tres herramientas clave: tcpdump, sngrep y Wireshark.


tcpdump — El oído de su servidor 👂

tcpdump es el estándar de facto para capturar paquetes en sistemas Unix. Muestra datos “en crudo” directamente en la consola y puede escribir volcados en un archivo para análisis posterior en Wireshark.

Cómo usar tcpdump

  1. Ver interfaces:

    sudo tcpdump -D
    

    Esto es importante si el servidor tiene varias tarjetas de red.

  2. Capturar tráfico para un host específico:

    sudo tcpdump -i eth0 host 8.8.8.8
    
  3. Filtrar por puerto y protocolo:

    sudo tcpdump -i eth0 tcp port 443
    
  4. Guardar volcado para Wireshark:

    sudo tcpdump -i eth0 -w /tmp/capture.pcap
    
  5. Limitar el tamaño o el tiempo de grabación:

    # Capturar solo los primeros 1000 paquetes
    sudo tcpdump -i eth0 -c 1000
    
    # Crear un nuevo archivo cada minuto (-G) y guardar el paquete completo (-s 0)
    sudo tcpdump -i eth0 -s 0 -w /tmp/capture-%Y-%m-%d_%H:%M:%S.pcap -G 60
    

⚡ Consejo: -c y -G ayudarán a no «llenar» el disco con volcados durante un diagnóstico prolongado.


sngrep — Diálogos en la terminal 🗣️

sngrep fue creado inicialmente para VoIP (SIP), pero puede mostrar también otras sesiones TCP/UDP. Su principal ventaja es la agrupación de paquetes en diálogos.

Cómo usar sngrep

  1. Instalar:

    sudo apt update && sudo apt install -y sngrep
    
  2. Ejecutar con privilegios:

    sudo sngrep
    
  3. Navegación:

    • Flechas — seleccionar sesión.
    • Enter — detalles del diálogo.
    • / — buscar por IP o número de puerto.
  4. Filtrado de llamadas SIP:

    sudo sngrep port 5060
    

⚡ Útil cuando necesitas depurar rápidamente el registro SIP, INVITE o sesiones HTTP, sin profundizar en la salida “en crudo” de tcpdump.


Wireshark — Microscopio de red 🔬

Wireshark es un analizador de paquetes con interfaz gráfica (GUI) y el estándar de oro para investigación profunda de redes.

Cómo usar Wireshark

  1. Abrir un volcado guardado:

    wireshark /tmp/capture.pcap
    
  2. Filtros de visualización (Display filters):

    • Solo solicitudes HTTP:
      http.request
      
    • Solo handshakes TLS:
      tls.handshake
      
  3. Follow TCP Stream — reunir los paquetes de una conexión y mostrar un diálogo completo (útil para HTTP, SMTP e incluso protocolos binarios).

  4. Reglas de coloración — resaltar paquetes según una condición (por ejemplo, mostrar en rojo los reset de TCP).

⚡ Importante: los capture filters (port 443) se establecen en la etapa de captura (por ejemplo, en tcpdump), y los display filters (tls.handshake) se aplican solo al analizar un volcado ya capturado.

⚡ Si trabajas por SSH, puedes escribir el volcado de tcpdump en un archivo en el servidor, luego descargarlo y abrirlo en Wireshark.


Comparación de herramientas

HerramientaCaracterísticasCómo usar
tcpdumpCaptura rápida por CLI, funciona en todas partesEn el servidor sin GUI, para diagnóstico rápido
sngrepAgrupación de paquetes en diálogosSIP, HTTP, DNS — cuando necesitas ver la comunicación como una conversación
WiresharkAnálisis profundo con GUITrabajo local, casos complejos, visualización

Lista de verificación de errores típicos de principiantes ⚠️

  1. Ejecutar tcpdump o sngrep sin sudo → el acceso a la interfaz estará limitado.
  2. Guardar volcados sin la opción -s 0 → los paquetes se recortan por defecto (usualmente 96 bytes).
  3. Confundir capture filter (tcpdump/BPF) y display filter (Wireshark).
  4. Escribir un volcado sin limitación (-c o -G) → el disco se llena con gigabytes de datos.
  5. Abrir un archivo pcap en un editor de texto en lugar de en Wireshark.
  6. Confiar solo en los encabezados (flags, handshake) y olvidar mirar la carga útil.
  7. Creer que tcpdump muestra automáticamente nombres DNS — y eso puede ralentizar el análisis (mejor usar -n para desactivar la resolución).

Conclusión

El análisis del tráfico de red es una inmersión profunda a alto nivel. Cuando las comprobaciones estándar no dan respuesta, los sniffers de paquetes permiten:

  • ver qué ocurre realmente “en el cable”;
  • verificar la corrección de los apretones de manos (handshakes), los tiempos y los diálogos;
  • encontrar al culpable: servidor, cliente, NAT, firewall o la red.

Para aprender a usar estas herramientas, hay que practicar. Prueba:

  1. Capturar tu tráfico HTTP.
  2. Ver cómo se realiza una consulta DNS.
  3. Analizar el handshake TLS.

Solo a través de la práctica entenderás lo útil que es saber «escuchar los cables».

¿Necesitas ayuda?

Escríbeme y te ayudaré a resolver el problema

Publicaciones relacionadas