[SOLVED] VLANS richtig einrichten

Willi_H

Member
Apr 9, 2021
9
0
6
41
Hallo,

ich bin nun seit 2 Tagen auf der suche um die Einstellung für VLAN im Zusammenhang mit Proxmox und meinem Netzwerk zu verstehen. Ich hab schon die Docu (gefühlt 20 Mal) gelesen und auch viele Beiträge hier und auf anderen Seiten (inkl. Youtube). Mir fehlt es vor allem am Verständnis wie ich das Netzwerk in Proxmox richtig einstelle.

Zu meinem Netzwerk:

Proxmox läuft auf einem Server der 2 NICs hat. Eines ist mit der Fritzbox verbunden (WAN) das andere mit dem Switch. Auf Proxmox soll OPNsense als Firewall, DNS und DHCP laufen. OPNsense soll 3 VLAN und ein WAN managen. Ich möchte auch noch ein paar weitere VMs auf Proxmox laufen lassen die dann mit unterschiedlichen VLAN verbunden sind.

Nun zur aktuellen Einstellung, die mir falsch erscheint.
Proxmox hat eine vmbr0 mit statischer IP und "VLAN aware", darüber kann ich Proxmox erreichen. Zudem habe ich zwei vlan generiert und diesen eine vmbr verpasst. Gedacht war hier, das sich Proxmox um die VLANs kümmert und nicht OPNsense.
Wenn ich nun jedoch im Switch (Hardware) VLAN1 als "taged" an Proxmox übergebe, kann ich Proxmox nicht mehr erreichen. OPNsense jesoch schon (auch VLAN1 untaged), weil ich an OPNsense nur vmbr über vlans übergebe. Die beiden anderen VLANs kommen "taged" vom switch an Proxmox. Wie schon geschrieben fühlt es sich irgendwie falsch an da ich es nicht ganz verstehe wie es in Proxmox funktioniert.

Ich muss dazu sagen, zuvor war das System auf XCP-ng, ebenfalls mit OPNsense. Dort dort war es die OPNsense, die alle VLANs eingestellt bekamm und auch im Switch waren alle VLANs als "taged" zum XCP-ng Port.

hier die Config:
Code:
auto lo
iface lo inet loopback

auto enp3s0
iface enp3s0 inet manual

auto enx00e04c680123
iface enx00e04c680123 inet manual
#only WAN

auto vmbr0
iface vmbr0 inet static
        address 192.168.10.30/24
        gateway 192.168.10.1
        bridge-ports enp3s0
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094
#ManagePort

auto vmbr1
iface vmbr1 inet manual
        bridge-ports vlan1
        bridge-stp off
        bridge-fd 0
#VLAN1 - OPNsense

auto vmbr2
iface vmbr2 inet manual
        bridge-ports vlan2
        bridge-stp off
        bridge-fd 0
#VLAN2 - OPNsense

auto vmbr3
iface vmbr3 inet manual
        bridge-ports vlan3
        bridge-stp off
        bridge-fd 0
#VLAN3 - OPNsense

auto vmbr100
iface vmbr100 inet manual
        bridge-ports enx00e04c680123
        bridge-stp off
        bridge-fd 0
#WAN

auto vlan1
iface vlan1 inet manual
        vlan-raw-device enp3s0
#VLAN1

auto vlan2
iface vlan2 inet manual
        vlan-raw-device enp3s0
#VLAN2

auto vlan3
iface vlan3 inet manual
        vlan-raw-device enp3s0
#VLAN3
 
Du sagst den "Vlan Interfaces" nicht welches VLAN ID sie denn nutzen sollen. Wenn du das VLAN mit mehrere "vlan unaware" Bridges umsetzen willst, statt einer einzigen "vlan aware" Bridge, dann sollte das eher so aussehen (hier im Beispiel 3 VLAN mit VLAN IDs 2,3 und 4 denn VLAN ID 1 ist eigentlich für Untagged Traffic reserviert):

Code:
auto lo
iface lo inet loopback

auto enp3s0
iface enp3s0 inet manual

auto enx00e04c680123
iface enx00e04c680123 inet manual
#only WAN

auto vmbr100
iface vmbr100 inet manual
        bridge-ports enx00e04c680123
        bridge-stp off
        bridge-fd 0
#WAN

# Die ".2", ".3" etc hinter dem Namen der NIC sagen Proxmox, dass da ein VLAN Interface für VLAN ID 2, 3 etc für die jeweilige NIC erstellt werden soll:

auto enp3s0.2
iface enp3s0.2 inet static
        address 192.168.10.30/24
        gateway 192.168.10.1

auto enp3s0.3
iface enp3s0.3 inet manual

auto enp3s0.4
iface enp3s0.4 inet manual

# Dann jedem VLAN Interface eine "vlan unaware" Bridge verpassen:

auto vmbr2
iface vmbr2 inet manual
        bridge-ports enp3s0.2
        bridge-stp off
        bridge-fd 0

auto vmbr3
iface vmbr2 inet manual
        bridge-ports enp3s0.3
        bridge-stp off
        bridge-fd 0

auto vmbr4
iface vmbr2 inet manual
        bridge-ports enp3s0.4
        bridge-stp off
        bridge-fd 0

# Wenn du jetzt im Switch für den Port Tagged Traffic für VLANs 2,3 und 4 aktivierst, dann sollte jede VM automatisch im jeweiligen VLAN landen, je nachdem, an welche Bridge du die VM hängst. Alles was über die Bridges läuft ist dann untagged Traffic und die VLAN Interfaces machen die "Übersetzung" vom tagged Traffic zum jeweiligen untagged Traffic (und anders herum).
# vmbr0 brauchst du eigentlich nur zum Management von Proxmox. Die kannst du eigentlich weglassen, wenn du deiner Bridge für das LAN (k.A welche das bei dir ist) eine IP und ein Gateway verpasst. Dann wäre Proxmox über das LAN VLAN erreichbar. Ich habe da mal VLAN ID 2 fürs LAN gewählt.

Oder noch einfacher:
Du lässt die vmbr0 als VLAN aware und stellst dann in den VMs unter "Hardware -> Network Device -> Edit" die VLAN ID für die jeweilige virtuelle NIC per "VLAN Tag" ein. "VLAN Tag = 2" dann würde alles was über die virtuelle NIC läuft von/ins VLAN 2 gehen. Dann könnten alle virtuellen NICs gemeinsam an der vmbr0 hängen. Dann müsstest du nur noch ein einzelnes "VLAN interface" für das Management von Proxmox anlegen und dem Interface dann eine IP und Gateway verpassen. Das VLAN Interace braucht dann auch keine extra Bridge.
Da du das VLAN über die virtuelle NIC der VM definierst, brauchst du im Gast-OS der VM auch nichts mehr wegen VLAN einstellen, da alles was die VM als untagged traffic verlässt automatisch das jeweilige VLAN getaggt bekommt.
 
Last edited:
  • Like
Reactions: Willi_H and maxprox
Hi, sorry das ich erst jetzt mich melde.

OK. Soweit hab ich das nun verstanden.

Gehe ich richtig in der Annahme, das ich dann der OPNsenes-VM 3x die Bridge vmbr0, mit jeweils einem anderen VLAN-tag, verpasse?

Mit den VLAN interfaces ist das etwas komisch. Die verkabelten Geräte auf VLAN2 und VLAN3 bekommen keine IP über DHCP und sonst auch keine Kommunikation. Über VLAN1 schon. Die über WLAN (unifi) werden richtig versorgt, ich musste aber den Port zum unifi-AP auf VLAN1 untaged stellen im Switch.

Meine Aktuelle config:
Code:
source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto enp3s0
iface enp3s0 inet manual

auto enx00e04c680123
iface enx00e04c680123 inet manual
#only WAN

auto vmbr0
iface vmbr0 inet manual
        bridge-ports enp3s0
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094

auto vmbr100
iface vmbr100 inet manual
        bridge-ports enx00e04c680123
        bridge-stp off
        bridge-fd 0
#WAN

auto vmbr1
iface vmbr1 inet static
        address 192.168.10.30/24
        gateway 192.168.10.1
        bridge-ports vlan1
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094
#Managed

auto vmbr2
iface vmbr2 inet manual
        bridge-ports vlan2
        bridge-stp off
        bridge-fd 0
#MDA

auto vmbr3
iface vmbr3 inet manual
        bridge-ports vlan3
        bridge-stp off
        bridge-fd 0
#IOT

auto vlan2
iface vlan2 inet manual
        vlan-raw-device enp3s0
#MDA

auto vlan3
iface vlan3 inet manual
        vlan-raw-device enp3s0
#IOT

auto vlan1
iface vlan1 inet manual
        vlan-raw-device enp3s0
#LAN

Die OPNsens bekommt gerade vmbr1, vmbr2, vmbr3 und vmbr100. Mich würde nur interressieren ob ich hier in Proxmox was falsch mache oder es nur na der OPNsense liegt.
 
Gehe ich richtig in der Annahme, das ich dann der OPNsenes-VM 3x die Bridge vmbr0, mit jeweils einem anderen VLAN-tag, verpasse?
Ja, wenn du den eleganteren weg mit nur einer Vlan aware Bridge nimmst schon.
Mit den VLAN interfaces ist das etwas komisch. Die verkabelten Geräte auf VLAN2 und VLAN3 bekommen keine IP über DHCP und sonst auch keine Kommunikation. Über VLAN1 schon. Die über WLAN (unifi) werden richtig versorgt, ich musste aber den Port zum unifi-AP auf VLAN1 untaged stellen im Switch.
Hast du dich denn auch um das Routing etc gekümmert? Jedes VLAN braucht ja seinen eigenen DHCP Server etc.
 
  • Like
Reactions: Willi_H
Wow. Um 4:39? nicht übel.

Wie bereits erwähnt, bekommen die wifi Geräte alle die richtige IP, können ins Internet und jedes Interface hat einen DHCP laufen.
Wichtig für mich wäre ob die Proxmox Config/Aufbau richtig ist. Der rest wäre ja für ein anderes Forum (hab schon bemerkt, das hier auch oft über OPNsense geschrieben wird).

Für alle die sich dennoch ein Bild von meinem Netzwerk machen möchten hier ein kleines Teil-Schema:
Anmerkung 2021-04-12 123253.jpg
Komisch und was sich meinem Verständnis entzieht ist, dass nur die verkabelten Geräte keine IP erhalten. Die wifi aber eben schon. Ich hab auch mittlerweile im Switch die VLANs für die Verkabelten geändert. Auf VLAN2 und VLAN3 geht nichts, auf VLAN1 aber alles wunderbar. Ich bin echt ratlos.
 
Update

ich hab es nun versucht zu vereinfachen. Und mit Tags in den VMs zu arbeiten. Dabei hab ich mein ganzes System geschrottet. Ich musste den Server aus meinem Schrank bauen um es per Tastatur und Monitor wieder zu richten.

Folgendes ist passiert:

ich hab testweise einer VM die Bridges für die VLANs entzogen und durch 3 Bridges vmbr0 mit tags ersetzt. Daraufhin konnte ich die VM über den Browser und auch mit ping nicht mehr erreichen. Da hab ich mir gedacht, dass es vielleicht an den Linux-vlan's in Proxmox liegt. Gedacht, getan und alle VLANs gelöscht. Übrig blieben dann nur die NICs und eine vmbr0 mit static IP und "VLAN aware". Davor natürlich alle VMs beendet. Als ich dann auf "Apply Configuration" ging, wars um die Verbindung zu Proxmox geschehen.

Nachdem ich vieles probiert habe, hatte ich glück meine alte Config hier gepostet zu haben. erste als ich

Code:
auto lo
iface lo inet loopback

auto enp3s0
iface enp3s0 inet manual

auto enx00e04c680123
iface enx00e04c680123 inet manual
#only WAN

auto vmbr0
iface vmbr0 inet manual
        bridge-ports enp3s0
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094

auto vmbr100
iface vmbr100 inet manual
        bridge-ports enx00e04c680123
        bridge-stp off
        bridge-fd 0
#WAN

auto vmbr1
iface vmbr1 inet static
        address 192.168.10.30/24
        gateway 192.168.10.1
        bridge-ports vlan1
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094

auto vlan1
iface vlan1 inet manual
        vlan-raw-device enp3s0
#LAN

eingetragen habe, konnte ich Proxmox wieder erreichen.

Nur wenn ich im Switch das VLAN deaktiviere und nur die vmbr0 mit static IP lasse geht es auch ohne den rest. Da war ich plötzlich vollkommen ratlos. Ist da was an meinem Proxmox falsch?
 
Eher an deiner Netzwerkconfig. :D

Zuerst: VLAN1 hat bei so vielen Switches eine Sonderrolle, das sollte man am besten gar nicht nutzen, schon gar nicht tagged.

Dann: sofern du eine VLAN-aware Bridge nutzt, brauchst du für den Proxmox-Host dennoch eigene Subinterfaces für die VLANs, in denen der Host mitspielen soll. Typischerweise heißen die dann enp3s0.x und nicht vlanX, aber das ist lediglich Konvention, funktionieren wird es wohl dennoch.

Also, wenn du ohnehin alles über deine Sense laufen lassen willst, brauchst du auch keine Bridge für das WAN, da kannst (nicht musst) das entsprechende Interface auch direkt durchreichen.

Dann gibt's noch eine VLAN-aware Bridge (traditionell vmbr0) die du mit unterschiedlichen Tags der Sense mehrfach als Interface 1-n zuweist.
Für den Host machst noch ein VLAN, über das der dann an die Sense angebunden wird. Dieses sollte dann als Subinterface der gerade genannten Bridge angelegt und mit der entsprechenden IP-Adresse des Hosts versehen werden.

Der Switch muss dann entsprechend alle VLANs tagged auf die Leitung geben, die du in der Sense routen willst.

Zusammengefasst:
enx00... wird gebridged durch vmbr100 oder besser gleich direkt an die Sense-VM durchreichen
enp3s0 wird gebridged durch vmbr0, vlan-aware und dann 3x an die Sense-VM
vmbr0.x bekommt die eigentliche Adresse deines Hosts sowie als Gateway die Sense-Adresse des entsprechenden VLANs x.
 
  • Like
Reactions: Willi_H
Eher an deiner Netzwerkconfig. :D
Das hat dann doch mehr Zeit in Recherche verschlungen als ich dachte, führte aber zum Erfolg. Ich schäme mich darüber wie simpel die Lösung für das Eigentliche Problem gewesen ist. Ich musste im TP-Link Switch die VLAN PVID für die kabelgebundenen Geräte richtig stellen.

Bezüglich der VLAN Thematik in Proxmox habe ich nun folgendes eingestellt:
Code:
auto lo
iface lo inet loopback

auto enp3s0
iface enp3s0 inet manual
#only WAN

auto enx28ee520bd142
iface enx28ee520bd142 inet manual

auto enx28ee5210f666
iface enx28ee5210f666 inet manual

auto bond0
iface bond0 inet manual
        bond-slaves enx28ee520bd142 enx28ee5210f666
        bond-miimon 100
        bond-mode balance-rr
#Netzwerk Bond

auto vmbr0
iface vmbr0 inet manual
        bridge-ports bond0
        bridge-stp off
        bridge-fd 0
        bridge-vlan-aware yes
        bridge-vids 2-4094
#one4all

auto vmbr100
iface vmbr100 inet manual
        bridge-ports enp3s0
        bridge-stp off
        bridge-fd 0
#WAN

auto vmbr1
iface vmbr1 inet static
        address 192.168.10.30/24
        gateway 192.168.10.1
        bridge-ports vlan1
        bridge-stp off
        bridge-fd 0
#LAN

auto vlan1
iface vlan1 inet manual
        vlan-raw-device bond0

Ich habe mir 2 NICs für das LAN gegönnt.

Was ich nun nicht schaffe ist das vlan1 weg zu lassen und auch vmbr1 zu entfernen. So bin ich gezwungen die VM, welche ins VLAN1 verbunden sind, immer auch die vmbr1 zu geben und nicht einfach vmbr0 + tag.

Bevorzugen würde ich nun schon die Lösung, die tags in den VMs zu vergeben, möchte jedoch Proxmox nur über VLAN1 erreichen.

Den Post würde ich dann als [SOLVED] markieren, Weil das eigentliche Problem durch richtiges einstellen der PVID gelöst ist. Für den Rest würde ich gerne eure Vorschläge und Ratschläge lesen.
 
Ja, das mit den PVIDs ist eine klassische Falle bei den Billigheimern. Die "guten" Switch-Betriebssysteme setzen diese automatisch gemäß dem ausgewählten untagged VLAN. Aber wenn man das mal weiß, ist es ja kein Problem mehr

Deine zweite Bridge wirst du so los:

auto vmbr0.xx iface vmbr0.xx inet static address 192.168.10.30/24 gateway 192.168.10.1 #VLAN xx
 
  • Like
Reactions: Willi_H
Hallo Zusammen,
stand heute vor dem gleichen Problem.
Habs dann ganz gelöst.
Einfach dem Linux Bridge im Proxmox die feste IP weggenommen.
Dann Create Linux VLan mit vmbr0.100 (100 = VLan Tag)
Neustart des Host
Die Switch Konfiguration angepasst.
Der VM das VLan Tag mitgeben
Fertig.

Ging überraschend einfach.

Weiß natürlich nicht, ob es jetzt so einfach war, weil Promox das in der zwischenzeit in den letzte beiden Jahre eingebaut hat.

Gruß spooner
 
Hallo Zusammen,
stand heute vor dem gleichen Problem.
Habs dann ganz gelöst.
Einfach dem Linux Bridge im Proxmox die feste IP weggenommen.
Dann Create Linux VLan mit vmbr0.100 (100 = VLan Tag)
Neustart des Host
Die Switch Konfiguration angepasst.
Der VM das VLan Tag mitgeben
Fertig.

Ging überraschend einfach.

Weiß natürlich nicht, ob es jetzt so einfach war, weil Promox das in der zwischenzeit in den letzte beiden Jahre eingebaut hat.

Gruß spooner
Bitte nicht nachmachen! -
"Einfach dem Linux Bridge im Proxmox die feste IP weggenommen."
führt dazu das euer Proxmox nicht mehr erreichbar ist!
 
Habe gerade ähnliche Ausgangslage...
wie ist denn nun die finale config von Proxmox und dir Switch Vlan Einstellung VlanID/Tagged/unTagged
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!