Comando Linux mtr

Linux 命令大全Colección completa de comandos Linux


mtr (My Traceroute) es una potente herramienta de diagnóstico de red que combina las funciones detracerouteypingtraceroute y ping. Puede mostrar en tiempo real la ruta de transmisión de los paquetes de datos en la red y proporcionar estadísticas detalladas; es una herramienta excelente para que los administradores de red y los desarrolladores solucionen problemas de red.

Características principales de mtr

  • Actualización en tiempo real: muestra continuamente la información de ruta y latencia
  • Diagnóstico bidireccional: puede mostrar simultáneamente las rutas en las direcciones de envío y recepción
  • Estadísticas completas: proporciona métricas clave como la tasa de pérdida de paquetes y la latencia
  • Interfaz visual: muestra de forma interactiva el estado de la ruta de red

Instalar el comando mtr

Instalación en distribuciones Linux comunes

Ejemplo

# Sistemas Debian/Ubuntu
sudo apt-get install mtr

# Sistemas CentOS/RHEL
sudo yum install mtr

# Sistema Fedora
sudo dnf install mtr

# Sistema Arch Linux
sudo pacman -S mtr

Instalar en macOS

Ejemplo

# Instalar con Homebrew
brew install mtr

Sintaxis básica de mtr

El formato de sintaxis básica del comando mtr es el siguiente:

mtr [选项] 目标主机

Descripción de las opciones y parámetros comunes

Opción Descripción
-4 Forzar el uso de IPv4
-6 Forzar el uso de IPv6
-c COUNT Establecer el número de paquetes ping enviados
-i SECONDS Establecer el intervalo de ping (segundos)
-n No resolver nombres de host, mostrar direcciones IP
-r Modo de generación de informes (no interactivo)
-s BYTES Establecer el tamaño de los paquetes ping (bytes)
-w Modo de salida amplia; muestra los nombres de host completos
-z Mostrar el número AS (sistema autónomo)
--report Equivale a-r, genera el informe y sale
--report-wide Informe de formato amplio

Ejemplos de uso de mtr

Uso básico: diagnosticar la ruta de red hacia el host de destino

mtr google.com

Después de la ejecución, se mostrará una interfaz actualizada en tiempo real que incluye la siguiente información:

  • Número de saltos (Hop)
  • Nombre de host o dirección IP
  • Tasa de pérdida de paquetes (Loss%)
  • Última latencia (Last)
  • Latencia media (Avg)
  • Mejor latencia (Best)
  • Peor latencia (Wrst)
  • Desviación estándar (StDev)

Modo de generación de informes (adecuado para invocación mediante scripts)

mtr -r -c 10 google.com > mtr_report.txt

Este comando enviará 10 paquetes ping a google.com y luego guardará los resultados en el archivo mtr_report.txt.

Configurar el tamaño y el intervalo de los paquetes ping

mtr -s 100 -i 0.5 example.com

Este comando establece que cada paquete ping tenga un tamaño de 100 bytes y un intervalo de 0,5 segundos.

Mostrar también el número AS

mtr -z example.com

Este comando mostrará el número AS (sistema autónomo) de cada nodo en los resultados, lo que ayuda a identificar la red a la que pertenecen.


Interpretación de la salida de mtr

Explicación de la interfaz interactiva

Cuando ejecutes mtr, verás una salida similar a la siguiente:

My traceroute  [v0.92]
example.com (192.0.2.1)                                                                2022-01-01T12:00:00+0000
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                                                 Packets               Pings
 Host                                                        Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. 192.168.1.1                                              0.0%    10    2.1   2.2   1.9   2.5   0.2
 2. 10.0.0.1                                                 0.0%    10    5.3   5.5   5.1   6.0   0.3
 3. 203.0.113.1                                              0.0%    10   15.2  15.5  15.0  16.1   0.4
 4. example.com                                              0.0%    10   20.1  20.3  20.0  21.0   0.3

Explicación de las métricas clave

  1. Loss%: tasa de pérdida de paquetes; cuanto mayor sea el valor, más inestable es la red
  2. Snt: número de paquetes de sondeo enviados
  3. Last: latencia del sondeo más reciente (milisegundos)
  4. Avg: latencia media (milisegundos)
  5. Best: mejor latencia (milisegundos)
  6. Wrst: peor latencia (milisegundos)
  7. StDev: desviación estándar de la latencia; refleja la estabilidad de la red

Usos avanzados y trucos

1. Rastrear rutas IPv4 e IPv6 simultáneamente

Ejemplo

mtr -4 example.com  # Ruta IPv4
mtr -6 example.com  # Ruta IPv6

2. Usar TCP SYN en lugar de ICMP (para evadir ciertos firewalls)

mtr --tcp example.com

3. Especificar el puerto de origen (para pruebas de rutas específicas)

mtr --port 8080 example.com

4. Guardar los resultados en formato CSV

mtr --csv example.com > result.csv

5. Comparar el estado de la red en dos momentos distintos

Ejemplo

mtr -c 60 -i 1 -w example.com > result1.txt
# Después de un tiempo
mtr -c 60 -i 1 -w example.com > result2.txt
diff result1.txt result2.txt

Solución de problemas comunes

1. Problema de alta tasa de pérdida de paquetes

Si aparece una alta tasa de pérdida de paquetes en algún nodo:

  • Puede que el nodo esté sobrecargado
  • Puede que sea un problema de configuración del dispositivo de red
  • Puede que sea un problema de interconexión entre ISP

2. Problema de aumento repentino de la latencia

Si la latencia aumenta repentinamente en algún nodo:

  • Puede que haya congestión de red
  • Puede que haya cambios de ruta
  • Puede que sea un problema de rendimiento del dispositivo

3. Visualización de asteriscos (*)

Si ves asteriscos (*) en lugar de direcciones IP:

  • Puede que el nodo no responda a las solicitudes ICMP
  • Puede que el firewall haya bloqueado los paquetes de sondeo

Comparación de mtr con otras herramientas

Herramienta Actualización en tiempo real Diagnóstico bidireccional Estadísticas de pérdida de paquetes Estadísticas de latencia Interfaz interactiva
ping ❌ ❌ ✔️ ✔️ ❌
traceroute ❌ ❌ ❌ ✔️ ❌
mtr ✔️ ✔️ ✔️ ✔️ ✔️

Ejercicios prácticos

  1. Usa mtr para comprobar la ruta de red hacia los sitios web que usas habitualmente
  2. Compara las diferencias de calidad de red entre la conexión Wi-Fi y la conexión por cable
  3. Prueba el rendimiento de la red con paquetes ping de diferentes tamaños
  4. Configura una tarea programada para generar informes de calidad de red periódicamente

Ejemplo

# Ejemplo: generar un informe del estado de la red todos los días
(crontab -l 2>/dev/null; echo "0 2 * * * /usr/sbin/mtr -r -c 100 google.com > ~/network_report_$(date +%Y%m%d).txt") | crontab -

Resumen

mtr es una potente herramienta de diagnóstico de red que combina las ventajas de traceroute y ping, ofreciendo un análisis de rutas de red en tiempo real y exhaustivo. Después de leer este artículo, deberías ser capaz de:

  1. Comprender los principios básicos y el funcionamiento de mtr
  2. Utilizar mtr con soltura para diagnosticar problemas de red
  3. Interpretar las distintas métricas de la salida de mtr
  4. Aplicar mtr para resolver problemas de red reales

Dominar el comando mtr mejorará enormemente tu eficiencia a la hora de solucionar problemas de red; es una habilidad que todo administrador de sistemas y desarrollador debería tener.


Linux 命令大全Colección completa de comandos Linux

Otras extensiones