Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Verkehr zwischen Routern lenken (statische Routen)

Nach dieser Lektion: Ich kann eine Routing-Tabelle lesen und die Route eines Pakets bestimmen.

Lektion, 55 Min.5 BefehleLab zu statischem Routing: Routen in einem kleinen Netzwerk im Browser aufbauen

Das Paketzentrum plant nicht voraus

Ein Paketzentrum liest die Postleitzahl und legt das Paket auf ein Band. Die ganze Reise plant es nie.

Ein Router macht es mit einem Paket genauso. Er liest die Zieladresse, wählt eine Zeile seiner Tabelle und reicht das Paket weiter.

Jeder Router auf dem Weg erledigt dieselbe Arbeit noch einmal.

Am Ende dieser Lektion

Notiz

Ich kann eine Routing-Tabelle lesen und die Route eines Pakets bestimmen.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Routing-Tabelledie Liste eines Routers: Netze und wohin Pakete dafür gehen
Next Hopder Nachbar-Router, der das Paket als Nächster bekommtvia 10.0.1.1
Direkte Routeein Netz, an dem der Router unmittelbar hängt
Statische Routeeine Route, die ein Mensch von Hand eingetragen hat
Standardroutedie Zeile, die gilt, wenn keine andere passt0.0.0.0/0
Längstes Präfixdie passende Zeile mit den meisten Netz-Bits

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein Host sendet direkt oder an sein Gateway

Ein Host stellt zuerst eine Frage. Liegt das Ziel in meinem eigenen Netz?

Wenn ja, sendet er das Paket direkt dorthin. Wenn nein, schickt er es an sein Standard-Gateway, einen Router in seinem Netz.

Den Rest der Reise plant der Host nicht.

Die Routen eines Hosts lesen

Befehl
sudo ip netns exec h1 ip route

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Fragen, wohin h1 ein Paket sendet

Befehl
sudo ip netns exec h1 ip route get 10.0.3.2

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Antworten lesen

Der erste Run gibt zwei Zeilen aus. Eine nennt das Netz von h1. Die andere beginnt mit default via 10.0.1.1: Alles Übrige geht an r1.

Der zweite Run beginnt mit 10.0.3.2 via 10.0.1.1 dev to-r1. Das Wort via nennt den Next Hop.

Ein Router folgt seiner Tabelle

Ein Router hat mehrere Schnittstellen und eine Routing-Tabelle. Jede Zeile sagt: Für dieses Netz nimm diesen Weg.

Anfangs kennt er nur seine direkten Routen. Jedes andere Netz lernt er, weil ein Mensch eine statische Route einträgt oder weil ein Protokoll Routen verteilt.

Ohne Zeile für ein Netz kann der Router dorthin nichts weiterleiten.

Ein Beispiel: die erste Tabelle eines Routers

NetzNext HopArt
10.0.1.0/24direkt, an to-h1Direkt
10.0.12.0/24direkt, an to-r2Direkt
10.0.3.0/24keinerKeine Zeile, also kein Weg

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Die Tabelle von r1 in seiner Konsole lesen

Befehl
sudo vtysh -N r1 -c "show ip route"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

r1 nach einem unbekannten Netz fragen

Befehl
sudo ip netns exec r1 ip route get 10.0.3.2

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Ein echtes Paket von h1 senden

Befehl
sudo ip netns exec h1 ping -c 2 -W 1 10.0.3.2

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Keine Zeile heißt kein Weg

Die Konsole listet vier Zeilen für r1. Zwei beginnen mit C für direkt verbunden, zwei mit L für die eigenen Adressen des Routers.

Der Run mit ip route get gibt RTNETLINK answers: Network is unreachable aus. Die Tabelle hat keine Zeile für 10.0.3.2, also weiß r1 nicht, wohin damit.

Der Ping zeigt dieselbe Lücke aus Sicht des Hosts. Jede Antwort beginnt mit From 10.0.1.1 und endet mit Destination Net Unreachable.

Das längste Präfix gewinnt

Mehrere Zeilen können auf eine Adresse passen. Der Router wählt die Zeile mit dem längsten Präfix, also die, die das Netz am genauesten benennt.

Die Standardroute 0.0.0.0/0 passt auf alles, mit null Bits Präfix. Jede andere Zeile schlägt sie, sie kommt zuletzt.

Ein häufiger Fehler

Warnung

Viele glauben, die erste passende Zeile gewinne. Ein Router liest nicht von oben nach unten. Er prüft jede Zeile und nimmt die längste Übereinstimmung. Die Reihenfolge in der Tabelle ändert die Antwort nicht.

Ein Beispiel: welche Zeile gewinnt

ZielPassende ZeilenGewinner
10.0.3.2000.0.0.0/0, 10.0.0.0/8, 10.0.3.0/24, 10.0.3.128/2510.0.3.128/25
10.0.3.50.0.0.0/0, 10.0.0.0/8, 10.0.3.0/2410.0.3.0/24
10.9.9.90.0.0.0/0, 10.0.0.0/810.0.0.0/8
8.8.8.80.0.0.0/00.0.0.0/0

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Weiterführend: begründen, warum eine Zeile gewinnt

Kopieren Sie Ihre Funktion waehle_route in eine neue Funktion erklaere_route. Sie gibt die ganze gewinnende Zeile zurück, nicht nur den Next Hop.

Wenden Sie sie auf die TABELLE aus den Tests an, für 10.0.3.129, 10.0.3.127, 10.200.0.1 und 1.1.1.1. Schreiben Sie zu jedem Ziel einen Satz: Welche Zeilen passen, und warum schlägt die Gewinnerin die anderen?

Über dieses Lab und seinen Quellcode: Lab zu statischem Routing: Routen in einem kleinen Netzwerk im Browser aufbauen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.