Mein Netzwerklabor beruht derzeit noch auf virtuellen Maschinen, die auf VirtualBox beruhen. Ich trug mich schon seit längerer Zeit mit dem Gedanken, diesen Zustand zu ändern.

Ich wollte für meine Experimente leichtgewichtigere virtuelle Maschinen nutzen - mir schwebte die Benutzung von LXC vor. Ich wollte damit beginnen und unter Umständen danach auf Docker schwenken.

Nach eingehender Recherche stellte ich fest, dass es keine fertige Router-Distribution gab, die ich auf virtuellen Maschinen einsetzen kontne, die als Container realisiert sind. Weder für IPCop, noch für IPFire, pfSense oder OpnSense konnte ich eine Möglichkeit finden, diese als Container zu betreiben.

Ich musste also selbst tätig werden. Der aktuelle Arbeitsstand dieses Projektes ist in ein Github-Repository gewandert.

Der Stand dort setzt die minimalen Anforderungen um: Der Container trennt zwei Netze, auf dem äußeren Netzwerk fragt er eine IPv4-Adresse per DHCP an, auf dem internen Netzwerk arbeitet er als DHCP-Server. Diverse Aspekte sind bereits beim Start des Skripts konfigurierbar. Wenn das Skript ausgeführt ist, existiert unter dem angegebenen Namen ein Container, der als Router und Gateway zwischen äußerem und internem Netz agiert. Der Zugriff aus dem internen Netz ins äußere ist derzeit nicht eingeschränkt.

Dafür müsste man die Firewall-Regeln weiter anpassen - entweder durch Erweiterung des Skripts oder nachträgliche Konfiguration des aufgesetzten Containers.

Die nächsten Schritte im Projekt sind das Hinzufügen von SSH-Zugängen zum Router und die Dokumentation der Möglichkeit, per Multi-Hop Verbindung zu den Clients in den internen Netzen zu erhalten - auch wenn mehrere dieser Router-Container hintereinander kaskadiert sind.

Aktualisierung vom 30. September 2019

Eine neue Version der Appliance steht zur Verfügung - damit ist es jetzt auch möglich, dem externen Interface eine statische IP-Adresse zuzuordnen.

Aktualisierung vom 26. Februar 2020

Eine neue Version der Appliance steht zur Verfügung - die Konfiguration wurde um Vorbereitungen erweitert, innerhalb des Containers ein tun-Interface zur Verfügung zu stellen. Dies wird zum Beispiel für die Einrichtung von VPN-Tunneln - etwa mit Tinc - benötigt..

Artikel, die hierher verlinken

Automatisches Setup eines Netzwerklabors

01.12.2019

Ich hatte hier schon über Möglichkeiten geschrieben, Komponenten eines Netzwerklabors automatisch als LXC-Container aufzusetzen. Nachdem ich neulich mit einem Kollegen über Testszenarien für GlusterFS philosophiert habe, habe ich nunmehr versucht, diese Fragmente zu konsolidieren...

CI/CD mit shellcheck

13.10.2019

Ich habe mich entschlossen, in meinen diversen Shell-Projekten shellcheck als Mittel zur Qualitätssicherung einzusetzen.

LXC Netzwerk Degrader

06.10.2019

Ich habe neulich ein Skript zur automatisierten Erstellung eines Routers in einem LXC-Container präsentiert - ein wenig wie Docker nur ohne Docker.

Performanceprobleme mit KVM und Windows

28.09.2019

Ich strebe wieder einmal nach mehr Wissen und versuche mich daher momentan im Bereich Virtualisierung weiterzubilden. Durch einen Kollegen angeregt nahm ich mir diesmal KVM vor...

Docker und CI/CD

26.09.2019

Nachdem ich mich lange dagegen gewehrt habe, Docker privat einzusetzen, habe ich jetzt doch wieder angefangen, mich damit zu beschäftigen...

Umzug Netzwerklabor abgeschlossen

24.09.2019

In meinem vorhergehenden Artikel zu diesem Thema habe ich beschrieben, wie man mit einem einfachen Bash-Skript sehr schnell einen rudimentären Router als LXC-Container aufbauen kann.

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Multi-User-WebDAV, Docker, GitHub

    17.11.2019

    Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...

    Weiterlesen...

Neueste Artikel

  • Migration der Webseite und aller OpenSource Projekte

    In eigener Sache...

    Weiterlesen...
  • AutoHideToolbar für Java Swing

    Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.

    Weiterlesen...
  • Integration von EBMap4D in die sQLshell

    Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.