Quando você está tentando se conectar a um serviço no Linux, “Nenhuma rota para o host” é uma das últimas coisas que você deseja ouvir. É uma mensagem ampla que significa que seu computador não pode alcançar o servidor de destino.
Devido à natureza ampla da mensagem, existem várias possibilidades que podem estar causando isso.
O host está offline / o serviço não está funcionando
Pode parecer dolorosamente óbvio, mas primeiro verifique se o servidor ao qual está tentando se conectar está online. Ele pode ter sido retirado para manutenção ou estar com problemas.
O serviço em si pode não ter sido iniciado. Se for o seu servidor, você pode verificar se o serviço foi iniciado e está funcionando corretamente. Para fazer isso com o Systemd, execute o seguinte comando.
sudo systemctl status servicename
Porta errada
Você pode estar tentando se conectar à porta incorreta. Muitos administradores de sistema optam por executar serviços comumente direcionados como SSH em portas diferentes para ajudar a impedir possíveis invasores.
Se o servidor não for seu, verifique a documentação disponível ou entre em contato com os serviços de suporte.
Para o seu próprio servidor, você pode tentar usar o NMAP para descobrir onde iniciou o serviço.
sudo nmap -sS your.server.ip
Se você acha que usou uma porta realmente obscura, pode usar o -p-
sinalize para verificar todos eles. Mas vai demorar um pouco.
Iptables está bloqueando a conexão
Você pode ter configurado acidentalmente iptables para bloquear conexões nessa porta. Você receberia a mesma mensagem se configurasse o iptables no servidor ou na área de trabalho, portanto, vale a pena verificar os dois. Para ver suas regras de iptables, execute o seguinte comando.
sudo iptables -S
Seu DNS está configurado incorretamente
Se tudo mais falhar, você deve tentar ping
o endereço IP ao qual você deseja se conectar. Pode ser que o seu computador não esteja se conectando a um servidor DNS corretamente.
ping -c3 your.server.ip
Se o ping funcionar, mas conectar um nome de domínio não, você está diante de um problema de DNS.
Os usuários do Systemd podem executar systemd-resolve --status
para verificar os servidores DNS que seu sistema está usando. Ele está dividido por interface, portanto, certifique-se de verificar aquela pela qual você está realmente tentando se conectar.
Na maioria dos casos, seu computador descobrirá as informações DNS relevantes sobre DHCP. Se você estiver usando um IP estático ou algo em sua rede estiver configurado de forma diferente, pode ser necessário definir o DNS manualmente.
Abra “/etc/systemd/resolved.conf.” Nesse arquivo, descomente o DNS
linha e adicione o IP do seu roteador ou outro servidor DNS conhecido. O DNS substituto padrão para Systemd são os servidores DNS do Google listados em FallbackDNS
.
DNS=192.168.1.1
Se estiver usando OpenRC ou outra alternativa do Systemd, você pode encontrar suas informações de DNS em “/etc/resolv.conf.”
nameserver 192.168.1.1
Se não houver nada lá, digite o endereço IP do seu roteador ou qualquer outro servidor DNS conhecido que você prefira usar.
Depois disso, reinicie a rede ou todo o computador.
The GUI Way
Se estiver usando uma área de trabalho gráfica com o Network Manager, você pode editar as informações de conexão dessa forma. Abra o miniaplicativo ou verifique as configurações do sistema. Selecione sua conexão e localize a guia “IPv4”. Mude a conexão para “Manual” e insira manualmente o endereço IP do seu computador e o IP do seu roteador como o gateway. Em seguida, no campo DNS abaixo, insira o IP do seu roteador ou o IP de outro servidor DNS.
Rede incorreta ou configuração de host
Existem várias outras opções de configuração que podem estar incorretas. Qualquer um deles tornaria impossível para o seu computador se conectar ao servidor.
Primeiro, certifique-se de que a configuração de rede do seu computador está correta. Verifique novamente os próprios arquivos de configuração e, é claro, veja se você pode se conectar à Internet de outra maneira.
Se você estiver usando um nome de host específico para se conectar ou se configurou hosts específicos no servidor ou no cliente, você precisa se certificar de que ambas as máquinas podem se conectar. Verifique as configurações de “/ etc / hosts,” “/etc/hosts.allow.” “/Etc/hosts.deny.”
Finalmente, verifique a configuração do seu servidor. Algo pode estar configurado incorretamente no servidor, impedindo que os clientes se conectem corretamente.
Depois de consertar seus problemas de conexão com a Internet, por que não comemorar instalando o navegador Safari do Mac no Linux? Também temos um guia para transmitir a tela do Android para o Linux. Dê uma chance!