Lab zu statischem Routing: Routen in einem kleinen Netzwerk im Browser aufbauen

Das erste Netzwerk-Lab: vier Maschinen, aufgebaut in der einen Ubuntu-VM der lernenden Person, h1 und h2 als Hosts und r1 und r2 als Router mit FRRouting. Die Router kennen nur die Netze, mit denen sie verbunden sind, ein Ping von h1 an h2 schlägt also fehl, und die lernende Person muss herausfinden, warum, und es mit statischen Routen beheben.

Es gibt keine Cisco-Lizenz und nichts zu installieren: Jeder Router ist ein Network Namespace mit eigenem FRRouting, und die Konsole ist vtysh, dieselbe, der die Lernenden an echter Hardware begegnen.

Was die Lernenden lernen

Wie ein Paket Router durchquert: mit traceroute -n und ip route auf einem Host und show ip route auf einem Router herausfinden, wo ein Paket stehen bleibt, statische Routen auf den Routern ergänzen, die sie brauchen, und nur dort, und den Weg mit ping und traceroute prüfen. Ein Verwaltungsnetz hinter r2 muss von h1 aus unerreichbar bleiben, also ergänzen sie die Routen, die das Lab verlangt, und nichts Weitergehendes. Sie speichern jeden Router mit write memory.

Die Topologie

h1 ist mit r1 verbunden, r1 mit r2 und r2 mit h2, dazu kommt hinter r2 ein Verwaltungsnetz auf einer vierten Verbindung. Die Adressen stehen in der README, die das Lab im Home-Ordner hinterlässt. Sie sagt, was zu tun ist, und verrät keine Lösung.

Im Browser ausführen

VM-Labs werden in einem Modul als Lab-Aufgabe gestellt, und das Beispiel liegt auf der Seite des Labs.

  1. Das Lab hinzufügen. Fügen Sie in einem Modul, das Sie unterrichten, eine Aufgabe hinzu und wählen Sie die Karte „Ubuntu-VM-Lab“. Die Seite zeigt statt einer Compose-Datei eine kurze Beschreibung der Maschine.
  2. Vom Beispiel ausgehen. Die Seite bietet drei Netzwerk-Labs als Ausgangspunkt an. Wählen Sie Netzwerk-Lab 1: statisches Routing. Ein Beispiel ersetzt den Text, und „Rückgängig“ bringt Ihren eigenen zurück.
  3. Veröffentlichen und die eigene Kopie starten. Klicken Sie auf „Veröffentlichen“ und dann auf „Starten“. Das Einrichtungsskript des Labs installiert FRRouting und baut die Topologie aus dem Ubuntu-Archiv auf, beim ersten Start der VM, in etwa zehn Sekunden.
  4. Das Terminal öffnen. Öffnen Sie das Terminal und lesen Sie README.md im Home-Ordner: Sie sagt, was zu tun ist, und verrät keine Lösung. netlab status listet die Maschinen auf, und netlab shell r1 öffnet die Konsole eines Routers.

Eine Grundlagenlektion zu diesem Lab

Static Routing Basics ist eine kleine Lektion, die in dieses Lab eingearbeitet ist, eine Ubuntu-VM: Jeder Schritt ist erklärt und hat eine Schaltfläche „Ausführen“, die seinen Befehl in das Terminal der Maschine tippt und zeigt, was der Router geantwortet hat. Die lernende Person lernt die Maschinen kennen, pingt den Router nebenan an, versucht das Netzwerk zu durchqueren und scheitert, liest die Tabelle des Routers, um zu sehen, warum, und beobachtet mit traceroute, wo ein Paket stehen bleibt.

Die Lernenden sehen sich um und überlassen die eigentliche Aufgabe des Labs, das Netzwerk zum Laufen zu bringen, den Lernenden selbst, die Lektion verrät also keine Lösungen. Ein kostenloses persönliches Konto erhält sie im Modul „Basics“, das auf der Startseite liegt. Jede Einrichtung kann sie aus dem Ordner „Basics“ der Bibliothek kopieren, und eine neue Einrichtung startet mit ihr in einem Modul namens Networking Basics (Sample). Sie sind bewusst klein: Sie zeigen Lehrkräften, was eine in ein Lab eingearbeitete Lektion ist, und das Lab erledigt den Rest. Kopieren Sie eine in ein eigenes Modul, um sie zu ändern.

So wird bewertet

Das Lab hat eine Prüfung. Sie läuft nach einem frischen Start auf einer Kopie der gespeicherten Maschine und sieht daher nur, was die lernende Person mit write memory gespeichert hat. Sie wird nur bestanden, wenn der tatsächliche Zustand stimmt: Die statischen Routen sind in vtysh auf beiden Routern gespeichert, h1 erreicht h2 über den Weg durch die Router, und das Verwaltungsnetz bleibt unerreichbar. Eine Route, die mit ip route eingegeben und nie gespeichert wurde, besteht nicht, und die erste Zeile der Ausgabe der Prüfung sagt, warum.

  1. Zuweisen. Weisen Sie das Lab wie jede Aufgabe zu, auf Wunsch mit Fälligkeitsdatum. Jede lernende Person erhält eine eigene VM, die zwischen den Sitzungen erhalten bleibt.
  2. Die Prüfung ausführen. Klicken Sie in der Klassenliste in der Zeile einer lernenden Person auf „Prüfung ausführen“. Das startet eine Kopie ihrer gespeicherten Maschine, die nicht zurück gespeichert wird, führt das Prüfskript des Labs als root aus und zeigt, ob es bestanden wurde, was es ausgegeben hat und wann. Die lernende Person erfährt das Ergebnis nicht.
  3. Bewerten. Lesen Sie, was die Prüfung ausgegeben hat. Sobald eine lernende Person ihre VM anhält, zeigt die Klassenliste außerdem, was sie geändert hat, also die installierten Pakete und die geschriebenen Dateien. So können Sie bewerten, ohne die VM zu starten. Geben Sie die Arbeit mit einer Begründung zur Überarbeitung zurück, wenn mehr nötig ist.

Die Definition auf GitHub

Die Datei ist die gesamte Lab-Definition, derselbe Text, den die Plattform ausführt: Größe, Einrichtungsskript, Topologie, README und Prüfung. Kopieren Sie sie und ändern Sie die Topologie, um Ihre eigene zu bauen: eine Zeile für jeden Router, jeden Host und jede Verbindung.

Häufige Fragen

Brauchen die Lernenden einen Router oder eine Cisco-Lizenz?
Nein. Die Router sind Network Namespaces in der VM der lernenden Person, jeder mit FRRouting, einer quelloffenen Routing-Suite, und der Konsole vtysh.
Können die Lernenden die echten Linux-Netzwerkbefehle verwenden?
Ja, und genau das ist der Sinn. sudo ip netns exec h1 ping 10.0.3.2 und sudo vtysh -N r1 funktionieren wie geschrieben, und netlab shell r1 ist eine Abkürzung.
Worin unterscheiden sich statisches Routing und OSPF?
Im Lab zu statischem Routing ergänzt die lernende Person jede Route von Hand auf den Routern, die sie brauchen, und speichert sie mit write memory. Im OSPF-Lab lernen die Router die Routen in Area 0 voneinander, und die Prüfung sucht nach Routen, die OSPF gelernt hat.