Proxmox Netzwerk Einrichten

Cool Master

Fleet Admiral
Registriert
Dez. 2005
Beiträge
37.413
Abend,

ich stehe wohl einfach aktuell auf dem Schlauch da ich zum ersten Mal Proxmox (6.4) nutze. Mein NICs sieht wie folgt aus:
  • 2x 10 GBit Onboard (Aktuell nur 1 GBit in Nutzung)
    • 1x LAN
    • 1x DMZ
  • 4x Intel 1 GBIt (Intel I350-T4 V2) für LAN
  • 4x Intel 1 Gbit (Intel I350-T4 V2) für DMZ
Aktuell sieht es wie im Screenshot aus:

Proxmox-NIC.png


Ich komme mittels https://10.0.61.1:8006 ohne Probleme auf Proxmox. Wie auf dem Screenshot zu sehen habe ich Kommentare gesetzt was der Port sein soll. Ich stelle mir es gerade so vor:

10 Gig 0 = 10.0.61.1 (geht ohne Probleme)
LAN 0 = 10.0.61.240
LAN 1 = 10.0.61.241
LAN 2 = 10.0.61.242
LAN 3 = 10.0.61.243
IPMI = 10.0.61.2 (geht auch ohne Probleme)

10 Gig 1 = x.x.x.230 (Sollte Proxmox übers Internet sein, falls das geht)
DMZ 0 = x.x.x.180
DMZ 1 = x.x.x.181
DMZ 2 = x.x.x.182
DMZ 3 = x.x.x.183

Meine Frage ist nun wie richte ich die Netzwerkkarten ein, damit ich diese für die VMs nutzen kann? Ich stehe da aktuell voll aufm Schlauch. Des Weiteren kann ich die Interfaces auf eth0, eth1 etc. umbennen oder gibt das Probleme in Proxmox?
 
Generell brauchst du eine VM als Router/Firewall.
Diese VM kann entweder PCIe Netwerkkarten als passthrough oder über bridges verwenden, oder beides.
Ergänzung ()

Wenn Du ein Netzwerk intern verwenden willst brauchst Du eine bridge, die kann auch an mehere VMs oder LXCs gehen. Wenn Du so viele Ports hast ist es wohl am einfachsten einfach die 2x 4-Port Karten über PCIe passthrough an die VM durchzureichen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Cool Master
Ich kenne Proxmox nicht, aber je nachdem ob du VLAN Tags verwendest („Ethernet trunking“) muss der Switch dahinter bei VM konfiguriert werden. Eigentlich die Portgruppe.
Dementsprechend müssen hier mehrere virtuelle Ebenen bedacht werden; auch das FO.
Virtuelle Adressen können beliebig viele auf einem Port auftauchen. Also wäre es bei mir wohl (OHNE MANAGED SWITCH) so, dass 1GBE in jeder Zone abrufbar wären und die MAC einer VM bei Ausfall auf den zweiten Port roamt in derselben Zone. (DMZ oder INT/LAN)
Mit einem managed Switch wäre es PAgP oder LACP, damit insgesamt das Bonding nutzbar wird.
 
  • Gefällt mir
Reaktionen: Cool Master
@0x7c9aa894

Alles klar, danke für die Info. Ich schau mir morgen mal PCIe Passthrough an. Ich müsste mal schauen ob ich da die Ports durchschleifen kann oder ob nur die gesamte NIC geht. Ich nehme mal an ich muss die NICs dann auch auf die Blacklist setzen ähnlich wie beim GPU-Passthrough, damit sich das Host-OS (Proxmox) diese nicht krallt? Wie stelle ich das am besten an ohne die 10 GBit NICs ebenfalls zu blocken. Ein "blacklist intel" dürfte da ja eher schwer werden.

@Merle

Der Server sitzt hinter zwei unmanaged Switches die auch kein VLAN können. Wollte das alles über Proxmox Regeln und nicht über den bzw. die Switches.
 
gibt es einen grund, warum du die netzwerkkarten separat ansprechen willst? du könntest nämlich auch die ganzen 1G interface zu einem bond zusammenfassen (und eventuell vlan getrennt) die VMs darauf verteilen.

willst du wirklich jeder VM ein 1G interface geben, dann musst du pro interface eine dazugehörige vmbrXX bridge erstellen und diese dann der VM geben. in dieser wird dann auch erst die ip konfiguriert.

Code:
#/etc/network/interfaces

auto lo
iface lo inet loopback

iface enp33s0f0 inet manual
iface enp33s0f1 inet manual
iface enp33s0f2 inet manual
iface enp33s0f3 inet manual

iface enp97s0f0 inet manual
iface enp97s0f1 inet manual
iface enp97s0f2 inet manual
iface enp97s0f3 inet manual

iface enp98s0f0 inet manual

# mgmt
auto vmbr0
iface vmbr0 inet static
        address 10.0.61.1/24
        netmask 255.255.255.0
        gateway 10.0.61.254
        bridge-ports enp98s0f0
        bridge-stp off
        bridge-fd 0

# lan0
auto vmbr_lan0
iface vmbr_lan0 inet manual
        bridge-ports enp33s0f0
        bridge-stp off
        bridge-fd 0

# lan1
auto vmbr_lan1
iface vmbr_lan1 inet manual
        bridge-ports enp33s0f1
        bridge-stp off
        bridge-fd 0

...
die VM für lan0 mit 10.0.61.240 bekommt dann als netzwerkinterface die bridge "vmbr_lan0". natürlich kannst du auch mehrere VMs auf z.b. vmbr_lan0 raufsetzen, die teilen sich dann den 1G link. daher eher die idee mit dem bonding:

Code:
iface enp33s0f0 inet manual
iface enp33s0f1 inet manual
iface enp33s0f2 inet manual
iface enp33s0f3 inet manual

auto bond_lan
iface bond_lan inet manual
      bond-slaves enp33s0f0 enp33s0f1 enp33s0f2 enp33s0f3
      bond-miimon 100
      bond-mode 802.3ad
      bond-xmit-hash-policy layer2+3

und dann die VMs für das lan auf das "bond_lan" zu konfigurieren. braucht natürlich den entsprechenden switch auf der gegenseite, erspart dir aber ein recht starres setup, weil du jederzeit mehr VMs fürs lan anlegen kannst.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: jb_alvarado, Sykehouse und Cool Master
Ich kenne Proxmox auch nicht, aber wie testest du denn die Interfaces, ob sie gehen? Man kann ja nicht ohne entsprechendes Routing und Angabe vom Default Gateway über mehrere Nics hinweg (vom Host aus) kommunizieren.

Warum nicht die 4 Lan und 4 DMZ jeweils zu einem Bond zusammenfügen und per Bridge an die VMs verteilen?

Edit: 0x8100 war schneller :-).
 
  • Gefällt mir
Reaktionen: Cool Master
@Cool Master ich glaube das passthrough für die NICs ist viel unproblematischer als das für die GPUs, das müsste sogar über die GUI gehen. Ich habs selbst noch nicht mit NICs probiert, aber es ist auf meiner ToDo Liste. Im Zweifelsfall ist das Proxmox Forum extrem kompetent.
 
  • Gefällt mir
Reaktionen: Cool Master
0x8100 schrieb:
gibt es einen grund, warum du die netzwerkkarten separat ansprechen willst?

Ja, damit würde jede VM einen eigenen Port bekommen, so war es zumindest geplant. Ich bin mit dem Plan aber auch nicht verheiratet. Was du schreibst mit der Bridge wäre auch eine Alternative. Schau ich mir morgen auch einmal an. Wenn das klappt werde ich es wohl so machen, wenn nicht habe ich immer noch PCIe Passthrough in der Hinterhand.

jb_alvarado schrieb:
aber wie testest du denn die Interfaces, ob sie gehen?

Ich habe in der GUI IPs gesetzt und angepingt. Die gehen alle. Wenn ich eine neue VM erstelle sehe ich die NICs aber nicht sondern nur "vmbr0".

@0x7c9aa894

Alles klar, schau es mir mal an :)
 
Bei den Karten sollte auch srv-io funktionieren, womit du relativ bequem und sauber den VMs gezielt Ports der Karten zuordnen kannst (dazu gibts bestimmt auch Infos bei proxmox im Wiki).
Alternativ für jeden Port eine Bridge einrichten und die VMs jeweils an die gewünschte Bridge hängen.

Cool Master schrieb:
Wenn ich eine neue VM erstelle sehe ich die NICs aber nicht sondern nur "vmbr0".
Weil PVE eine VM intern an eine Bridge hängen will/muss. Direkt an einen Port geht auf dem Weg nicht. Dafür wäre dann das Durchreichen des Geräts da.
 
  • Gefällt mir
Reaktionen: 0x7c9aa894 und Cool Master
Cool Master schrieb:
Ja, damit würde jede VM einen eigenen Port bekommen, so war es zumindest geplant.
Dafür brauchst Du keine "echten" NICs einfach pro Port eine vmbridge mit IP Range definieren und an beide VM anschließen.

Es kann auch Gründe geben warum man die VMs nur am NIC bertreiben will ...
 
  • Gefällt mir
Reaktionen: Cool Master
Ich empfehle für Proxmox die einschlägige Doku zu verwenden und ggf. bei Youtube nach Videos zu schauen.

Zu meiner Lösungsidee:
Wenn deine Switche unmanaged sind, dann tausche sie entweder gegen managebare aus oder verabschiede dich vom bond-Gedanken. Das geht mit 0815-Switchen nicht.

Und bitte - ich sehe das so häufig im Proxmox-Forum - gibt den Schnittstellen unter Proxmox keine IP.
Da muss für einfache Setups immer nur eine stehen, nämlich üblicherweise bei der ersten vmbr fürs Webinterface zum verwalten.

Da du einer VM oder einem Container immer nur eine solche vmbr zuweisen kannst (und nicht das physische Interface selbst), musst du für jedes Interface eine eigene vmbr erstellen.
Diese wiederum kannst du dann deinen Maschinen zuweisen.

Und deine IPs kommen dann IN die VM, aber nicht auf den Proxmox.

Ich habe das nie ausprobiert und weiß nicht wie Promox da reagiert.
Aber würdest du deine IPs so wie oben angegeben einrichten wollen, dann müsste sich Proxmox darüber beschweren, dass du IPs aus dem selben Subnetz auf verschiedene Interface legen willst.
(Auf Cisco-Routern geht das jedenfalls nicht (VRF mal außen vor)).
 
  • Gefällt mir
Reaktionen: Merle
Ok... Du willst keine VLANs/managed Switches, aber sind denn die Subnetze dieselben für LAN und DMZ dann?
Ich verstehe nicht wie das gehen soll... Man bräuchte 2 Gateways, wenn man 2 Subnetze in einem VLAN betreiben will oder übersehe ich was?
(Auf physical Routerports geht es dachte ich? @Arvyr)
 
Proxmox ist ein Hypervisor und kein Router! Das gedanklich bitte immer vor Augen halten.
Wenn gewünscht wird, mehrere Netze zu verwenden und daher auch mehrere Gateways, etc. gebraucht werden, dann kommt ein Router bzw. eine Firewall wie bspw. pfSense/OPNsense zum Einsatz.

Alternativ erledigt das ein physikalischer Router der an den physikalischen Switchen angeschlossen ist.

Proxmox verhält sich einfach wie ein virtueller Switch.
Man kann ihn, weil es nun mal auf Linux basiert, sicher auch zum Router umfunktionieren.
Das wäre aber wie, wenn du mit Stiften direkt auf der Tapete malst anstatt eine Tafel anzubringen und diese zu nutzen ;)
 
Ich hab gestern wohl einfach den Wald vor lauter LAN Kabel nicht mehr gesehen :D Ich habe es nun so gelöst, dass ich die Ports an die VM mittels PCIe Passthrough durchreiche. Das war super einfach und wie @0x7c9aa894 geschrieben hat deutlich leichter als GPUs. Ich habe IOMMU aktiviert und eingerichtet. Danach habe ich die VM Erstellt (Netzwerk deaktivert) und konnte dann unter Hardware einfach über Add --> PCI Device --> IOMMU Group 61 den Port hinzufügen.
 
  • Gefällt mir
Reaktionen: 0x7c9aa894
Zurück
Oben