Freenas: Jails in VLANs

Ich betreibe bei mir verschiedene VLANs (logische LANs) um eine Segmentierung im Netzwerk zu erreichen. So gibt es ein VLAN in dem die IOT Geräte, ein VLAN für VOIP (und weitere) sind. Ziel ist es so wenig wie möglich Zugriffe von unsicheren oder externen Geräten zu ermöglichen. Die VLANs werden auf der Firewall pfsense eingerichtet und der Zugriff zwischen den Netzwerken geregelt. Dazu braucht man dann noch Switches auf denen definiert wird welches Netzwerk auf welchem Port anliegen soll.

In diesem VLANs sind teilweise RaspberryPis installiert um in diesen getrennten Netzwerken Services wie Asterisk / FTP / MQTT Server bereitzustellen.

Daneben verwende ich die Software Truenas als NAS Laufwerk. Da diese Software auf FreeBSD basiert kann man dort auch Jails definieren. Bisher ist es mir allerdings nicht gelungen Jails so zu definieren, dass sie in verschiedenen VLANs beheimatet sind. Durch dieses Video habe ich einen Weg gefunden.

Der Logik ist ungefähr folgende. Auf einer nicht genutzten Netzwerkkarte (igb1) liegt ein Netzwerkkabel an auf dem über den Port die verschiedenen VLANs getaggt angelegt werden. Diese Karte hat keine IP Adresse. Nun definiert man für jedes VLAN ein Interface vom Typ VLAN und das wird mit der Netzwerkkarte als “ParentInterface” verbunden. Das ist dann so ein Art VLAN-Tag Filter.

Als nächstes definiert man für jedes VLAN eine Bridge welches das gewünschte VLAN als Member inkludiert und ebenfalls keine IP Adresse bekommt. Damit hat man eine Art VLAN Switch definiert das schon ein Kabel mit dem richtigen untagged VLAN Netzwerk angeschlossen hat.

Definiert man jetzt seine Jails gibt man einfach die Bridge als Netzwerkinterface mit DHCP an. Damit “legt man ein Kabel vom Jail in den richtigen Switch”.

Eigentlich ganz einfach :-(

Architekturbild von VLANs in Truenas Jails