Netzwerkprobleme, aber nur mit Windows-VMs und nur auf einer Cluster-Node

Hubert Köppen

New Member
Sep 22, 2017
4
0
1
59
Hallo,
ich habe einen No-Subscription-2-Node-Cluster von 4.4 auf Proxmox 5.0 aktualisiert. Die beiden Nodes sind jeweils mit einem bond0 aus 2 x 1 GB verbunden. Also jeweils ein eth0 und eth1-Host-Netzadapter als bond0 zusammengefasst und der gesamte Netzverkehr (Cluster und VM-Betrieb, etc) läuft über dieses eine bond0. Als Gateway und Router zum Internet läuft eine Fritzbox 7490 (192.168.1.1).
Am ersten Node (prox-1) laufen auf rund 100 GB RAM sowohl Linux-LXC-Container als auch KVM-Maschinen (Lin und Win) problemlos - vor und nach dem Upgrade auf PVE 5.0.
Am zweiten Node (prox-2) laufen zwei Linux-LXC-Container problemlos, auch nach der Aktualisierung beider Nodes.
PROBLEM: Ich habe auf unterschiedlichste Arten versuchten einen von Hyper-V kommenden Windows-Server auf prox-2 zu migrieren - konnte aber nie eine stabile, korrekte Netzwerkverbindung erzielen. Mittlerweile habe ich sogar eine frische Windows-Neu-installation auf mehrere Arten versucht, kann erfolgreich und performant installieren (mit den Plattentypen und -themen komme ich klar), scheitere aber immer an folgendem, nur auf dieser Node und nur bei Windows-KVM-maschinen:
Die VM hat einen E1000-vmbr0-Netzadapter mit z.B. der IP: 192.168.1.230/24 und zeigt aufs Gateway 192.168.1.1. Ich kann dann z.B. das Gateway nicht anpingen, oder nach 1-2 min nicht mehr anpingen, obwohl ich z.B. den prox-2-Host unter 192.168.1.200 anpingen kann. Auf dem prox-1 existieren identischen Konfigurationen und alles funktioniert. Firewalls sind momentan natürlich ausgeschaltet.
Vermutung: Da ich selbst bei einer simplen Standard-neu-Installation einer Win-KVM-Maschine Netzwerkprobleme habe, vermute ich die Probleme beim Bonding.
Und siehe da: "dmesg | grep eth1" bzw eth0 und/ oder journalctl | grep bond0" zeigen auf dem funktionierenden prox-1 eine r8169-Karte und eine Intel pro/1000-Karte die ohne Fehlermeldungen zusammenarbeiten.
Am problematischen prox-2-Node sieht dies aber so aus:

ep 21 19:39:19 prox-2 kernel: r8169 0000:09:00.0 eth1: link down
Sep 21 19:39:19 prox-2 kernel: bond0: link status definitely down for interface eth1, disabling it
Sep 21 19:39:23 prox-2 kernel: r8169 0000:09:00.0 eth1: link up
Sep 21 19:39:23 prox-2 kernel: bond0: link status definitely up for interface eth1, 1000 Mbps full duplex
Sep 21 19:39:35 prox-2 kernel: r8169 0000:09:00.0 eth1: link down
Sep 21 19:39:35 prox-2 kernel: bond0: link status definitely down for interface eth1, disabling it
Sep 21 19:40:18 prox-2 kernel: r8169 0000:09:00.0 eth1: link up
Sep 21 19:40:18 prox-2 kernel: bond0: link status definitely up for interface eth1, 1000 Mbps full duplex
Sep 22 00:21:34 prox-2 kernel: r8169 0000:09:00.0 eth1: link down
Sep 22 00:21:34 prox-2 kernel: bond0: link status definitely down for interface eth1, disabling it
Sep 22 00:21:38 prox-2 kernel: r8169 0000:09:00.0 eth1: link up
Sep 22 00:21:38 prox-2 kernel: bond0: link status definitely up for interface eth1, 1000 Mbps full duplex
Sep 22 00:21:50 prox-2 kernel: r8169 0000:09:00.0 eth1: link down
Sep 22 00:21:50 prox-2 kernel: bond0: link status definitely down for interface eth1, disabling it
Sep 22 00:22:33 prox-2 kernel: r8169 0000:09:00.0 eth1: link up
Sep 22 00:22:33 prox-2 kernel: bond0: link status definitely up for interface eth1, 1000 Mbps full duplex


Sep 22 10:36:45 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:36:45 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:41:48 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:41:54 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:41:55 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:47:07 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:47:07 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:48:05 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)
Sep 22 10:48:05 prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)


Mir scheint daher, dass etwas bei der Netzwerk-Konfiguration des prox-2 und seines bond0-Geräts nicht funktioniert. Kann mir hierzu jemand hilfreiche Hinweise geben?
 
Erster Einfall, Kabel und Karte prüfen. ;)
 
Danke, Alwin,
ich denke auch, dass das Problem nicht , wie meine Überschrift andeutet, ein Problem der KVM-Win-Maschinen ist, sondern, dass etwas am Bonding falsch läuft. Ein ifconfig auf beiden Nodes zeigt, dass jeweils die gleiche MAC-Adresse für die Adapter eth0, eth1, bond0 und vmbr0 gesetzt sind. Allerdings wird in dem Gateway-Router Fritz!Box 7490 gemedet, dass alle 7 prox-1-VMs und der Host prox-1 auf LAN 1 ankommen, während bei prox-2 und einem LXC-Container als Ports LAN 2 und LAN 3 gemeldet werden.
Mir scheint, dass es an der Verkabelung liegen könnte. Darauf deuten auch andere (Forums-)Beiträge hin. Die Fritz!Box weiß sozusagen nicht, das beide Switchports zu einem Gerät gehören. Ist das plausibel?
 
Der Link von eth1 wird ständig als Up/Down gemeldet, je nach Konfig wird dann eth1 wieder aktiv. Die Frage ist, wieso verliert eth1 den Link.
 
Hallo Alwin,
nach Änderung der Verkabelung und Neustarts der Prox-2-Hauptmaschine ist nun der Link eth1 dauerhaft aktiv. Ein "journalctl | grep eth1" wirft nun keine neue Meldungen mehr aus. Beide Karten (eth0 und eth1) die zu meinem bond0-Interface gehören, arbeiten sauber. Dennoch bleibt das Hauptproblem bestehen, das ständig folgendes geloggt wird:
"prox-2 kernel: vmbr0: received packet on bond0 with own address as source address (addr:00:24:1d:ce:26:a1, vlan:0)"

Ich vermute, dass ich Änderungen an der Konfiguration des bond0 durchführen muss. Dazu schreibe ich gleich einen weiteren Eintrag.
 
Nachdem ich verschiedene Änderungen, die ich gleich aufliste, durchgeführt habe, habe ich nun erreicht, dass die Meldungen bzgl. "kernel: vmbr0: received packet on bond0 with own address as source address " nun verschwunden sind.
Was ich gerne noch vom Forum hätte ist ein Hinweis, was meine Änderungen für die Zukunft bedeuten.

Geändert habe ich jeweils meine Bond0-Konfiguration (über die meine vmbr0 arbeitet) und dann neu gestartet. Getestet habe ich nacheinander folgende bond0-Modus-Optionen: von balance-rr (Ursprungszustand) über 802.3ad und balance-xor sowie balance-alb wechselte ich zum nun funktionierenden balance-tlb. Nach einem Neustart funktioniert der Cluster, das Netzwerk und die Meldungen sind weg.
ABER: laut https://pve.proxmox.com/wiki/Network_Configuration heißt es:
Adaptive transmit load balancing (balance-tlb):
Linux bonding driver mode that does not require any special network-switch support. The outgoing network packet traffic is distributed according to the current load (computed relative to the speed) on each network interface slave. Incoming traffic is received by one currently designated slave network interface. If this receiving slave fails, another slave takes over the MAC address of the failed receiving slave.

Verstehe ich richtig, dass dies nun bedeutet, dass meine 2 x 1GBit - Bond0-Konfiguration mir nun 2 GB auswärts ermöglicht, aber nur 1 GB einwärts?
 
Verstehe ich richtig, dass dies nun bedeutet, dass meine 2 x 1GBit - Bond0-Konfiguration mir nun 2 GB auswärts ermöglicht, aber nur 1 GB einwärts?
Es verteilt den Traffic auf alle Interfaces auswärts (versucht Gleichverteilung der Bandbreite), aber nur ein Interface einwärts ist aktiv, bei Ausfall von diesem, wird ein anderes Interface im Bond aktiv. Also Load-balancing auswärts, Active-Backup einwärts.
https://www.kernel.org/doc/Documentation/networking/bonding.txt

Vlan0: https://supportforums.cisco.com/t5/wan-routing-and-switching/what-is-vlan0/td-p/1817088
Problemen mit Switch: https://forum.proxmox.com/threads/bond0-received-packet-with-own-address-as-source-address.9742/
balence-rr, normales verhalten -> https://bugzilla.redhat.com/show_bug.cgi?id=709316
 

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!