Haben Sie beim Versuch, einen Server unter Linux zu erreichen, die Fehlermeldung "Keine Route zum Host" erhalten? Dieser Dienstverbindungsfehler kann ärgerlich sein, Sie können ihn jedoch beheben, sobald Sie die Ursache identifiziert haben.
Lesen Sie auch unseren Artikel So löschen Sie ein Verzeichnis unter Linux
'Keine Route zum Host' weist auf ein Netzwerkproblem hin, das normalerweise auftritt, wenn der Server oder Host nicht antwortet. Dies kann aufgrund von Netzwerkproblemen oder einer unangemessenen Einrichtung geschehen.
Sind Ihre Netzwerkeinstellungen korrekt?
Vergewissern Sie sich, dass Ihre Netzwerkeinstellungen korrekt sind, bevor wir uns mit den spezifischeren Ursachen für dieses Problem befassen. Können Sie sich mit dem Internet verbinden? Ist Ihr DNS richtig konfiguriert?
Führen Sie diesen Befehl aus, um Folgendes herauszufinden:
systemd-resolve –status
Wenn Sie dort DNS-Probleme feststellen, kehren Sie zu Ihrer Netzwerkkonfiguration zurück und wiederholen Sie diese, falls erforderlich. Wenn Sie ein Standardnetzwerk mit einer dynamischen IP-Adresse verwenden, sollten die DNS-Nummern automatisch aktualisiert werden.
Um Ihren DNS manuell zu konfigurieren, rufen Sie Network Manager auf und geben Sie die IP-Adresse manuell auf der Registerkarte IPv4 ein.
Wenn Ihre Linux-Distribution keinen grafischen Desktop hat, gehen Sie zu "/etc/systemd/resolved.conf" und suchen Sie die DNS-Zeile.
Ändern Sie die Nummern mit den Nummern des gewünschten DNS und nehmen Sie gegebenenfalls andere Konfigurationen vor.
Wenn Sie eine statische IP eingerichtet haben, möchten Sie möglicherweise zu einer dynamischen IP zurückkehren und Ihrem Netzwerk die Verbindungsinformationen über DHCP überlassen.
Vergessen Sie nicht, Ihren Computer neu zu starten, bevor Sie erneut versuchen, eine Verbindung zum Host herzustellen. Wenn Sie immer noch "Keine Route zum Host" erhalten, lesen Sie weiter.
Ist der Hostserver online?
Der nächste Schritt besteht darin, zu überprüfen, ob der Host, zu dem Sie eine Verbindung herstellen möchten, tatsächlich online ist. Schließlich ist eine der häufigsten Ursachen für den Fehler, dass der Dienst aufgrund von Wartungsarbeiten oder anderen Problemen nicht ausgeführt wird.
Wenn der Dienst nicht online ist, überprüfen Sie, ob es sich um einen Host handelt. Manchmal wurde der Dienst von Anfang an möglicherweise angehalten oder nicht gestartet, auch wenn am Server selbst nichts falsch ist.
Führen Sie mit systemd den Befehl … aus.
sudo systemctl status servicename
Wenn der Dienst ausgeführt wird, müssen Sie nach einer anderen Ursache suchen.
Stellen Sie eine Verbindung zum richtigen Port her?
Überprüfen Sie alle vom Host bereitgestellten Unterlagen. Es ist eine gängige Praxis für Server-Manager, Ports zu sperren, die nicht zur Verbesserung der Serversicherheit verwendet werden. Angreifer verwenden häufig gemeinsame Ports, um auf Linux-Dienste abzuzielen.
Wenn Sie versuchen, eine Verbindung zu Ihrem eigenen Server herzustellen, können Sie den Dienst auf den richtigen Port zurückführen. Dazu müssen Sie ein Sicherheitstool installieren, mit dem Sie offene Ports erkennen können - NMAP.
Hier sind die Befehle zum Installieren von NMAP über verschiedene Linux-Distributionen:
CentOS: yum install nmap
Debian: apt-get install nmap
Ubuntu: sudo apt-get install nmap
Nachdem Sie NMAP installiert haben, überprüfen Sie mit dem folgenden Befehl, ob offene Ports vorhanden sind:
sudo nmap -sS Zielserver-IP
Wenn Sie keinen direkten Zugriff auf den Server haben, müssen Sie den Host kontaktieren. Aber bevor Sie dies tun, werfen Sie einen Blick auf einige der anderen möglichen Ursachen für den Fehler "Keine Route zum Host" unter Linux.
Stimmt der Hostname?
Möglicherweise wird auch die Fehlermeldung "Keine Route zum Host" angezeigt, wenn Ihr Computer und der Server, zu dem Sie eine Verbindung herstellen möchten, unterschiedliche Hostnamen verwenden. Beide Maschinen sollten für die Verbindung miteinander konfiguriert sein.
Neben der üblichen Host-Konfiguration sollten Sie die Dateien hosts.deny und hosts.allow in „/ etc“ beachten. Wenn Sie versuchen, eine Verbindung zu einem neuen Server herzustellen, vergewissern Sie sich, dass Sie den Hostnamen des Servers korrekt angegeben haben.
Blockiert iptables die Verbindung?
iptables ist sehr nützlich, wenn Sie die Firewall-Tabellen des Linux-Kernels konfigurieren möchten. Die volle Kontrolle über den ein- und ausgehenden Datenverkehr ist großartig.
Durch einen einfachen Konfigurationsfehler kann iptables jedoch die Verbindung zu dem Port blockieren, den Sie erreichen möchten, und den Fehler "Keine Route zum Host" verursachen.
Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Schuld bei iptables liegt:
sudo iptables -S
Überprüfen Sie, ob die von Ihnen festgelegten iptables-Regeln die Verbindung blockieren. Möglicherweise müssen Sie der Standard-EINGABE-Kette eine Annahmeregel hinzufügen.
Mit dem folgenden Befehl können Sie die Firewall-Regeln für eine externe Firewall löschen:
iptables -F
Schlussgedanken
Wie Sie sehen, kann es eine Weile dauern, bis der Fehler "Keine Route zum Host" behoben ist. Die obigen Schritte sollten Ihnen jedoch helfen. Während es wie ein komplexes Problem aussehen mag, ist es oft das Ergebnis widersprüchlicher Konfigurationen oder einfacher Netzwerkprobleme.
Haben Sie andere mögliche Ursachen und Lösungen für diesen Fehler gefunden? Schreiben Sie uns einen Kommentar und erzählen Sie uns davon.
