Cómo diagnosticar problemas de conectividad con ping, traceroute y mtr

Introducción

Cuando un servidor o sitio web es inaccesible, el primer paso es determinar dónde falla la conexión. Tres herramientas esenciales de línea de comandos le ayudan a diagnosticar problemas de red: ping, traceroute y mtr.

ping — Probar conectividad básica

ping envía solicitudes de eco ICMP a un host y mide el tiempo de ida y vuelta. Responde a la pregunta más básica: "¿Puedo alcanzar este host?"

Uso básico

ping example.com

En Linux, ping se ejecuta continuamente hasta que presione Ctrl+C. Para enviar una cantidad específica de paquetes:

ping -c 5 example.com

Interpretar la salida

PING example.com (93.184.216.34): 56 data bytes
64 bytes from 93.184.216.34: icmp_seq=0 ttl=56 time=11.6 ms
64 bytes from 93.184.216.34: icmp_seq=1 ttl=56 time=11.4 ms
64 bytes from 93.184.216.34: icmp_seq=2 ttl=56 time=11.5 ms

--- example.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss
round-trip min/avg/max = 11.4/11.5/11.6 ms

Qué buscar

Síntoma Posible causa
100% de pérdida de paquetes El host está caído, un firewall bloquea ICMP, o problema de enrutamiento
Latencia alta (>200 ms) Congestión de red, distancia geográfica o enrutamiento ineficiente
Pérdida intermitente (1–20%) Congestión de red, hardware defectuoso o problema del ISP
Destination Host Unreachable Sin ruta al host; verifique las tablas de enrutamiento y la puerta de enlace
Name or service not known Fallo en la resolución DNS; verifique la configuración DNS

Opciones útiles

Opción Descripción
ping -c 10 host Enviar exactamente 10 paquetes
ping -i 0.2 host Enviar paquetes cada 0.2 segundos (más rápido)
ping -s 1400 host Usar un tamaño de paquete mayor (probar problemas de MTU)
ping -4 host Forzar IPv4
ping -6 host Forzar IPv6

traceroute — Trazar la ruta hacia un host

traceroute muestra cada enrutador (salto) entre su máquina y el destino. Ayuda a identificar dónde falla o se ralentiza una conexión.

Uso básico

traceroute example.com

En algunos sistemas, puede necesitar instalarlo:

sudo apt install traceroute    # Debian/Ubuntu
sudo yum install traceroute    # AlmaLinux/RHEL

Interpretar la salida

traceroute to example.com (93.184.216.34), 30 hops max, 60 byte packets
 1  gateway (192.168.1.1)  0.5 ms  0.4 ms  0.3 ms
 2  isp-router (10.0.0.1)  3.2 ms  3.1 ms  3.0 ms
 3  core-router (172.16.0.1)  8.5 ms  8.4 ms  8.3 ms
 4  * * *
 5  target (93.184.216.34)  11.5 ms  11.4 ms  11.3 ms

Cada línea es un salto. Los tres valores de tiempo son tiempos de ida y vuelta para tres paquetes de sondeo. Los asteriscos (* * *) significan que el salto no respondió (puede estar bloqueando ICMP, no necesariamente indica una falla).

Qué buscar

Síntoma Posible causa
Salto repentino en latencia en un salto específico Congestión o problema en ese enrutador/red
Todos los saltos después de cierto punto muestran * * * Firewall bloqueando o host caído más allá de ese punto
La traza termina antes de alcanzar el destino Problema de enrutamiento o firewall descartando paquetes

Traceroute TCP (evadir bloqueos ICMP)

Algunos firewalls bloquean ICMP pero permiten TCP. Use tcptraceroute o:

traceroute -T -p 443 example.com

mtr — ping + traceroute combinados

mtr (My Traceroute) combina ping y traceroute en una sola herramienta de diagnóstico en tiempo real. Envía paquetes continuamente y muestra estadísticas de pérdida de paquetes y latencia por salto.

Instalación

sudo apt install mtr    # Debian/Ubuntu
sudo yum install mtr    # AlmaLinux/RHEL

Uso básico

mtr example.com

Esto abre una pantalla interactiva en tiempo real. Presione q para salir.

Generar un reporte

Para compartir con equipos de soporte, use el modo reporte:

mtr -r -c 100 example.com

Esto envía 100 paquetes e imprime un resumen:

HOST: myserver              Loss%   Snt   Last   Avg  Best  Wrst StDev
  1. gateway                 0.0%   100    0.3   0.4   0.2   1.1   0.1
  2. isp-router              0.0%   100    3.1   3.2   2.8   5.4   0.3
  3. core-router             2.0%   100    8.5   8.7   8.1  12.3   0.5
  4. target                  0.0%   100   11.4  11.6  11.2  14.1   0.4

Columnas clave

Columna Descripción
Loss% Porcentaje de paquetes perdidos en este salto
Snt Número de paquetes enviados
Last Latencia del último paquete (ms)
Avg Latencia promedio (ms)
Best Menor latencia observada (ms)
Wrst Mayor latencia observada (ms)
StDev Desviación estándar (mayor = más fluctuación)

Cuándo usar cada herramienta

Escenario Herramienta
Verificación rápida de si un host es alcanzable ping
Encontrar dónde falla una conexión traceroute
Análisis continuo de calidad de red mtr
Generar un reporte para soporte mtr -r -c 100

Consejos para reportar problemas de red

Al contactar a soporte por un problema de red, incluya:

  1. Un reporte mtr desde su máquina al destino: mtr -r -c 100 ip-destino
  2. Un reporte mtr inverso desde el servidor hacia usted (si tiene acceso SSH)
  3. La hora y zona horaria en que ocurrió el problema
  4. Si el problema es constante o intermitente