Comando Traceroute: Cómo usarlo e interpretarlo

Dado que existen numerosas causas posibles de un problema de red, disponer de los conocimientos y las herramientas necesarias para solucionarlo ayudará a ahorrar tiempo.

Una de las herramientas más comunes y fáciles de usar para principiantes es el comando traceroute. Sin embargo, el informe producido a partir de un proceso de traceroute puede ser confuso de interpretar.

Con esto en mente, echaremos un vistazo más de cerca a cómo funciona el comando tracert o traceroute, cuándo usarlo y cómo decodificar su resultado.

¿Qué es el comando Traceroute y cuándo utilizarlo?

Traceroute o tracert es un comando que ejecuta funciones de diagnóstico de red en sistemas operativos informáticos.

En general, ambos comandos funcionan igual. La diferencia radica en el sistema operativo: mientras que Linux y macOS utilizan el comando traceroute, Windows utiliza tracert.

El comando traceroute envía tres paquetes de sondeo a través de la red y supervisa cómo llegan al destino.

Un paquete de sondeo pasará por varios dispositivos, como routers y conmutadores, para llegar a la dirección IP de destino en un proceso denominado salto (hop). El comando traceroute mapea cada salto dentro de la ruta junto con su tiempo de ida y vuelta (RTT).

El registro también puede incluir otros detalles, como el nombre del dispositivo y la dirección IP de cada salto.

El comando traceroute tiene una funcionalidad similar al comando ping. Sin embargo, a diferencia del comando ping, traceroute permite una resolución de problemas más fácil en una red grande con más dispositivos como routers intermedios y puentes.

Utiliza el Protocolo de Mensajes de Control de Internet (ICMP) para detectar problemas durante una conexión de red e informar de la ubicación exacta de la pérdida de paquetes.

Por ejemplo, si el mayor retraso se produce en el router local, significa que debes empezar a solucionar el problema por ahí. 

Cómo ejecutar el comando Traceroute (Tracert)

Los usuarios pueden iniciar el comando traceroute o tracert principalmente a través de la aplicación de línea de comandos incorporada. Sin embargo, el método exacto para ejecutarlo difiere en función del sistema operativo del ordenador.

Veamos cómo ejecutar el comando traceroute o tracert en Linux, macOS y Microsoft Windows.

Ejecutar Traceroute en macOS

Los usuarios de macOS pueden ejecutar el comando traceroute a través de la aplicación Terminal.

Visualización de la aplicación Terminal en macOS

El comando traceroute en macOS funciona de forma similar al de Linux. El comando básico es traceroute seguido del nombre de host o dirección IP de destino. La mayoría de las opciones avanzadas de tracert de macOS son similares a las de la versión de Linux, con pequeñas diferencias.

Detalles del comando traceroute en MacOs o Linux

Ejecutar Traceroute en Linux

Los usuarios de Linux pueden ejecutar el comando traceroute en el terminal. Para ello, escribe esta línea de comandos con el siguiente formato:

traceroute [options] <hostname or IP> [packet length]

El uso más habitual de traceroute es escribir el comando seguido de la dirección de destino de traceroute. Puede ser una dirección IP o un nombre de dominio, como en este ejemplo:

traceroute www.google.com

Con esta línea de comandos, puedes rastrear la ruta que conecta tu ordenador con el sitio web de Google y los detalles de cada salto a lo largo del camino. Los resultados serán similares a los del ejemplo siguiente.

[root@server ~]# traceroute www.google.com
traceroute to www.google.com (216.58.212.132), 30 hops max, 60 byte packets
 1  46.17.174.43 (46.17.174.43)  0.036 ms  0.016 ms  0.016 ms
 2  te0-2-1-6.rcr21.vno01.atlas.cogentco.com (149.14.10.41)  0.614 ms  0.643 ms ip-217-117-27-137.bnk.lt (217.117.27.137)  2.055 ms
 3  jupiteris-Q5.balt.net (213.197.128.45)  9.590 ms  9.595 ms be2842.ccr22.sto03.atlas.cogentco.com (130.117.51.162)  12.229 ms

También es posible añadir opciones avanzadas al comando traceroute para que los resultados sean más específicos. Estas son algunas opciones avanzadas de traceroute para Linux:

ComandoDescripción 
-IEl comando traceroute de Linux envía paquetes de sondeo UDP por defecto. Puedes usar esta opción para cambiarlos por paquetes ICMP.
-nExcluye nombres de dispositivos de los resultados de traceroute.
-q number of packetsPor defecto, traceroute envía tres paquetes. Puedes cambiarlo utilizando esta opción, seguida del número de paquetes.
-dActiva la depuración a nivel de socket.
-m max_ttlEspecifica el número máximo de saltos para el proceso de rastreo. El valor max_ttl por defecto es 30.
-w wait_timeDefine el tiempo máximo de espera para cada respuesta.
-rEvita las tablas de enrutamiento normales y envía los paquetes IP directamente al host en una red conectada directamente.
-pEstablece el puerto de destino de la consulta. El puerto por defecto es 33434.
-g gateway_addrDirige los paquetes salientes a una puerta de enlace especificada utilizando la opción de enrutamiento de origen IP.

También puedes utilizar estas opciones avanzadas individualmente o combinarlas en una única configuración de traceroute. Por ejemplo:

traceroute -Inq 2 www.google.com

Utiliza el comando man traceroute para consultar otra información sobre el comando traceroute, incluidas otras opciones disponibles y cómo utilizarlas.

Ejecutar Tracert en Microsoft Windows

Los usuarios de Windows pueden iniciar el comando tracert utilizando el Símbolo del sistema. Pulsa la combinación de teclas Windows + R para abrir el cuadro de diálogo Ejecutar y escribe cmd en la barra de búsqueda.

Visualización del cuadro Ejecutar para abrir el Símbolo del sistema

Se abrirá una nueva ventana en la que podrás introducir varios comandos, incluido tracert.

Ventana del símbolo del sistema

Después de escribir tracert y pulsar Enter, te mostrará cómo utilizar este comando correctamente. La forma más básica de hacerlo es escribir tracert e incluir el nombre de dominio de destino o la dirección IP.

Descripción del uso del comando tracert

Para que el resultado sea más específico, utiliza las siguientes opciones.

ComandoDescripción
-dEvita que tracert resuelva las direcciones IP a sus respectivos nombres de host para cada salto. Esto suele permitir que el sistema muestre los resultados más rápidamente.
-h maximum_hopsEspecifica el número máximo de saltos incluidos en el proceso tracert. Si no cambias el valor de maximum_hops seguirá el máximo predeterminado de 30 saltos.
-w timeoutEspecifica el tiempo máximo de respuesta para cada salto antes de que se considere un timeout. Esta opción se mide en milisegundos.
-nConfigura tracert para que no resuelva las direcciones IP a sus nombres de dominio.
-4Fuerza el comando tracert a utilizar IPv4.
-6Fuerza el comando tracert a utilizar IPv6.

Algunas opciones como -j host-list y -S sólo funcionan en una versión IP específica. Asegúrate de escribir la opción entre el comando tracert y antes del nombre del objetivo.

La consola ejecutará la función y te mostrará los resultados como en la imagen de abajo.

Visualización de un ejemplo del informe de resultados del comando tracert

Lectura de los resultados de comando Traceroute

Tras ejecutar el comando tracert o traceroute, el sistema presentará los resultados en filas. El informe puede tener un aspecto ligeramente diferente en función de tu sistema operativo, pero en general muestran la misma información.

Un informe tracert o traceroute típico incluye varias filas que representan cada salto que da un paquete para llegar al host de destino. Cada fila se divide en columnas con información diferente. Examinemos cada columna y sus detalles.

Número de saltoRTT 1RTT 2RTT 3Dirección IP/nombre de host
1218 ms17 ms17 ms10.246.173.157
  • Número de saltos: la primera columna representa el número de saltos de la fila concreta.
  • RTT: el tiempo de ida y vuelta o RTT representa cuánto tarda cada paquete en llegar a una dirección IP concreta y volver a tu ordenador. Hay tres columnas RTT diferentes ya que el traceroute envía tres paquetes UDP por defecto.
  • Dirección IP o nombre de host: esta columna representa la dirección IP o el nombre de host del dispositivo en ese salto concreto.

Si se produce un problema durante un salto, el informe de traceroute mostrará un mensaje de error basado en el tipo de problema. Hay tres tipos de mensajes de error comunes en traceroute:

  • Solicitud agotada: normalmente representa un problema de red. Puede deberse a problemas en la ruta de retorno o a que el dispositivo de seguridad del destino bloquee tu solicitud.
  • Símbolos de asterisco bajo las columnas RTT: significa que el dispositivo no ha podido responder a tu solicitud antes de que se supere el tiempo especificado.
  • Red de destino inalcanzable: te informa de que los paquetes IP no han podido encontrar una ruta a la dirección de destino y han dejado de viajar dentro de la red. Las causas más comunes de este problema son un problema con el router o una dirección IP de destino inexistente.
Visualización de un mensaje arrojado por tracert cuando no se encuentra la ruta

Traceroute también puede mostrar algunas anotaciones después de cada salto que indican errores durante el proceso: 

AnotaciónDescripción
!HHost de destino inalcanzable
!NRed inalcanzable
!PProtocolo inalcanzable
!SRuta de origen fallida
!FFragmentación necesaria

El elemento principal en el que debes centrarte al interpretar un resultado de traceroute es el tiempo de salto que aparece bajo las columnas RTT. Durante el traceroute, una conexión de red saludable y regular normalmente reporta tiempos consistentes, también conocidos como latencia.

Sin embargo, el aumento de la latencia no siempre significa un problema dentro de la red.

La mejor manera de leer un informe traceroute es observar el patrón en todo el informe en lugar de centrarte en saltos individuales.

Echemos un vistazo a cuatro patrones comunes de los resultados de traceroute y cómo se correlacionan con la condición de tu red.

Aumento de la latencia hacia el destino

Es posible que veas una latencia repentinamente alta en un salto y que siga aumentando hacia el host de destino. En algunos casos, también puedes ver asteriscos que indican pérdida de paquetes. Este patrón indica que el problema proviene del salto en el que la latencia empezó a aumentar.

Ejemplo de un problema en tracert identificado por asteriscos

Alta latencia en los saltos iniciales

Si ves números altos al principio del informe traceroute, puede que haya un problema en tu red local. Para solucionarlo, centra tus esfuerzos de resolución de problemas en los dispositivos de la red local, como routers, conmutadores y cables.

Tiempos muertos en los saltos iniciales

El resultado de traceroute puede mostrar mensajes de tiempo de espera en el primer o segundo salto, pero mostrar tiempos normales para el resto del salto. Esto es normal y no indica ningún problema, ya que algunos routers no están configurados para responder a una solicitud de traceroute.

Tiempos de espera al final del informe

Hay varias causas de los tiempos de espera al final del traceroute, incluyendo:

  • El firewall o los dispositivos de seguridad del ordenador de destino bloquean la solicitud de traceroute.
  • Un problema con la ruta de retorno desde el equipo de destino.
  • Un posible problema de conexión en la dirección de destino.

Los dos primeros escenarios no afectarán a tu conexión a la red de destino, pero el tercero puede provocar un fallo en la conexión.

Estos patrones pueden ayudarte a identificar el origen de un problema de conexión y las medidas que debes tomar. Hay diferentes partes a las que puedes dirigirte en función de dónde se produzcan los tiempos de espera y la alta latencia en caso de que no puedas resolver el problema por ti mismo.

Los problemas en los primeros saltos significan que tendrás que ponerte en contacto con tu administrador de red. Los siguientes saltos representan a tu proveedor de servicios de Internet (ISP) y te animan a ponerte en contacto con su servicio de atención al cliente.

Los últimos saltos están dentro del área de red de destino, y hay dos posibilidades para este patrón. Si eres el usuario de la página web o de la aplicación web, puedes ponerte en contacto con su administrador o esperar a que se resuelva el problema.

Por otro lado, el propietario del sitio web puede ponerse en contacto con su proveedor de alojamiento y solicitar asistencia técnica para resolver el problema.

Conclusión

El comando traceroute es una herramienta de diagnóstico de red útil y fácil de ejecutar. Normalmente, es la primera forma de solucionar un problema de conexión.

El comando puede variar en función del sistema operativo: Linux y macOS utilizan traceroute, mientras que Windows utiliza tracert. Cada sistema operativo también tiene una forma ligeramente diferente de ejecutar el comando, ya sea utilizando el símbolo del sistema o el terminal.

Sin embargo, la función general y los datos presentados en el informe son similares. Un informe traceroute o tracert suele contener filas de saltos con RTT y direcciones IP o nombres de host del salto concreto.

La clave para interpretar un informe traceroute es observar el patrón y detectar las incoherencias. Comprender estos patrones puede ayudarte a reducir el origen del problema y determinar la siguiente acción posible.

Esperamos que este artículo te haya ayudado a utilizar y leer correctamente la función traceroute. Si tienes alguna pregunta o consejo adicional sobre este tema, háznoslo saber en la sección de comentarios más abajo.

Author
El autor

Diana Catalina Herrera Infante

Diana es una traductora con amplia experiencia en diferentes tipos de documentos, entre ellos tutoriales y artículos especializados en la creación de sitios web. Además, cuenta con experiencia en el área de marketing digital. En su tiempo libre le gusta hacer ejercicio y ver una buena película.