Seit Jahren nutze ich GNS3 (Generic Network Simulator) für die Virtualsierung von Netzwerken inkl. Switches, Router und Endgeräten wie Server und Clients, um meine Skills in dieses Fachbereich zu vertiefen.
Zugegeben…die Ersteinrichtung von GNS3 ist kein Kinderspiel, gerade wenn es um die Einbindung von CISCO Images geht, die darüber hinaus lizenzpflichtig sind. Wenn man also nicht mit veralteten IOS-Images rumspielen wollte, brauchte man noch eine CISCO VIRL-Lizenz (heute Cisco CML) für 199,- USD im Jahr um an die passenden Lizenzen zu kommen. Aber gerade im Layer 2-Bereich hat GNS3 große Schwächen, da es doch mehr auf L3-Routing-Techniken ausgelegt ist und die Unterstützung für L2 eher mau aussieht.
Eve-NG macht das in der Community Edition alles ein wenig hübscher als GNS3, aber auch nicht wesentlich besser oder anders, die kostenpflichtige Variante habe ich mir nie angesehen.
Mit dem Cisco Packet Tracer bin ich nie warm geworden, auch wenn der sich in den letzten Jahren ganz schön gemacht hat. Gerade als Netzwerkeinsteiger ist der fast unverzichtbar. Leider beschränkt dieser sich jedoch auf die CISCO-Welt und deckt auch hier nicht alle Techniken ab, die auf L2/L3 grundsätzlich zu schulen wären.
Wenn man also in CISCO-Umgebungen lernen und trainieren wollte, kam man um CISCO VIRL nicht herum. Aus CISCO VIRL wurde irgendwann Cisco Modeling Labs (CML) – inzwischen in der Version 2. Der Vorteil hier ist, das mit echten CISCO-Images gearbeitet wird und nahezu alles damit möglich ist. Einziger Wermutstropfen ist die Performance. Dadurch, das die Geräte softwarebasis emuliert werden, erreichen sie natürlich nicht die Leistungsfähigkeit von Hardware-Geräten – aber das ist zum lernen und ausprobieren auch gar nicht notwendig.
Inzwischen gibt es CML in Version 2 auch als lizenzfreie (kostenfreie) Version mit ein paar Einschränkungen:
- CML 2 FREE erlaubt bis zu 5 Nodes gleichzeitig
- IOLv, IOLvL2, ASAv sowie Ubuntu und Alpine Server als auch Clients können direkt per Drag and Drop integriert werden
- nicht managebare Switche zählen nicht zum 5-Node-Limit
- Verbindungen zu externen, physikalischen Netzen sind möglich und zählen auch nicht zum 5-Node-Limit
- keine Zeitlimit
- Labs können erstellt und geteilt per Download/Upload werden
- der Nutzer hat eine browserbasierte Arbeitsumgebung
CML2 free läuft nicht auf Servern von CISCO, sondern du musst dir das selber auf eigener Hardware oder als VM installieren. Dabei gelten folgende Systemvoraussetzungen:
- CPU 4 physische Kerne, nur Intel (kein AMD) und der Prozessor muss VTx unterstützen
- 8 GB RAM
- 32GB Festplatte
Um CML2 als VM herunterladen zu können musst du dich im ersten Schritt bei CISCO registrieren. Das ist kostenfrei und geht unter CML free (ohne diesen Schritt ist sonst kein Download von CML möglich). Auf der folgenden Seite hinterlegst du die nötigen Angaben und schließt den Registrierungsprozess ab. Als Company kannst du self eintragen.

Nach erfolgreicher Registrierung gehst du ins Software-Portal von CISCO und prüfst auf der linken Seite, ob du auch noch im aktuellen Branch vom CML-free bist, die Software wird regelmäßig aktualisierst und ich update nicht immer diesen Blog deswegen. Achte darauf CML-Free und nicht eine der Releases mit Nummern auszuwählen, denn die führen zur kostenpflichtigen Version mit deutlich weniger Limitierungen.

Für die Installation als VM wie unter Proxmox benötigst du 2 Files, das Image für VM deployment und die reference platform ISO (beide rot markiert). Lade diese herunter (ggf. musst du dich nochmal anmelden), entpacke die ZIP-Dateien und lade anschließend nur die beiden ISO-Files bei Proxmox hoch. Im folgenden Screenshot habe ich diese bereits auf meinen Proxmox-Host hochgeladen.

Dann geht es auch schon los mit der Einrichtung. Erstelle eine neue VM durch Klick auf Create VM.

Wähle im ersten Schritt einen aussagekräftigen Namen, hier CML:

Unter OS wählst du die soeben hochgeladene CML-ISO

Unter System änderst du das BIOS auf OVMF (UEFI) und wählst den passenden EFI-Storage aus (bei mir local-lvm).

Unter Disks gibst du der Platte ausreichend Speicher (Systemminimum sind 32GB) und änderst Async IO auf native ab.

Unter CPU gibst du dieser mindestens 4 Kerne (Systemminimum) und wählst als Type host aus (ganz unten in der Liste):

Unter Memory gibst du der VM mindestens 8 GB, wobei meine Empfehlung eher deutlich höher ist (32 GB), denn zum Starten eines virtuellen CISCO-Gerätes kommst du mit 8 GB schnell an die Grenzen.

Unter Network wählst du die für dich passenden Einstellungen aus, je nachdem wie du die VM später erreichbar haben möchtest. Standard ist hier sicher die vmbr0. Wenn ich die VM aus dem Internet erreichbar haben möchte, hänge ich sie grundsätzlich an eine andere Bridge in ein Subnetz, das hinter einer Firewall hängt. im Homelab ist vmbr0 aber meistens ausreichend.

Prüfe unter Confirm nochmal alle Einstellungen, entferne den Haken bei „Start after created“ und klicke auf Finish.

Als nächstes fügen wir die platform-ISO hinzu, welche die Images für das Lab bereitstellt. Dazu gehst du zur neu erstellten VM, klickst auf Hardware, dann Add und CD/DVD Drive.

Wähle den Storage aus, wo du dein ISO hochgeladen hast und im Anschluss das refplat-ISO, bestätige die Auswahl mit Add.

Dann können wir die VM auch schon starten. Habe Geduld, die Installtion erfolgt in 2 Phasen. Zuerst wird das System automatisch installiert…

…danach startet das System von sich aus neu…

…und fordert dann zur Erstkonfiguration auf:

Nach einem Klick auf Enter kommen wir zur EULa, mit TAB kannst du dich zwischen den Eingabefeldern bewegen, mit ENTER diese auswählen. Nach einigen Erläuterungen kommst du so zur Eingabe des Hostnames:

Danach kommst du zur Auswahl des Superusers und dessen Passwort. Achte darauf, das die Tastaturbelegung amerikanisch und nicht deutsch ist (gerade bei Sonderzeichen im Passwort). Später auf der WebUI ist diese bei dir vermutlich wieder deutsch.

Als nächstes legst du den Standarduser mit dessen Passwort fest:

Im nächsten Schritt wirst du gefragt, ob die Zuweisung der IP-Adresse dynamisch (DHCP) oder manuell festgelegt werden soll. Das hängt natürlich wieder von deiner Netzwerk-Umgebung ab.

Dann erfolgt das Summary:

Wenn du in einem der Schritte oben das CD/DVD-Laufwerk refplat.ISO korrekt hinzugefügt hast, wird dieses jetzt automatisch erkannt und kopiert.


Danach wird das System ein letztes mal neu gestartet:


Im Login-Bildschirm findest du auch die beiden URLs, unter denen die Weboberfläche erreichbar ist, bei mir hier im Beispiel:
- https://192.168.178.185/ für das Standard User Interface (Login mit Standarduser)
- https://192.168.178.185:9090/ für die Systemadministratorkonsole (Login mit Systemadministrator)


Nach dem erolgreichen Login als User kannst du dann auch mit dem ersten LAB loslegen:
