TCP-Kommunikation – Virtuelle HyperV-Maschine öffnet Port auf Host

TCP-Kommunikation – Virtuelle HyperV-Maschine öffnet Port auf Host

Hier ist die Zusammenfassung meines Kampfes, von einer auf derselben Maschine gehosteten VM aus eine Verbindung zu einem Port auf dem Hypervisor-Host herzustellen:

  • Einrichten im Hyper-V-Manager:

    • Einstellungen für virtuellen Switch
    • Intern
    • „Virtuelle LAN-Identifizierung für Verwaltungsbetriebssystem aktivieren“
    • VLAN-Nummer 2
  • Einrichten der virtuellen Maschine (Client-01)

    • Netzwerkadaptereinstellungen
    • „Virtuelle LAN-Identifizierung aktivieren“
    • VLAN-Nummer 2
  • Konfigurierte IP4 auf Adapter des Hosts desktop01 (Host): 192.168.5.1 255.255.255.0

  • Konfigurierte IP4 auf Adapter des Host-Clients-01 (VM): 192.168.5.10 255.255.255.0

  • Der Client kann erfolgreich zum Port 80 „http://desktop01“ navigieren, der auf dem Host ausgeführt wird (auf dem Host wird eine kleine Website ausgeführt).

  • Ping 192.168.5.1 vom Client ist OK

  • Ping 192.168.5.10 vom Host ist OK

  • 10000 als OK für eingehende Nachrichten in der Windows-Firewall auf dem Host hinzugefügt

  • Auf dem Host wurde ein Listener auf 10000 geöffnet, aber auf dem Client:

PS C:\Users\user-01> test-netconnection -ComputerName 192.168.5.1 -Port 10000
WARNING: TCP connect to 192.168.5.1:10000 failed

ComputerName           : 192.168.5.1
RemoteAddress          : 192.168.5.1
RemotePort             : 10000
InterfaceAlias         : Ethernet
SourceAddress          : 192.168.5.10
PingSucceeded          : True
PingReplyDetails (RTT) : 0 ms
TcpTestSucceeded       : False

Der Listener ist ein C#-Programm, das ich geschrieben habe. Sie vermuten vielleicht ein Problem damit, aber PowerShell hat kein Problem damit, von derselben Maschine aus eine Verbindung dazu herzustellen. Es riecht also nach einer Firewall-Sache, aber ich habe dort bereits einen Eintrag gemacht und in der Protokolldatei steht nichts. Was ist los?

Antwort1

Ich bin von „VLAN Nummer 2“ auf „Standard-Switch“ zurückgegangen und jetzt funktioniert alles einwandfrei. Die Lektion besteht also darin, den Standard-Switch zu verwenden.

verwandte Informationen