Linux bridging + vlan mit Mellanox ConnectX-4 nur im promisc mode

KillerCow

Lt. Commander
🎅 Nikolaus-Rätsel-Elite
Registriert
Jan. 2012
Beiträge
1.623
Mahlzeit

Ich hab hier mal wieder ein "komisches" Phänomen. Es geht um zwei HP ProLiant DL380 Gen10, jeweils bestückt mit einem LOM HPE 640FLR-SFP28 Dual (frisch verbaut, nachdem ich mich mit irgendwelchen Emulex-Teilen herumgeplagt habe). Installiert ist Proxmox VE in aktueller Version, Treiber für die Karten ist "mlx5_core". Auf den Karten in beiden Systemen ist dieselbe Firmware installiert.

Auf einem der beiden Systeme (System A) sind direkt auf den Interfaces (eno5np0, eno6np1) VLAN-Interfaces angelegt mit statischer IP Konfiguration, also in der Form "eno5np0.<VLANID>" und "eno6np1.<VLANID>". Funktioniert einwandfrei.

Auf System B hängt "eno5np0" als Slave an "vmbr0" (da sind via bridge-vids die benötigten VLANs eingetragen). Egal, ob ich nun ein VLAN-Interface "vmbr0.<VLANID>" oder "eno5np0.<VLANID>" erstelle, ich komme über dieses Interface weder rein, noch raus. Sobald ich jetzt die eno5np0 in den promiscuous mode schalte, funktioniert alles.
Hab jetzt schon ein bisschen mit vlan-filter und vlan-offload Features der Netzwerkkarte herumgespielt, ohne Besserung.

Was mich wundert, auf System A sind die Schnittstellen nicht im promisc mode und da funktioniert alles. Hängt das auf System B an der Konstellation mit der Bridge? Wird da im Untergrund noch irgendwas mit den Slaveinterfaces gemacht, was das erklären kann?
Ich kann leider auf dem System aktuell nicht so viel am Netzwerk herumfummeln, sonst hätte ich das dort einmal ohne Bridge versucht, zum Gegentest.

Wäre cool, wenn mich hier jemand aufhellen könnte oder Ideen hat, was ich noch schauen/probieren kann. Funktioniert zwar mit promisc mode, aber ich würde gerne noch verstehen, was da die Ursache ist.
Wenn ich noch Infos liefern soll, einfach melden.

Beste Dank für jedwede Info :)
Ergänzung ()

Nachtrag:
Bin gerade noch über was gestolpert in dem Kontext. Scheint am "vlan-aware yes" zu liegen. Damit hatten zumindest andere auch ein Problem und die Lösung war da: promisc mode.

Trotzdem nehme ich weitere Infos/Ideen gerne an.

Hier ein älteres Thema dazu:
https://forums.developer.nvidia.com...nless-manually-put-in-promiscuous-mode/206083
 
Zuletzt bearbeitet:
Das liegt an der Bridge, da die Bridge den Lead hat und ein VLAN daran leider nicht dem Adapter darunter mitteilt, dass er auch die VLANs annehmen soll. Entsprechend verwirft der Adapter 802.1Q getaggte Pakete. Mit Prom Mode on verwirft er die Pakete erst mal nicht, so dass die Pakete auch zur Bridge gelangen.
 
Rache Klos schrieb:
Das liegt an der Bridge, da die Bridge den Lead hat und ein VLAN daran leider nicht dem Adapter darunter mitteilt, dass er auch die VLANs annehmen soll.
Dann hätte ich erwartet, dass es klappt, wenn das VLAN-Interface direkt am Hauptinterface angedockt ist, so wie es bei System A gebaut ist und dort ja auch funktioniert. Offenbar ist die bloße Existenz der Bridge als Parent aber das Problem in dem Fall.

Interessant ist (konnte ich noch nicht testen), dass es mit "vlan-aware no" an der Bridge wohl funktioniert und dann werden doch auch nur VLAN-Interfaces an die Bridge gestöpselt oder nicht!? Naja, ich hoffe ich bekomme nochmal so eine Kiste mit der Netzwerkkarte in die Hände für nen paar Stunden zum Testen.

Danke für deinen Einwurf!
 
Zurück
Oben