Cuando una aplicación deja de responder o un servidor parece no tener conectividad, no siempre es necesario empezar con herramientas complejas. Linux proporciona varias utilidades que permiten construir un diagnóstico progresivo desde la terminal.
La idea es avanzar desde lo más básico hacia lo más específico: primero comprobar la interfaz, después la conectividad y las rutas, luego los puertos y finalmente el servicio que estamos intentando alcanzar.
Orden recomendado de diagnóstico
ip addrComprobar la interfaz
Permite revisar las interfaces de red disponibles, sus estados y las direcciones IP configuradas.
ping 8.8.8.8Comprobar conectividad
Ayuda a determinar si existe conectividad IP hacia un destino determinado.
traceroute example.comRevisar la ruta
Permite observar los saltos que atraviesa el tráfico hasta llegar al destino.
ss -tulpnRevisar puertos
Muestra sockets y servicios que están escuchando en el sistema.
curl -I https://example.comComprobar HTTP
Permite revisar rápidamente la respuesta y las cabeceras de un servicio HTTP.
Empezar por la interfaz de red
Antes de probar Internet o un servidor remoto, conviene conocer cómo está configurada la máquina local.
ip addrCon esta información podemos identificar interfaces, estados y direcciones IP. Si la interfaz esperada no está activa o no tiene una configuración adecuada, cualquier prueba posterior puede llevarnos a conclusiones equivocadas.
Revisar la tabla de rutas
Tener una dirección IP no significa necesariamente que la máquina sepa cómo llegar a todas las redes. La tabla de rutas muestra cómo se dirige el tráfico.
ip routeRuta utilizada cuando no existe una ruta más específica para el destino.
Equipo que permite dirigir tráfico hacia otras redes.
Comprobar conectividad
Una prueba sencilla es utilizar ping. Permite comprobar si existe conectividad IP hacia un destino que responde a este tipo de solicitudes.
ping -c 4 8.8.8.8Si esta prueba funciona, sabemos que existe conectividad IP hacia ese destino. Si falla, todavía no significa que toda la red esté caída: puede existir filtrado ICMP o un problema específico entre origen y destino.
Seguir la ruta
Cuando sabemos que existe conectividad, pero queremos conocer dónde podría estar apareciendo un problema en el camino, podemos utilizar traceroute.
traceroute example.comEl resultado permite observar los saltos intermedios. No todos los routers necesariamente responderán, por lo que una línea sin respuesta no debe interpretarse automáticamente como una falla.
Revisar puertos y servicios
Cuando el problema ya parece estar relacionado con un servicio concreto, resulta útil revisar qué puertos están escuchando en el sistema.
ss -tulpnEsta información ayuda a responder una pregunta concreta: ¿existe realmente un proceso escuchando en el puerto que esperamos utilizar?
Comprobar DNS
Una aplicación puede tener conectividad IP y aun así no funcionar si el nombre de dominio no puede resolverse correctamente.
resolvectl statusRevisar la configuración DNS ayuda a separar un problema de conectividad de un problema de resolución de nombres.
Comprobar el servicio HTTP
Si estamos diagnosticando una aplicación web, curl permite comprobar directamente qué responde el servidor.
curl -I https://example.comLas cabeceras permiten obtener una primera lectura de la respuesta HTTP sin necesidad de abrir un navegador.
Tres escenarios habituales
La clave no es memorizar comandos aislados, sino saber qué pregunta queremos responder con cada herramienta.
No tengo conexión
Primero revisaría la interfaz, después la dirección IP y finalmente intentaría comprobar conectividad hacia un destino conocido.
ip addrip routeping 8.8.8.8El servicio no responde
Comprobaría si existe conectividad, si el puerto está abierto localmente y si el servicio HTTP está devolviendo una respuesta.
pingss -tulpncurl -IHay problemas de resolución
Revisaría la configuración DNS y comprobaría si el problema está relacionado con la resolución del nombre.
resolvectl statusip routecurlChecklist de diagnóstico
¿La interfaz de red está activa?
¿El equipo tiene una dirección IP válida?
¿Existe una ruta hacia el destino?
¿El destino responde a las pruebas de conectividad?
¿El nombre de dominio puede resolverse?
¿El puerto esperado está escuchando?
¿El servicio responde correctamente?
¿Los registros muestran algún problema?
Referencia rápida
ip addrInterfaces y direcciones IPip routeTabla de rutaspingConectividadtracerouteRuta hacia un destinoss -tulpnPuertos y socketscurl -ICabeceras HTTPhostnameNombre del equiporesolvectl statusEstado de resolución DNSDiagnosticar antes de asumir
Una de las ventajas de trabajar desde la terminal es poder dividir un problema grande en comprobaciones pequeñas y observables.
Interfaz, rutas, conectividad, DNS, puertos y servicios forman una cadena. Revisarla paso a paso permite encontrar con mayor precisión dónde está el problema.
