Linux route-Befehl
1. Überblick über den route-Befehl
Der route-Befehl ist ein leistungsstarkes Werkzeug in Linux-Systemen zum Anzeigen und Manipulieren der IP-Routing-Tabelle. Als grundlegender Befehl für die Netzwerkkonfiguration ermöglicht er Administratoren:
- Aktuelle Routing-Tabelleninformationen anzeigen
- Statische Routen hinzufügen/löschen
- Bestehende Routing-Regeln ändern
- Den Übertragungsweg von Netzwerkpaketen verwalten
Grundlegende Syntax
route [选项] [操作] [目标] [命令参数]
2. Grundkonzepte der Routing-Tabelle
1. Was ist eine Routing-Tabelle
Die Routing-Tabelle ist eine vom Betriebssystemkernel verwaltete Datenstruktur, die bestimmt, wie Netzwerkpakete von der Quelladresse zur Zieladresse übertragen werden. Sie kann verglichen werden mit:
"Ein städtisches Verkehrsnavigationssystem: Wenn Sie zu einem Ziel gelangen möchten, sagt Ihnen das System, welche Straße zu nehmen die schnellste und effizienteste ist"
2. Wichtige Felder der Routing-Tabelle
Überroute -nBeim Anzeigen der Routing-Tabelle werden die folgenden wichtigen Spalten angezeigt:
| Spaltenname | Beschreibung | Beispielwert |
|---|---|---|
| Ziel | Zielnetzwerk oder Host | 192.168.1.0 |
| Gateway | Next-Hop-Gateway | 192.168.1.1 |
| Genmask | Netzmaske | 255.255.255.0 |
| Flags | Routen-Flags | U (Route ist aktiviert) |
| Metrik | Routen-Kosten | 0 |
| Iface | Ausgehende Schnittstelle | eth0 |
3. Häufige Operationen des route-Befehls
1. Routing-Tabelle anzeigen
Beispiel
route -n
# Example output:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
2. Eine Route hinzufügen
Beispiel
route add -host 192.168.1.100 dev eth0
# Eine Route zu einem Netzwerk hinzufügen
route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1
# Standard-Gateway hinzufügen
route add default gw 192.168.1.1
3. Eine Route löschen
Beispiel
route del -net 192.168.2.0 netmask 255.255.255.0
# Das Standard-Gateway löschen
route del default gw 192.168.1.1
4. Detaillierte Erklärung der Befehlsoptionen
Der Befehl route unterstützt die folgenden gängigen Optionen:
| Option | Beschreibung |
|---|---|
| -n | Adressen in numerischer Form anzeigen (Hostnamen nicht auflösen) |
| -e | Routing-Tabelle im netstat-Format anzeigen |
| -v | Detaillierte Vorgangsinformationen anzeigen |
| -A Familie | Adressfamilie angeben (inet, inet6, usw.) |
| -F | Kernel-FIB-Routing-Tabelle anzeigen |
| -C | Route-Cache anzeigen |
Spezielle Befehlsparameter:
add: Route hinzufügendel: Route löschen-host: Operation zielt auf einen bestimmten Host ab-net: Operation zielt auf ein gesamtes Netzwerk abgw: Gateway angebendev: Netzwerkschnittstelle angeben
5. Praktische Anwendungsszenarien
Szenario 1: Multi-NIC-Routenkonfiguration
Wenn ein Server über mehrere Netzwerkschnittstellen verfügt, müssen Sie für verschiedene Netzwerke den Ausgang angeben:
Beispiel
route add -net 10.0.0.0 netmask 255.255.255.0 dev eth1
Szenario 2: VPN-Routeneinstellungen
Nach dem Verbinden mit einem VPN müssen Sie bestimmte Routen hinzufügen:
Beispiel
route add -net 172.16.0.0 netmask 255.240.0.0 dev tun0
Szenario 3: Temporäre Routentests
Beispiel
route add -host 8.8.8.8 gw 192.168.1.254
ping 8.8.8.8 # Testen, ob die Route wirksam ist
route del -host 8.8.8.8 # Nach Abschluss des Tests löschen
6. Persistente Routenkonfiguration
Mit dem Befehl route hinzugefügte Routen gehen nach einem Neustart verloren. Um sie dauerhaft wirksam zu machen:
1. Debian/Ubuntu-Systeme
Bearbeiten/etc/network/interfaces:
Beispiel
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
up route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.2
2. RHEL/CentOS-Systeme
Eine Routenkonfigurationsdatei erstellen/etc/sysconfig/network-scripts/route-eth0:
10.0.0.0/8 via 192.168.1.2
7. Fehlerbehebung bei häufigen Problemen
1. Schritte zur Überprüfung, wenn eine Route nicht wirksam ist

2. Typische Fehlerbehebung
Fehler 1:"SIOCADDRT: Network is unreachable"
- Ursache: Das Gateway liegt nicht innerhalb der direkten Broadcast-Domäne des lokalen Netzwerks
- Lösung: Stellen Sie zuerst sicher, dass Sie die Gateway-Adresse anpingen können
Fehler 2:"RTNETLINK answers: File exists"
- Ursache: Es wird versucht, eine bereits vorhandene Route hinzuzufügen
- Lösung: Löschen Sie zuerst die alte Route und fügen Sie sie dann hinzu, oder verwenden Sie den
replaceoption
8. Alternativer Befehl: ip
Moderne Linux-Systeme empfehlen die Verwendung vonip routecommand:
Beispiel
ip route show
# Route hinzufügen
ip route add 10.0.0.0/8 via 192.168.1.2
# Route löschen
ip route del 10.0.0.0/8
Obwohlip routeist leistungsfähiger, aber derrouteBefehl wird nach wie vor häufig verwendet, weil er einfach und intuitiv ist.
In dieser Anleitung sollten Sie die Kernnutzung des route-Befehls beherrschen. Es wird empfohlen, diese Befehle häufiger in einer realen Umgebung zu üben und die Auswirkungen von Routenänderungen auf Netzwerkverbindungen zu beobachten. Bei komplexen Routing-Problemen können Sie sie mittracerouteundpingund anderen Tools für eine umfassende Diagnose kombinieren.
Linux-Befehlsreferenz