Traceroute, o tracert si vive en el mundo de Windows, es, junto con ping, una de las herramientas de solución de problemas de red más utilizadas. Como su nombre lo indica, traceroute rastreará la ruta desde una computadora o dispositivo conectado a la red a otro. Es una herramienta muy útil que no solo probará la conectividad a un host, sino que también revelará mucho sobre la ruta para llegar allí y algunos problemas que pueden estar plagando. Aunque traceroute es una gran herramienta, también es una herramienta bastante limitada y no hace nada más que rastrear rutas. Por otro lado, Nmap, otra utilidad muy conocida, aunque no tanto, que proviene del mundo Linux, proporciona una forma de rastrear la ruta a un host, pero también ofrece muchas funciones adicionales. De hecho, los usos principales de Nmap son descubrir redes y escanear puertos. Hoy, estamos analizando el uso de Nmap para traceroute.
Antes de llegar a la explicación real de cómo usar Nmap para traceroute, comenzaremos presentando primero la utilidad traceroute. Saber qué es pero, lo que es más importante, cómo funciona lo ayudará a comprender mejor cómo Nmap realiza el mismo tipo de tarea. A continuación, presentaremos brevemente la utilidad Nmap, discutiendo qué es, de dónde viene y para qué se puede usar. Seguiremos hablando de cómo usar Nmap para traceroute y explicaremos cómo Nmap realmente realiza el rastreo. Verá que es radicalmente diferente del enfoque de traceroute. Y finalmente, veremos brevemente algunas otras herramientas que puede usar para rastrear la ruta entre dos dispositivos. Como verá, hay muchas opciones disponibles.
Sobre Traceroute
La definición de traceroute de Wikipedia es muy clara: “Traceroute es una herramienta de diagnóstico de redes informáticas para mostrar la ruta (ruta) y medir los retrasos en el tránsito de paquetes a través de una red de Protocolo de Internet (IP)”. Por muy buena que sea esa descripción, en cierto modo no da muchos detalles sobre qué es en concreto y cómo funciona. Vamos a explicar. Traceroute le dirá la dirección IP de cada enrutador ubicado entre su computadora y la computadora remota. Pero eso no es todo, traceroute también informará sobre el retraso de la red entre cada uno de estos enrutadores.
Traceroute es una herramienta muy antigua. La primera versión fue lanzada en 1987. Esto fue hace más de 30 años; una eternidad en años de informática. También es una herramienta muy común. Introducido por primera vez en el sistema operativo Unix, ahora está presente en todos los sistemas operativos similares a Unix, incluidos Linux y Mac OS. Incluso finalmente se trasladó a la plataforma Windows, donde se le cambió el nombre a tracert debido al límite original de 8 caracteres en los nombres de archivo en Windows.
Traceroute es una herramienta que todo administrador de red debe comprender y utilizar. Desafortunadamente, muchos de sus usuarios no comprenden completamente cómo funciona y, por lo tanto, pueden encontrarse con algunos de los escollos de la utilidad. Por ejemplo, la ruta podría ser asimétrica con el tráfico al tomar una ruta diferente a la del tráfico de salida y la herramienta no lo vería.
Operación de Traceroute
Primero, algunos requisitos previos. Internet, o cualquier red IP, para el caso, está hecha de enrutadores interconectados. Los enrutadores se comunican entre sí e intercambian información sobre las redes a las que saben cómo llegar. Usan esta información para construir tablas de enrutamiento. Siempre que un paquete de datos llega a un enrutador, busca el destino en su tabla de enrutamiento y procede a enviarlo al siguiente enrutador en la ruta. El enrutador solo conoce el próximo enrutador y no tiene idea de la ruta completa. No tiene por qué ser así.
Para limitar los retrasos de propagación debido a saltos de enrutamiento excesivos, el encabezado de cada paquete de datos contiene un campo de datos llamado TTL o Time To Live. Este es un verdadero nombre inapropiado, ya que el valor del TTL no tiene nada que ver con el tiempo, sino con la distancia. Cuando un paquete sale de su origen, el TTL se establece en 32. A partir de ese momento, cada enrutador que lo maneja a lo largo de la ruta hacia el destino reduce el TTL en uno antes de enrutar el paquete. Cuando el valor TTL llega a cero, un enrutador no enrutará el paquete y, en su lugar, devolverá un mensaje ICMP "Tiempo excedido" al origen del paquete.
Traceroute aprovecha este sistema de informes y detección de errores para realizar su hazaña. Traceroute primero enviará un paquete al destino con el TTL configurado en 1. El primer enrutador en la ruta disminuirá el TTL y devolverá el mensaje Tiempo excedido, lo que permitirá que traceroute aprenda sobre la dirección IP de ese primer enrutador, o salto, como se le conoce a menudo. Luego, Traceroute enviará otro paquete con el TTL configurado en 2 y aprenderá sobre el segundo salto. Y seguirá haciéndolo, incrementando el TTL cada vez hasta que finalmente obtenga una respuesta del destino, indicándole que se ha alcanzado.
Por lo general, Traceroute también medirá el tiempo que se tarda en obtener cada respuesta sucesiva, lo que le permite crear una tabla del tiempo de respuesta para cada salto. A menudo, también realizará una búsqueda de DNS de la dirección IP de cada salto para mostrar el FQDN de cada host en lugar de solo sus direcciones IP en sus resultados.
Deficiencias de Traceroute
Para la explicación anterior, habrás calculado que, debido a la forma en que opera, traceroute solo te mostrará el camino hacia el destino. Sin embargo, no tiene forma de descubrir el camino de regreso. Eso podría ser un problema, especialmente en situaciones en las que la ruta de regreso se retrasa de alguna manera. Traceroute mide el tiempo que se tarda en obtener cada respuesta, pero no tiene forma de saber si se encontraron retrasos en la salida al destino o en el camino de regreso, lo que podría generar resultados engañosos.
También existe un problema potencial con los destinos que tienen equilibrio de carga en varios hosts. Nada garantiza a un usuario de traceroute que cada paquete sucesivo se envíe al mismo host con equilibrio de carga. Y si los dos hosts están en ubicaciones diferentes, esto podría dar lugar a resultados inexactos.
Finalmente, por razones obvias de seguridad, algunos enrutadores están configurados para no responder al tipo de solicitudes que usa traceroute. Esto no evitará que traceroute funcione y la utilidad simplemente ignorará esos saltos y los informará como inalcanzables. Sin embargo, algunas herramientas más avanzadas, como Nmap, pueden usar diferentes tipos de paquetes para su descubrimiento de ruta, mitigando así el riesgo de saltos que no responden.
Presentando Nmap
Nmap, que significa "Network Mapper" es una utilidad gratuita y de código abierto para la exploración de redes y la auditoría de seguridad. Fue diseñado para escanear rápidamente grandes redes, pero funciona igual de bien contra hosts únicos. Nmap utiliza paquetes de IP sin procesar de formas novedosas para determinar qué hosts están disponibles en la red, qué servicios (nombre y versión de la aplicación) ofrecen esos hosts, qué sistemas operativos (y versiones de SO) están ejecutando, qué tipo de filtros de paquetes / firewalls están en uso y decenas de otras características. Nmap se utiliza principalmente para auditorías de seguridad, pero muchos administradores de sistemas y redes lo utilizan para tareas rutinarias como el inventario de la red, la gestión de programas de actualización de servicios y la supervisión del tiempo de actividad del servicio o del host.
Aquí hay una descripción general de todo para lo que se puede usar Nmap:
- Descubrimiento de host
- Descubrimiento / enumeración de puertos
- Descubrimiento de servicios
- Detección de la versión del sistema operativo
- Detección de dirección de hardware (MAC)
- Detección de versión de servicio
- Detección de vulnerabilidades / exploits, utilizando scripts Nmap (NSE)
- Descubrimiento de ruta de red (traceroute)
Nmap fue creado por Gordon Lyon (AKA Fyodor Vaskovich) y originalmente distribuido bajo la Licencia Pública GNU (GPL). Insatisfechos con algunos de los términos de la licencia, los autores finalmente agregaron aclaraciones e interpretaciones específicas a la licencia cuando sintieron que la GPL no estaba clara o no estaba clara.
Usando Nmap para Traceroute
Usar Nmap para realizar un traceroute es muy fácil. Todo lo que tiene que hacer es agregar la opción –traceroute al comando. Por ejemplo:
nmap 64.13.134.52 --traceroute
La opción –traceroute se puede utilizar junto con la mayoría de los tipos de escaneos de Nmap, excepto los escaneos de conexión (-sT) y los escaneos inactivos (-sI). El rastreo se realiza después del escaneo utilizando la información obtenida de los resultados del escaneo para determinar el puerto y el protocolo con más probabilidades de llegar al objetivo. Todos los seguimientos utilizan el modelo de tiempo dinámico de Nmap y se realizan en paralelo.
Al contrario de la utilidad traceroute original descrita anteriormente, traceroute de Nmap comienza con un TTL alto y luego lo disminuye hasta que llega a cero. Hacerlo al revés (en comparación con traceroute) permite a Nmap emplear algoritmos de almacenamiento en caché inteligentes para acelerar los seguimientos en múltiples hosts. En promedio, Nmap envía de 5 a 10 paquetes menos por host, según las condiciones de la red.
Algunas otras herramientas de Traceroute que puede querer probar
Traceroute (o tracert) y Nmap no son las únicas herramientas que puede utilizar para rastrear rutas de red. De hecho, hay muchas herramientas disponibles de varios proveedores. Algunos afirman hacerlo más rápido, algunos tendrán éxito donde otros fallan al usar diferentes puertos y tipos de paquetes para hacer lo suyo. Repasemos algunas de las mejores herramientas de rastreo de ruta que pudimos encontrar. Le dará una idea de lo que está disponible.
Las dos últimas herramientas de nuestra lista son herramientas en línea. Básicamente, realizan el mismo tipo de prueba que cualquier traceroute, pero lo hacen desde un origen en Internet. La mayoría de estos servicios le permiten seleccionar el punto de origen con los mejores que ofrecen opciones en varios países. Su uso principal es identificar cómo los usuarios del sitio web llegan a su sitio.
1. Traceroute NG de SolarWinds (DESCARGA GRATUITA)
SolarWinds es un nombre muy conocido en el campo de las herramientas de gestión de redes. La compañía fabrica algunas de las mejores herramientas de monitoreo, comenzando con su producto estrella, Network Performance Monitor , una solución completa de monitoreo de red. SolarWinds también tiene una sólida reputación por crear excelentes herramientas gratuitas que abordan las necesidades específicas de los administradores de red. Traceroute NG es una de esas herramientas.
Traceroute NG aprovecha la tecnología SolarWinds Netpath para ofrecer un seguimiento continuo de TCP e ICMP. Afirma ser más rápido que otras utilidades de traceroute y devolver resultados en cuestión de segundos. Por supuesto, esto depende principalmente de la red.
Pero Traceroute NG no solo mejora la velocidad de traceroute. También devuelve bastante más información, lo que le brinda una visión más profunda de la situación. Para cada salto, la herramienta usará ping para devolver el porcentaje de pérdida de paquetes, el tiempo de respuesta actual y promedio, así como un gráfico de barras de latencia. También es importante que Traceroute NG utilice una búsqueda de DNS inversa para encontrar y mostrar el nombre de dominio completo, o FQDN, de cada salto.
Otra gran característica de Traceroute NG es su detección automática de cambios de ruta. Si hay varias rutas a un host determinado, la herramienta lo resolverá y mostrará cada ruta individualmente. Esto es muy útil a la hora de solucionar problemas de entornos con equilibrio de carga. La herramienta también le permitirá elegir realizar la prueba utilizando paquetes TCP o ICMP. Esto puede ser útil si algún dispositivo a lo largo de la ruta bloquea ICMP, por ejemplo. Y por último, pero no menos importante, esta herramienta escribirá los resultados de su prueba en un archivo de registro .txt.
Traceroute NG se ejecuta solo en Windows pero, engañosamente, no es una verdadera aplicación de Windows. Si bien se ejecuta bajo el sistema operativo Windows y se muestra dentro de una ventana, es principalmente una herramienta basada en texto. Pero, de nuevo, ¿una GUI aumentaría la utilidad de la herramienta? Probablemente no.
La herramienta, que se descarga como un archivo .zip, no requiere instalación, pero depende de Winpcap, que debe instalarse si aún no está presente en su computadora. Sin embargo, Traceroute NG detectará su ausencia cuando se inicie y ejecutará automáticamente el instalador de Winpcap que se incluye en el archivo .zip.
2. Abra Visual Traceroute
Si lo que busca es una verdadera herramienta de traceroute basada en GUI, Open Visual Traceroute podría ser justo lo que necesita. La herramienta, que está disponible para Windows, la mayoría de versiones de Linux o Mac OS, es simplemente asombrosa. Y para mejorar aún más las cosas, la herramienta es gratuita y de código abierto, lanzada bajo la licencia LGPL V3.
El componente principal de este software es Visual Traceroute per se. Es una utilidad visual basada en GUI que le permitirá ver en un mapa mundial 3D, o 2D si lo prefiere, qué camino están tomando los datos para ir desde su computadora al host de destino. El mapa se puede ampliar y desplazar a voluntad, proporcionando cualquier nivel de detalle que desee.
Open Visual Traceroute también viene con algunas herramientas más, lo que lo convierte en un producto aún más útil. Primero, hay un "rastreador de paquetes". Sin embargo, no es un rastreador de paquetes como Wireshark. Su propósito es únicamente permitirle ver qué datos se envían de ida y vuelta desde el sistema local a Internet. También hay una función Whois que extraerá información sobre nombres de dominio de Internet.
3. MTR (My Traceroute)
MTR fue desarrollado por primera vez por alguien llamado Mike y el acrónimo significa Mike's Traceroute . Alguien más se ha hecho cargo y le ha cambiado el nombre a My Traceroute, pero sigue siendo el mismo producto. El software ha existido desde 1997. Si su longevidad es un testimonio de su calidad, esta debería ser una herramienta bastante buena.
Y es. Funcionalmente, es casi idéntico, o al menos muy similar, al Traceroute NG analizado anteriormente. Las principales diferencias entre los dos son que mientras que la primera es una aplicación de Windows, MTR se ejecuta en Linux y se puede utilizar con una GUI o desde la línea de comandos.
Concretamente, MTR combina la funcionalidad de traceroute y ping en una herramienta de diagnóstico de red. Cuando ejecuta el software, primero funciona exactamente como traceroute para conocer la ruta de la red a un host específico. Una vez que conoce la ruta, la herramienta puede ir un poco más lejos. Enviará una secuencia de solicitudes ICMP ECHO a cada salto para medir la calidad del enlace a cada enrutador. Y mientras lo hace, muestra las estadísticas medidas en la pantalla. De hecho, lo imprime en la salida estándar, lo que significa que se puede redirigir a un archivo.
4. Herramienta de ruta de seguimiento visual en línea de Monitis (herramienta en línea)
Monitis es una empresa de TeamViewer que crea una conocida plataforma de supervisión del rendimiento de sitios web. El servicio virtual basado en la nube le permitirá monitorear sus sitios web, servidores, aplicaciones y más en cualquier momento y desde cualquier lugar. Con cerca de un cuarto de millón de usuarios, esta es una plataforma bastante popular.
Como muchos otros proveedores, Monitis tiene algunas herramientas gratuitas disponibles en su sitio web. La ruta de rastreo visual en línea , a pesar de la ortografía inusual, es exactamente lo que dice que es. Trazará la ruta entre el servidor de Monitis y el host que especifique y la trazará en un mapa del mundo. Desafortunadamente, la visualización del mapa rara vez incluye todos los saltos. Esto es normal ya que la herramienta no podrá geolocalizar cada salto y algunos hos no responderán en absoluto. Y esto es cierto para cualquier herramienta de este tipo, no solo para esta.
Si se desplaza hacia abajo en la pantalla, verá que la herramienta también presenta la información en forma de tabla, como lo haría una herramienta tradicional de rastreo de ruta. También puede observar que, en la parte superior de la visualización tabular, hay tres pestañas etiquetadas como Estados Unidos, Europa y Asia / Pacífico. Podría pensar que al hacer clic en una pestaña se ejecuta la prueba desde una fuente diferente ubicada en esas tres áreas geográficas, pero, al observar los resultados, no parece ser el caso. Tanto la tabla como la visualización del mapa cambian de una pestaña a otra, pero no he podido averiguar cómo funcionan.
5. G-Suite.Tools Visual Traceroute (herramienta en línea)
No se deje engañar por su nombre, G-Suite.Tools no tiene ninguna relación con Google. El sitio web propone un puñado de útiles herramientas de red e Internet. Entre ellos se encuentra una herramienta de trazado de ruta visual. Usarlo es bastante simple. Simplemente escriba una dirección IP o FQDN y haga clic en el botón RASTREO. Muy pronto, un mapa más pequeño en la página mostrará visualmente la ruta al host especificado.
Como la mayoría de las otras herramientas similares, hay una tabla disponible. Muestra la dirección IP y el FQDN (cuando se puede resolver), así como el tiempo de ida y vuelta acumulado para cada salto. Una cosa que nos encantó especialmente de esta herramienta, y es especialmente adecuada para los recién llegados, es la gran cantidad de información sobre el proceso de traceroute que se puede encontrar en la página.
Mientras esté allí, G-Suite.Tools tiene algunas otras herramientas que quizás desee utilizar. Se puede acceder fácilmente a cada uno desde un menú de cinta en la parte superior de la página. Hay búsqueda de DNS, búsqueda de Whois, ping, mi dirección IP, ubicación de la dirección IP y una herramienta para verificar el funcionamiento de las direcciones de correo electrónico.