Español

Realizar un diagnóstico MTR/Traceroute

Esta guía le enseñará a usar MTR (My Traceroute) y Traceroute para diagnosticar problemas de conectividad de red, identificar puntos de latencia y analizar la calidad de su conexión.

📋 Requisitos previos

  • Un servidor VPS con acceso root o sudo
  • Una conexión SSH activa
  • Ubuntu/Debian (los comandos están adaptados a estas distribuciones)

🔧 Instalación

Instalar Traceroute (herramienta básica)

Bash
# On Ubuntu/Debian sudo apt update sudo apt install traceroute -y

Instalar MTR (herramienta avanzada)

MTR combina las funcionalidades de ping y traceroute en una sola herramienta potente.

Bash
1# On Ubuntu/Debian 2sudo apt update 3sudo apt install mtr-tiny -y 4 5# For the full version with graphical interface (optional) 6sudo apt install mtr -y

Verificar la instalación

Bash
1# Verify that traceroute is installed 2traceroute --version 3 4# Verify that MTR is installed 5mtr --version

🛠️ Uso de Traceroute

Comando básico

Bash
1# Traceroute to a destination 2traceroute google.com 3 4# Traceroute to an IP 5traceroute 8.8.8.8 6 7# Limit the number of hops (default 30) 8traceroute -m 20 google.com 9 10# Specify timeout in seconds 11traceroute -w 5 google.com

Opciones útiles

Bash
1# Use UDP (default) 2traceroute -U google.com 3 4# Use TCP (more reliable) 5traceroute -T google.com 6 7# Use ICMP (like ping) 8traceroute -I google.com 9 10# Don't resolve DNS names (faster) 11traceroute -n google.com

Ejemplo de salida

traceroute to google.com (142.250.185.14), 30 hops max, 60 byte packets
 1  10.0.0.1 (10.0.0.1)  0.123 ms  0.089 ms  0.067 ms
 2  192.168.1.1 (192.168.1.1)  5.234 ms  5.189 ms  5.145 ms
 3  * * *
 4  8.8.8.8 (8.8.8.8)  12.456 ms  12.389 ms  12.334 ms
 ...

🚀 Uso de MTR (Recomendado)

MTR es más potente porque envía paquetes de forma continua y calcula estadísticas en tiempo real.

Comando básico

Bash
1# MTR in interactive mode (recommended) 2mtr google.com 3 4# MTR with report (non-interactive) 5mtr --report google.com 6 7# MTR with 10 test packets 8mtr --report --report-cycles 10 google.com 9 10# MTR to an IP 11mtr --report 8.8.8.8

Opciones avanzadas

Bash
1# Specify the number of packets to send 2mtr --report --report-cycles 50 google.com 3 4# Use TCP instead of ICMP 5mtr --tcp --port 80 google.com 6 7# Use UDP 8mtr --udp --port 53 8.8.8.8 9 10# Don't resolve DNS names 11mtr --no-dns google.com 12 13# Interval between packets (in seconds) 14mtr --interval 2 google.com 15 16# Packet size (in bytes) 17mtr --psize 64 google.com

Modo interactivo de MTR

Cuando lanza mtr sin la opción --report, entra en modo interactivo:

  • d : Mostrar/ocultar estadísticas detalladas
  • n : Activar/desactivar modo DNS (resolución de nombres)
  • r : Restablecer estadísticas
  • s : Cambiar tamaño de paquete
  • j : Cambiar intervalo entre paquetes
  • q : Salir de MTR

📊 Interpretación de resultados

Latencia normal

  • < 50 ms : Excelente, red local o muy cercana
  • 50-100 ms : Buena, conexión regional
  • 100-200 ms : Aceptable, conexión intercontinental
  • > 200 ms : Alta, puede causar problemas

Pérdida de paquetes

  • 0% : Perfecta
  • < 1% : Normal para una conexión a Internet
  • 1-5% : Aceptable pero puede causar problemas
  • > 5% : Problemática, requiere investigación

Significado de los asteriscos (*)

En traceroute, un * significa:

  • Un solo * en lugar de un tiempo : El router no respondió a ese paquete concreto
  • Tres * consecutivos : El router no respondió en absoluto (timeout o filtro de firewall)

🎯 Casos de uso

Diagnosticar latencia alta

Bash
1# Test to Google DNS 2mtr --report --report-cycles 30 8.8.8.8 3 4# Test to Cloudflare DNS 5mtr --report --report-cycles 30 1.1.1.1 6 7# Identify the problematic hop 8mtr --report --report-cycles 50 your-domain.com

Diagnosticar pérdida de paquetes

Bash
1# Test with TCP to bypass ICMP filters 2mtr --tcp --port 443 --report --report-cycles 50 google.com 3 4# Test to a specific server 5mtr --report --report-cycles 100 your-server.com

Prueba desde su VPS hacia su ubicación

Bash
1# Test to your public IP address 2# Get your public IP first 3curl ifconfig.me 4 5# Then test from your VPS 6mtr --report --report-cycles 30 YOUR_PUBLIC_IP

🔍 Solución de problemas frecuentes

Problema: latencia alta en un salto concreto

Si ve latencia alta en un salto intermedio:

Bash
# Test with different protocols mtr --tcp --port 443 --report google.com mtr --udp --port 53 --report 8.8.8.8 mtr --report google.com

Importante: La latencia alta en un salto intermedio puede ser normal si ese router no responde rápidamente a las solicitudes de diagnóstico, pero la latencia final sigue siendo buena.

Problema: pérdida de paquetes significativa

Si ve una pérdida de paquetes elevada:

Bash
1# Test with more packets to confirm 2mtr --report --report-cycles 100 destination.com 3 4# Test with TCP if ICMP is filtered 5mtr --tcp --port 80 --report --report-cycles 50 destination.com

Advertencia: Si la pérdida de paquetes aparece en todos los saltos, el problema probablemente está en su VPS o en su conexión local. Si aparece solo en un salto concreto, el problema está en la red entre su VPS y el destino.

Problema: timeouts repetidos

Bash
1# Increase timeout 2mtr --timeout 10 --report destination.com 3 4# Test with different protocols 5mtr --tcp --port 443 --timeout 10 --report destination.com

📝 Comandos útiles

Script de diagnóstico completo

Cree un script para probar varios destinos:

Bash
1#!/bin/bash 2echo "=== MTR Test to Google DNS ===" 3mtr --report --report-cycles 30 8.8.8.8 4 5echo -e "\n=== MTR Test to Cloudflare DNS ===" 6mtr --report --report-cycles 30 1.1.1.1 7 8echo -e "\n=== MTR Test to your domain ===" 9mtr --report --report-cycles 30 your-domain.com

Guardar resultados

Bash
1# Save report to a file 2mtr --report --report-cycles 30 google.com > mtr-report-$(date +%Y%m%d).txt 3 4# With CSV format 5mtr --report --report-cycles 30 --csv google.com > mtr-report.csv

✅ Buenas prácticas

  • Use MTR en lugar de traceroute: MTR ofrece estadísticas más completas
  • Pruebe varios destinos: compare resultados con distintos servidores
  • Ejecute varias pruebas: las redes pueden variar; ejecute pruebas en distintos momentos
  • Use TCP si ICMP está filtrado: algunos routers filtran ICMP pero no TCP
  • Interprete los resultados correctamente: la latencia alta en un salto intermedio no siempre es un problema si la latencia final es buena

🆘 Solución de problemas

MTR no se muestra correctamente

Bash
1# If MTR doesn't work in interactive mode, use report mode 2mtr --report destination.com 3 4# Check MTR version 5mtr --version

Error "mtr: command not found"

Bash
1# Reinstall MTR 2sudo apt update 3sudo apt install mtr-tiny -y 4 5# Or install the full version 6sudo apt install mtr -y

Todos los resultados muestran asteriscos

Si todos los saltos muestran *, puede significar:

Bash
1# Your firewall is blocking ICMP 2# Test with TCP instead 3mtr --tcp --port 443 --report destination.com 4 5# Check firewall rules 6sudo ufw status 7sudo iptables -L

📚 Recursos adicionales

❓ Preguntas frecuentes

P: ¿Cuál es la diferencia entre Traceroute y MTR?
R: Traceroute envía unos pocos paquetes y muestra los resultados. MTR envía paquetes de forma continua y calcula estadísticas en tiempo real, lo cual es más útil para el diagnóstico.

P: ¿Por qué algunos saltos muestran asteriscos?
R: Significa que el router no respondió. Puede deberse a un filtro de firewall, la configuración del router o simplemente a que el router no responde a solicitudes de diagnóstico.

P: ¿Debo preocuparme por la latencia alta en un salto intermedio?
R: No necesariamente. Si la latencia final al destino es buena, la latencia alta en un salto intermedio puede ser normal. Lo que realmente importa es la latencia final.

P: ¿Cómo interpreto la pérdida de paquetes en MTR?
R: Una pérdida de paquetes < 1% es normal. Entre 1-5%, es aceptable pero puede causar problemas. Por encima del 5%, es problemática y requiere investigación.

¿Necesita ayuda?

¿Preguntas sobre esta guía? Nuestro equipo y la comunidad están aquí para ayudarle.

Mantente al día con las últimas ofertas, descuentos y promociones especiales.

Ver promociones