KVM Windows Gast-VLAN-Tagging

KVM Windows Gast-VLAN-Tagging

Im Moment probiere ich einen neuen Cloud-Anbieter aus, der private Netzwerke ermöglicht. Dies ist eine Funktion, mit der Sie mehrere VLANs ausführen können. Da die Plattform, die wir erstellen werden, eine Linux-/Windows-Plattform ist und mehrere Umgebungen hat, werden wir sie mit einer VLAN-Konstruktion trennen. Bis zu diesem Punkt ist es ziemlich einfach.

Die beste Möglichkeit, VLAN-Tagging unter Windows zu verwenden, ist das „Realtek Ethernet Diagnostic Tool“ in Kombination mit der Realtek 8139-Karte. Es bietet Ihnen die Möglichkeit, eine VLAN-Schnittstelle zu erstellen.

Die Schnittstelle funktioniert so, wie ich sie konfiguriert habe, aber jetzt geht der Spaß erst richtig los. Eine andere Maschine im selben VLAN (10) empfängt NetBIOS, ARP und andere UDP-Kommunikation. Ich habe dies mit einem einfachen TCPdump-Befehl festgestellt:

19:32:44.247964 IP 10.0.10.30.netbios-ns > 10.0.10.255.netbios-ns: NBT UDP PACKET(137): REGISTRATION; REQUEST; BROADCAST
19:32:44.248057 IP 10.0.10.30.netbios-ns > 10.0.10.255.netbios-ns: NBT UDP PACKET(137): REGISTRATION; REQUEST; BROADCAST
19:32:44.310334 IP 10.0.10.30.netbios-ns > 10.0.10.255.netbios-ns: NBT UDP PACKET(137): REGISTRATION; REQUEST; BROADCAST
19:32:44.509278 IP6 fe80::a1dd:64c9:ae27:5659.60116 > ff02::1:3.hostmon: UDP, length 24
19:32:44.509955 IP 10.0.10.30.63646 > 224.0.0.252.hostmon: UDP, length 24
19:32:44.606923 IP6 fe80::a1dd:64c9:ae27:5659.60116 > ff02::1:3.hostmon: UDP, length 24

Wenn ich die Windows-Firewall vollständig deaktiviere, indem ich den Dienst stoppe oder die Schnittstelle zur privaten Gruppe hinzufüge und alles zulasse, passiert nichts. Ich habe Wireshark auf dem Windows-Rechner verwendet, um zu sehen, ob meine ICMP-Pakete vom Server akzeptiert werden, aber das wird in Wireshark nicht bemerkt.

Eine weitere seltsame Sache ist, dass, wenn ich von der Windows-Maschine zur Linux-Maschine pinge, das erste Timeout von der lokalen IP-Adresse kommt und die anderen 3 Timeouts von der externen Adresse (Standard-GW). Es sieht also so aus, als ob Windows die Schnittstelle für Pakete außer UDP nicht verarbeiten kann.

Im Moment ist diese Frage nicht wirklich beantwortet und stellt ein Problem dar, das noch niemand gelöst oder dokumentiert hat. Daher würde ich dies gerne mit Ihrer Hilfe lösen und einen ausführlichen Weblog-Beitrag erstellen, damit jeder einen Vorschlag hat.

Ich hoffe, dass mir jemand weiterhelfen kann. Mein Ziel ist es, in Windows 2008R2 mehrere VLAN-Schnittstellen zu haben, jede mit ihrem eigenen VLAN-Tag.

Antwort1

Zunächst einmal müssen Sie wirklich virtio_net verwenden und nicht e1000 oder rtl, da letztere beide emuliert werden, und das bedeutet im Grundelangsam. Da das Betriebssystem unter Windows selbst keine Möglichkeit hat, VLAN-Tags hinzuzufügen, erstellen Sie normalerweise eine getaggte Schnittstelle auf dem Host, fügen oben eine Brücke hinzu und verbinden Ihre VM mit dieser Brücke, die bereits getaggten Datenverkehr weiterleitet.

verwandte Informationen