Comandos de diagnóstico en Redes Linux
En este apartado estaremos detallando el uso de comandos de diagnóstico en Redes Linux. Los mismos, serán usados para entornos de auditorías, buscar fallas en la red, solucionar problemas, etc..
Table of Contents
ToggleComando ping
Esta herramienta se usa para hacer diagnósticos y evaluar errores. El usuario no interactúa con el kernel, sino que se comunica con otros protocolos del mismo y se transfieren luego los errores a la capa de Aplicación. Su uso se realizar mediante el protocolo icmp para lanzar una petición. Por tanto, cabe mencionar que Linux limita la cantidad de paquetes de error ICMP
El comando ping usa el tipo de datagrama ECHO_REQUEST esperando un datagrama icmp ECHO_RESPONSE de otro host.
Por ejemplo:
# ping www.lathack.com
Como podemos ver este comando envía paquetes de forma indefinida. Por lo que usar la opción –c se usa para especificar la cantidad de paquetes y, la opción –i, para decirle el tiempo (en segundos) por envío.
Comando netstat
Esta herramienta representa uno de los comandos de diagnósticos en redes Linux de tipo «legacy», el cual es usado generalmente para revisión de sockets y de red. Este comando, tiene algunas opciones que muestran información de utilidad:
# netstat
Opciones más usadas
Para mostrar las estadísticas de ethernet y todos los protocolos usamos:
# netstat -e –s
Para mostrar de manera continua las conexiones tcp de manera numérica:
# netstat -c –nt
Muestra la tabla de ruteo:
# netstat –nr
Ver información detallada de las interfaces:
# netstat –ie
Aclaracion:
Recordemos que podemos usar el comando ss como diagnóstico, setenado # ss -s
Servicio Telnet
Telnet es un protocolo que posee ciertas reglas y procedimientos para su uso. El mismo se usa como cliente para ejecutar comandos como un equipo remoto, siendo así, muy útil para hacer y resolver problemas de red. Esto significa que traduce las especificaciones del protocolo al lenguaje de programación, a fin de crear un programa que pueda emular una terminal. Por tanto, esta herramienta es usada para generar una conexión con otro ordenar o dispositivos de red a través del puerto TCP 23
¿Cómo funciona Telnet?
El daemon de Telnet (denominado Telnetd) opera en un entorno de cliente/servidor, lo que implica que el equipo remoto se configure como servidor, por lo que espera que el otro equipo le solicite un servicio. Entonces, dado que este equipo remoto envía datos que se deben mostrar, el usuario siente que está trabajando directamente en un ordenador remoto.
Sintaxis:
# telnet (IP o DNS) [puerto]
Veamos algunos ejemplos:
# telnet www.google.com 80
#telnet www.duck.com 80
# telnet smtp.gmail.com 25
Cabe mencionar que es opcional colocar el puerto. También podemos pasarles peticiones y esperar una respuesta por su parte. Como es en el segundo caso con duck.com.
En el caso de generar una conexión con el equipo remoto, este nos pedirá un nombre de usuario y una contraseña por seguridad. De igual modo, ha sido reemplazado por el servicio ssh en cuanto a seguridad en la conexión. Sin embargo, como vimos, es muy eficaz para comandos de diagnóstico en redes Linux.
Opciones de uso con Telnet
COMANDOS | DESCRIPCIÓN |
unset | Carga la configuración predeterminada de conexión. |
open | Abre otra conexión, aparte de la actual. |
quit | Sale de la aplicación. |
set | Cambia dicha configuración de conexión. |
entorno | Define las variables de entorno del sistema operativo. |
logout | Cierra sesión. |
display | Mostrar la configuración de la conexión, es decir, tipo de terminal y puerto. |
mode | Cambia entre distintos modos de transferencia: ASCII transferencia de un archivo como texto. BINARIOS transferencia de un archivo en modo binario. |
close | Cierra la sesión de la aplicación. |
? | Muestra opciones de ayuda sobre la aplicación. |
Comando tracerout
Esta es una herramienta de diagnóstico cuya función es detectar posibles fallas en la conexión. Por ejemplo, cuando intentamos establecer conexión con algún equipo en nuestra red y no podemos conectarnos. Al enviar estos paquetes vamos a obtener cierta información estadística que nos puede ayudar a solucionar los problemas mencionados. Por otro lado, el comando traceroute es fundamental para revisión y control de nuestra red, ya que en el caso de que tengamos problemas al intentar conectarnos, por ejemplo a un sitio web, no sabríamos si el problema es de parte del servidor de la página o de algún fallo, o mala configuración de nuestra parte.
¿Cómo funciona traceroute?
Esta herramienta hace un seguimiento de la ruta que siguen los paquetes hacia un determinado host. Utiliza el campo TTL (tiempo de vida) de un paquete IP y espera una respuesta TIME_EXCEEDED por parte del ICMP (Protocolo de Control de Mensajes de Internet) cada vez que pasa por un router. El primer salto tiene un TTL=1, el segundo salgo TTL=2 y así sucesivamente hasta el último. Por cada salto realiza 3 pruebas para obtener un resultado más fiable.
Veamos algunos ejemplos:
Como podemos ver, los tres asteriscos indican las tres pruebas realizadas por parte del comando. Sin embargo, hoy en día los routers vienen con dicha seguridad para no dejar que cualquier dispositivo pueda escanearlos.
Este comando utiliza de manera predeterminada el protcolo UDP, sin embargo podemos cambiarlo a TCP o ICMP. Por ejemplo:
# traceroute -P tcp www.duck.com
# traceroute -P icmp www.duck.com