¿Se ha encontrado con el mensaje "Sin ruta al host" al intentar acceder a un servidor en Linux? Este error de conexión de servicio puede ser molesto, pero puede solucionarlo una vez que identifique la causa.
"No hay ruta al host" denota un problema de red, generalmente uno que aparece cuando el servidor o el host no responde. Esto puede suceder debido a problemas de red o debido a una configuración inapropiada.
Cubriremos cómo solucionar problemas y remediar su situación de red en este artículo.
¿Son correctas sus configuraciones de red?
Antes de analizar las causas más específicas de este problema, asegúrese de que la configuración de su red sea correcta. ¿Puedes conectarte a la web? ¿Está tu DNS configurado correctamente?
- Comencemos ejecutando este comando para averiguarlo: systemd-resolve –status
- Si detecta algún problema de DNS allí, vuelva a la configuración de su red y vuelva a hacerlo si es necesario. Si está utilizando una red estándar con una IP dinámica, los números DNS deberían actualizarse automáticamente.
- Para configurar manualmente su DNS, vaya a Gerente de Redes e ingrese manualmente la dirección IP en la pestaña IPv4.
- Si su distribución de Linux no tiene un escritorio gráfico, vaya a "/etc/systemd/resolved.conf", busque la línea DNS y cambie los números con los números del DNS que desee y realice otras configuraciones si es necesario.
- Además, si ha configurado una IP estática, es posible que desee volver a una IP dinámica y dejar que su red obtenga la información de conexión a través de DHCP.
No olvide reiniciar su computadora antes de intentar conectarse al host nuevamente. Si todavía recibe "Sin ruta al anfitrión", siga leyendo.
¿Está el servidor host en línea?
El siguiente paso es verificar que el host al que está intentando conectarse esté realmente en línea. Después de todo, una de las causas más frecuentes del error es que el servicio no se está ejecutando como resultado del mantenimiento o algún otro problema.
Si el servicio no está en línea, verifique si el host lo está. A veces, es posible que el servicio se haya detenido o no se haya iniciado desde el principio, incluso si no hay ningún problema con el servidor en sí.
- Usando systemd, ejecute el comando: sudo systemctl status servicename
Si el servicio se está ejecutando, debe buscar otra causa.
¿Se está conectando al puerto correcto?
Verifique cualquier documentación que el anfitrión pueda haber proporcionado. Es una práctica común que los administradores de servidores bloqueen los puertos que no se utilizan para mejorar la seguridad del servidor. Los atacantes suelen utilizar puertos comunes para atacar los servicios de Linux.
Si está intentando conectarse a su propio servidor, puede rastrear el servicio hasta el puerto correcto. Para hacer esto, necesita instalar una herramienta de seguridad que pueda ayudarlo a ver los puertos abiertos: NMAP.
Estos son los comandos para instalar NMAP en diferentes distribuciones de Linux:
CentOS: yum instalar nmap
Debian: apt-get install nmap
Ubuntu: sudo apt-get install nmap
Una vez que haya instalado NMAP, verifique si hay puertos abiertos con el siguiente comando: sudo nmap -sS destino-servidor-ip
Si no tiene acceso directo al servidor, deberá comunicarse con el anfitrión. Pero antes de hacer eso, eche un vistazo a algunas de las otras posibles causas del error "No hay ruta al host" en Linux.
¿Es correcto el nombre del host?
También puede obtener el error "No hay ruta al host" si su computadora y el servidor al que está intentando conectarse usan diferentes nombres de host. Ambas máquinas deben configurarse para conectarse entre sí.
Aparte de la configuración de hosts habitual, debe prestar atención a los archivos hosts.deny y hosts.allow en “/ etc”. Si está intentando conectarse a un nuevo servidor, asegúrese de obtener el nombre de host correcto del servidor.
¿Está iptables bloqueando la conexión?
iptables es bastante útil cuando desea configurar las tablas de firewall del kernel de Linux. El control total que le brinda sobre el tráfico que entra y sale de su computadora es excelente.
Pero a través de un simple error de configuración, iptables podría bloquear la conexión al puerto al que desea llegar y dar lugar al error "No hay ruta al host".
- Primero, imprima una lista de sus iptables y sus conexiones escribiendo sudo iptables -L y golpeando Ingresar.
- Para verificar si iptables tiene la culpa, ejecute el siguiente comando: sudo iptables -S. Esto le permitirá ver si las reglas de iptables que ha establecido bloquean la conexión. Es posible que deba agregar una regla de aceptación a la cadena INPUT predeterminada.
- Para aclarar las reglas de firewall para un firewall externo, puede usar este comando: sudo iptables -F
Pensamientos finales
Como puede ver, puede llevar un tiempo llegar al final del error "No hay ruta al host", pero los pasos anteriores deberían ayudarlo. Si bien puede parecer un problema complejo, a menudo es el resultado de configuraciones conflictivas o problemas simples de red.
¿Ha encontrado otras posibles causas y soluciones para este error? Envíanos un comentario y cuéntanoslo.