Har du stött på "Ingen väg till värd" när du försökte nå en server på Linux? Det här tjänstanslutningsfelet kan vara irriterande, men du kan fixa det när du har identifierat orsaken.
"No Route to Host" betecknar ett nätverksproblem, vanligtvis ett som dyker upp när servern eller värden inte svarar. Detta kan hända på grund av nätverksproblem eller på grund av en olämplig installation.
Vi kommer att täcka hur du felsöker och åtgärdar din nätverkssituation i den här artikeln.
Är dina nätverksinställningar korrekta?
Innan vi tittar på de mer specifika orsakerna till detta problem, se till att dina nätverksinställningar är korrekta. Kan du ansluta till webben? Är din DNS korrekt konfigurerad?
- Låt oss börja med att köra det här kommandot för att ta reda på: systemd-resolve –status
- Om du upptäcker några DNS-problem där, gå tillbaka till din nätverkskonfiguration och gör om det om du måste. Om du använder ett standardnätverk med en dynamisk IP bör DNS-numren uppdateras automatiskt.
- För att manuellt konfigurera din DNS, gå till Nätverks chef och ange IP-adressen manuellt på fliken IPv4.
- Om din Linux-distribution inte har ett grafiskt skrivbord, gå till "/etc/systemd/resolved.conf", hitta DNS-raden och ändra numren med numren på den DNS du vill ha och gör andra konfigurationer om du måste.
- Om du har ställt in en statisk IP, kanske du vill återgå till en dynamisk IP och låta ditt nätverk få anslutningsinformationen via DHCP.
Glöm inte att starta om din dator innan du försöker ansluta till värden igen. Fortsätt läsa om du fortfarande får "Ingen väg till värd".
Är värdservern online?
Nästa steg är att kontrollera att värden du försöker ansluta till faktiskt är online. När allt kommer omkring är en av de vanligaste orsakerna till felet att tjänsten inte körs som ett resultat av underhåll eller något annat problem.
Om tjänsten inte är online, kontrollera om värden är det. Ibland kan tjänsten ha stoppats eller inte startats till att börja med, även om det inte är något fel på själva servern.
- Använd systemd, kör kommandot: sudo systemctl status tjänstnamn
Om tjänsten körs måste du leta efter en annan orsak.
Ansluter du till rätt port?
Dubbelkolla all dokumentation som värden kan ha tillhandahållit. Det är vanligt för serverhanterare att låsa portar som inte används för att förbättra serversäkerheten. Angripare använder ofta vanliga portar för att rikta in sig på Linux-tjänster.
Om du försöker ansluta till din egen server kan du spåra tillbaka tjänsten till rätt port. För att göra detta måste du installera ett säkerhetsverktyg som kan hjälpa dig att se öppna portar – NMAP.
Här är kommandona för att installera NMAP över olika Linux-distributioner:
CentOS: yum installera nmap
Debian: apt-get installera nmap
Ubuntu: sudo apt-get installera nmap
När du har installerat NMAP, kontrollera för att se öppna portar med följande kommando: sudo nmap -sS målserver-ip
Om du inte har direktåtkomst till servern måste du kontakta värden. Men innan du gör det, ta en titt på några av de andra möjliga orsakerna till felet "Ingen väg till värd" i Linux.
Är värdnamnet rätt?
Du kan också få felet "Ingen rutt till värd" om din dator och servern du försöker ansluta för att använda olika värdnamn. Båda maskinerna bör konfigureras för att ansluta till varandra.
Förutom den vanliga värdkonfigurationen vill du vara uppmärksam på filerna hosts.deny och hosts.allow i "/etc". Om du försöker ansluta till en ny server, se till att du får serverns värdnamn rätt.
Blockerar iptables anslutningen?
iptables är ganska användbart när du vill konfigurera Linux-kärnans brandväggstabeller. Den fulla kontrollen den ger dig över trafik som kommer in och ut från din dator är fantastisk.
Men genom ett enkelt konfigurationsmisstag kan iptables blockera anslutningen till porten du vill nå och ge upphov till felet "Ingen väg till värd".
- Skriv först ut en lista över dina iptables och dess anslutningar genom att skriva sudo iptables -L och slår Stiga på.
- För att kontrollera om iptables är skyldig, kör följande kommando: sudo iptables -S. Detta gör att du kan se om iptables-reglerna som du har ställt in blockerar anslutningen. Du kan behöva lägga till en acceptregel till standard INPUT-kedjan.
- För att rensa brandväggsreglerna för en extern brandvägg kan du använda det här kommandot: sudo iptables -F
Avslutande tankar
Som du kan se kan det ta ett tag att komma till botten av felet "Ingen rutt till värd", men stegen ovan borde hjälpa dig. Även om det kan se ut som ett komplext problem, är det ofta resultatet av motstridiga konfigurationer eller enkla nätverksproblem.
Har du stött på några andra potentiella orsaker och korrigeringar för detta fel? Lämna en kommentar till oss och berätta om det.