Fix: Keine Route zum Host auf Ubuntu mit mehreren Netzwerken fehlgeschlagen

Wenn Sie ein komplexes Netzwerk einrichten, ist es frustrierend, dass nach dem Aufrufen einer neuen Schnittstelle die Meldung Keine Route zum Host angezeigt wird. Dies liegt häufig daran, dass die Standardroute entweder geändert oder gelöscht wurde.

Um Ihre Standardroute zu überprüfen, geben Sie ein

IP-Route zeigen

Wie oben gezeigt, habe ich drei physikalische Schnittstellen, eine nach außen und zwei nach innen. Die Standardroute wurde im Netzwerk gelöscht, als eine Verbindung zurückgesetzt wurde, wodurch der Rest meines Netzwerks normal funktionierte und nur dieser Computer nicht wusste, wo er das Internet erreichen sollte.

Damit die Maschine das Internet erreichen kann, muss sie eine Standardroute haben, die mit dem folgenden Befehl hinzugefügt werden kann

sudo ip route add default über 136.63.176.1

Wenn dieses Problem mehr als ein- oder zweimal auftritt, kann es zu einem Ärgernis werden, daher habe ich ein paar Shell-Skripte geschrieben, um die Situation schnell zu beheben.

Das erste Skript holt Ihre aktuelle IP für Sie. Ich habe $ INTF als STDIN festgelegt, Sie ändern es auf Ihre spezifische Schnittstelle, wenn Sie den Schnittstellennamen nicht eingeben möchten.

Mit meinem bevorzugten Texteditor mag ich vim und habe einen Quellordner in meinem Home-Verzeichnis

mkdir ~ / src && cd ~ / src

vim getip.sh

#! / bin / bash

# fetch IP-Adresse für das angegebene Gerät eingestellt

INTF = $ {1}

PTH = (~ / src /)

deklariere TMP_IP2

TMP_IP2 = $ (ip a | grep $ {INTF} | grep inet | ausschneiden -d -f6 | ausschneiden -d / -f1> $ {PTH} aktuell _ $ {INTF} .ip)

ip a | grep $ {INTF} | Grep inet | Schnitt -d -f6 | Schnitt -d / -f1 | geschnitten -d. -f1-3 | awk '{print $ 0 ".0 / 24"}'> $ {PTH} Netto _ $ {INTF} .ip

ip a | grep $ {INTF} | Grep inet | Schnitt -d -f6 | Schnitt -d / -f1 | geschnitten -d. -f1-3 | awk '{print $ 0 ".1"}'> $ {PTH} gw _ $ {INTF} .ip

deklariere TMP_IP

TMP_IP = $ (cat $ {PTH} aktuell _ $ {INTF} .ip)

PRO TIPP: Wenn das Problem bei Ihrem Computer oder Laptop / Notebook auftritt, sollten Sie versuchen, die Reimage Plus Software zu verwenden, die die Repositories durchsuchen und beschädigte und fehlende Dateien ersetzen kann. Dies funktioniert in den meisten Fällen, in denen das Problem aufgrund einer Systembeschädigung auftritt. Sie können Reimage Plus herunterladen, indem Sie hier klicken

Echostrom wan ip $ TMP_IP

Speichern und beenden Sie, machen Sie es ausführbar, und testen Sie es dann.

sudo chmod a + x getip.sh

Bash getip.sh eth0.2

Angenommen, es funktionierte für Sie richtig und kopieren Sie es nach / usr / local / bin /, um es global ausführbar zu machen.

sudo cp getip.sh / usr / local / bin / getip

Jetzt kann ich einfach getip eth0.2 eingeben und die IP wird zurückgegeben.

Das zweite Skript wird die Standardroute zuweisen und das erste Skript ausführen.

vim setip.sh

#! / bin / bash

getip $ {1}

# fetch IP-Adresse für das angegebene Gerät eingestellt

PTH = (~ / src /)

deklariere RT_IP

RT_IP = $ (cat $ {PTH} gw _ $ {1} .ip)

ip route change default über $ RT_IP

IP-Route hinzufügen Standard über $ RT_IP

echo ip route - Standard über $ RT_IP

Speichern und Beenden. Sie haben vielleicht bemerkt, dass ich sowohl die Standardroute ändere als auch die Standardroute hinzufüge. Dies ist der Fall, wenn Sie das falsche Gateway eingestellt haben.

sudo chmod a + x setip.sh

sudo setip.sh eth0.2

Sie können die Routingtabelle erneut überprüfen, um zu überprüfen, ob alles in Ordnung ist.

sudo ip route show

Sie können die Skripts in / usr / local / bin / kopieren, wenn sie global ausführbar sein sollen. Es erfordert immer noch sudo, da Sie modifizieren und die Schnittstelle verwenden.

sudo cp settip.sh / usr / local / bin / settip

PRO TIPP: Wenn das Problem bei Ihrem Computer oder Laptop / Notebook auftritt, sollten Sie versuchen, die Reimage Plus Software zu verwenden, die die Repositories durchsuchen und beschädigte und fehlende Dateien ersetzen kann. Dies funktioniert in den meisten Fällen, in denen das Problem aufgrund einer Systembeschädigung auftritt. Sie können Reimage Plus herunterladen, indem Sie hier klicken

Facebook Twitter Google Plus Pinterest