Die Arbeit mit virtuellen Maschinen ist in der modernen IT-Welt unverzichtbar, und Hyper-V von Microsoft ist eine der führenden Virtualisierungsplattformen. Sie bietet eine robuste Umgebung für Server, Desktops und Entwicklungszwecke. Doch eine häufige Herausforderung, auf die Benutzer stoßen, ist die eingeschränkte oder gar fehlende Unterstützung für USB-Geräte innerhalb der virtuellen Maschinen. Während grundlegende Funktionen oft über den Erweiterten Sitzungsmodus abgedeckt werden, benötigen viele Anwendungen und spezielle Hardware eine tiefere Integration. Die gute Nachricht: Es gibt Wege, diese Hürden zu überwinden und fast volle USB-Funktionen in Ihren Hyper-V-VMs zu ermöglichen. Dieser Artikel führt Sie detailliert durch die verschiedenen Methoden, von einfachen Umleitungen bis hin zu echtem Passthrough.
Warum ist USB-Passthrough in Hyper-V kompliziert?
Bevor wir uns den Lösungen widmen, ist es wichtig zu verstehen, warum USB-Geräte in Hyper-V-VMs nicht einfach „Plug-and-Play” sind. Hyper-V ist ein Typ-1-Hypervisor, das heißt, er läuft direkt auf der Hardware des Host-Servers. Die virtuellen Maschinen haben keinen direkten Zugriff auf die physische Hardware. Stattdessen kommunizieren sie über Virtualisierungs-Layer und emulierte Hardware. Dies bietet hervorragende Sicherheit und Leistung für die meisten Komponenten, erschwert aber den direkten Zugriff auf „Flug”-Geräte wie USB, die oft eine enge und exklusive Verbindung zur Hardware benötigen.
Im Gegensatz zu einigen Typ-2-Hypervisoren (wie VirtualBox, die innerhalb eines Host-Betriebssystems laufen), bietet Hyper-V keine einfache Option im GUI, um einen USB-Stick per Mausklick an eine virtuelle Maschine durchzureichen. Hier müssen wir tiefer in die Materie eintauchen und die vorhandenen Mechanismen nutzen oder spezielle Hardware-Passthrough-Methoden anwenden.
Methode 1: Der Erweiterte Sitzungsmodus (Für grundlegende USB-Geräte)
Der Erweiterte Sitzungsmodus ist die einfachste und am häufigsten genutzte Methode, um grundlegende USB-Geräte und andere Ressourcen (wie Drucker, Zwischenablage) an eine Windows-Client-VM (z.B. Windows 10/11) zu übergeben. Technisch basiert er auf dem Remotedesktop-Protokoll (RDP), das eine verbesserte Verbindung zwischen dem Host und der VM herstellt. Er ist ideal für USB-Speichersticks, Webcams oder Mikrofone.
Voraussetzungen:
- Hyper-V-Host mit Windows Server (2012 R2 oder neuer) oder Windows 10/11 Pro/Enterprise.
- Die virtuelle Maschine muss ein unterstütztes Windows-Client-Betriebssystem (z.B. Windows 8.1, 10, 11) sein. Server-Betriebssysteme unterstützen diesen Modus in der Regel nicht direkt als Client.
- Die Integrationsdienste der VM müssen installiert und aktuell sein.
- Auf der VM muss der Remotedesktop-Dienst aktiviert sein.
Schritt-für-Schritt-Anleitung:
- Aktivieren des Erweiterten Sitzungsmodus auf dem Hyper-V-Host:
- Öffnen Sie den Hyper-V-Manager.
- Klicken Sie in der linken Spalte mit der rechten Maustaste auf den Host-Namen und wählen Sie Hyper-V-Einstellungen.
- Navigieren Sie zu Server -> Erweiterter Sitzungsmodus.
- Stellen Sie sicher, dass „Erweiterten Sitzungsmodus zulassen” aktiviert ist.
- Konfigurieren der VM für den Erweiterten Sitzungsmodus:
- Starten Sie die virtuelle Maschine.
- Stellen Sie sicher, dass die Integrationsdienste installiert sind (Aktion -> Integrationsdienste einlegen im VM-Verbindungsfenster, falls nicht automatisch geschehen).
- Überprüfen Sie, ob der Remotedesktop auf der VM aktiviert ist (Einstellungen -> System -> Remotedesktop).
- Starten Sie die VM neu, falls Sie Änderungen vorgenommen haben.
- Verbinden und USB-Geräte umleiten:
- Schließen Sie das USB-Gerät an den Hyper-V-Host an.
- Verbinden Sie sich mit der VM über das Hyper-V-Manager-Verbindungsfenster.
- Wenn der Erweiterte Sitzungsmodus richtig konfiguriert ist, sollte beim Verbindungsversuch ein Dialogfenster erscheinen: „Einstellungen für die erweiterte Sitzung”.
- Klicken Sie auf Lokale Ressourcen.
- Klicken Sie auf Mehr… unter „Lokale Geräte und Ressourcen”.
- Erweitern Sie den Bereich „USB-Geräte” und setzen Sie Haken bei den USB-Geräten, die Sie an die VM umleiten möchten.
- Bestätigen Sie mit OK und dann Verbinden.
Einschränkungen:
Der Erweiterte Sitzungsmodus ist eine Umleitung, kein echtes Passthrough. Er funktioniert nicht zuverlässig mit allen USB-Geräten, insbesondere nicht mit Geräten, die einen direkten, niedrigen Zugriff erfordern (z.B. einige Dongles, spezielle Messgeräte, bootfähige USB-Sticks). Die Leistung kann variieren, und die Geräte sind nicht „nativ” in der VM vorhanden.
Methode 2: RemoteFX USB-Umleitung (Für spezifische USB-Geräte)
Die RemoteFX-USB-Umleitung (manchmal auch als „erweiterte USB-Umleitung” bezeichnet) ist eine leistungsfähigere RDP-basierte Umleitung, die es ermöglicht, auch solche USB-Geräte umzuleiten, die der Erweiterte Sitzungsmodus nicht unterstützt. Sie kann für Windows Server-VMs und Client-VMs gleichermaßen verwendet werden und bietet eine Art „virtuellen USB-Anschluss” in der VM, auf den das physische Gerät abgebildet wird. Die Namensgebung kann hier irreführend sein, da die RemoteFX vGPU-Funktion (für Grafik) in neueren Windows Server-Versionen oft nicht mehr aktiv genutzt oder sogar als veraltet gilt, aber die USB-Umleitungsfunktion bleibt relevant.
Voraussetzungen:
- Hyper-V-Host und VM mit Windows Server oder Windows Client OS.
- Integrationsdienste in der VM installiert und aktuell.
- Remotedesktop-Dienst auf der VM aktiviert.
- Auf Host und VM müssen bestimmte Gruppenrichtlinien konfiguriert werden.
- Eine aktive RDP-Verbindung zur VM ist erforderlich, die über das Hyper-V-Verbindungsfenster hergestellt wird.
Schritt-für-Schritt-Anleitung:
- Konfiguration der Gruppenrichtlinie auf dem Host:
- Öffnen Sie den Gruppenrichtlinieneditor auf dem Hyper-V-Host (
gpedit.msc
). - Navigieren Sie zu Computerkonfiguration -> Administrative Vorlagen -> Windows-Komponenten -> Remotedesktopdienste -> Remotedesktop-Sitzungshost -> Geräte- und Ressourcenumleitung.
- Suchen Sie die Richtlinie „Umleitung von unterstützten Plug & Play-Geräten nicht zulassen” und setzen Sie sie auf Deaktiviert.
- Suchen Sie die Richtlinie „Umleitung anderer unterstützter RemoteFX-USB-Geräte zulassen” und setzen Sie sie auf Aktiviert.
- Wenden Sie die Änderungen an und führen Sie
gpupdate /force
aus. Starten Sie den Host ggf. neu.
- Öffnen Sie den Gruppenrichtlinieneditor auf dem Hyper-V-Host (
- Konfiguration der Gruppenrichtlinie in der VM:
- Öffnen Sie den Gruppenrichtlinieneditor in der virtuellen Maschine (
gpedit.msc
). - Navigieren Sie zu Computerkonfiguration -> Administrative Vorlagen -> Windows-Komponenten -> Remotedesktopdienste -> Remotedesktop-Sitzungsclient -> RemoteFX-USB-Geräteumleitung.
- Suchen Sie die Richtlinie „RemoteFX-USB-Geräteumleitung für diesen Computer zulassen” und setzen Sie sie auf Aktiviert.
- Wählen Sie im Dropdown-Menü die Option „Administratoren und Benutzer” oder „Nur Administratoren”, je nachdem, wer USB-Geräte umleiten darf.
- Wenden Sie die Änderungen an und führen Sie
gpupdate /force
aus. Starten Sie die VM ggf. neu.
- Öffnen Sie den Gruppenrichtlinieneditor in der virtuellen Maschine (
- USB-Gerät über RDP umleiten:
- Schließen Sie das USB-Gerät an den Hyper-V-Host an.
- Stellen Sie eine Verbindung zur VM über das Hyper-V-Verbindungsfenster her.
- Im Verbindungsfenster klicken Sie auf Erweiterte Sitzungseinstellungen oder direkt auf das Symbol für lokale Ressourcen.
- Navigieren Sie zu Lokale Ressourcen -> Mehr….
- Im Dialog finden Sie eine Kategorie „Andere unterstützte RemoteFX-USB-Geräte”. Hier werden nun USB-Geräte angezeigt, die für die Umleitung zur Verfügung stehen.
- Wählen Sie das gewünschte USB-Gerät aus und stellen Sie die Verbindung her.
Einschränkungen:
Auch die RemoteFX-USB-Umleitung ist eine Form der Umleitung und nicht des direkten Passthrough. Sie ist leistungsfähiger als der Erweiterte Sitzungsmodus, kann aber immer noch Probleme mit extrem zeitkritischen oder speziellen Geräten verursachen. Ein Gerät kann nur von einer VM gleichzeitig verwendet werden, und die Umleitung funktioniert nur, solange eine RDP-Sitzung besteht. Bootfähige USB-Geräte sind weiterhin nicht über diese Methode nutzbar.
Methode 3: Diskrete Gerätezuweisung (DDA) – Echtes USB-Passthrough
Die Diskrete Gerätezuweisung (DDA), oft auch als „PCIe-Passthrough” bezeichnet, ist die einzige Methode, die echtes Hardware-Passthrough in Hyper-V ermöglicht. Dabei wird ein physisches PCIe-Gerät (wie eine dedizierte USB-Controller-Karte oder eine GPU) direkt einer einzelnen virtuellen Maschine zugewiesen. Die VM erhält exklusiven und nativen Zugriff auf dieses Gerät, als wäre es direkt in ihr installiert. Dies ist die Lösung für anspruchsvollste Szenarien, wie bootfähige USB-Geräte, USB-Dongles mit spezieller Treibersoftware, oder Geräte, die eine sehr niedrige Latenz erfordern.
Voraussetzungen (sehr wichtig!):
- Hyper-V-Host mit Windows Server (2016 oder neuer) oder Windows 10/11 Pro/Enterprise.
- CPU mit SLAT (Second Level Address Translation) und IOMMU-Unterstützung (Intel VT-d oder AMD-Vi), die im BIOS/UEFI des Hosts aktiviert sein muss.
- Die virtuelle Maschine muss eine Generation 2 VM sein.
- Das physische Gerät (z.B. ein dedizierter USB-Controller, *nicht* der Onboard-Controller, der oft von vielen anderen Systemkomponenten genutzt wird) muss DDA-kompatibel sein. Prüfen Sie dies mit
Get-PnpDevice -PresentOnly | Where-Object {($_.Class -eq 'System') -and ($_.FriendlyName -like '*controller*')}
und dann mitGet-VMHostAssignableDevice
in PowerShell. - Alle Treiber des Geräts müssen auf dem Host deinstalliert oder zumindest deaktiviert sein, bevor es der VM zugewiesen wird.
Schritt-für-Schritt-Anleitung (PowerShell erforderlich!):
Diese Schritte müssen in einer PowerShell-Sitzung mit Administratorrechten auf dem Hyper-V-Host ausgeführt werden.
- Identifizieren des USB-Controllers für DDA:
Zuerst müssen Sie den Standortpfad des USB-Controllers ermitteln, den Sie der VM zuweisen möchten. Schließen Sie den Controller an den Host an.
Get-PnpDevice -PresentOnly | Where-Object {$_.Class -eq "USBController"} | Select-Object FriendlyName, InstanceId, Status
Notieren Sie sich die
InstanceId
des Controllers, den Sie durchreichen möchten (z.B. eine zusätzliche PCIe-USB-Karte). Typischerweise sieht diese aus wiePCIVEN_XXXX&DEV_YYYY&SUBSYS_ZZZZZZZZ&REV_AABBBBBBBBBBBBBBBB
. - Deaktivieren des USB-Controllers auf dem Host:
Der Host darf keinen Zugriff mehr auf das Gerät haben.
Disable-PnpDevice -InstanceId "<InstanceId des Controllers>"
Ersetzen Sie
<InstanceId des Controllers>
durch den zuvor ermittelten Wert. - Dismounten des Geräts für DDA:
Dies bereitet das Gerät für die Zuweisung vor, indem es vom Host-Treiberstapel entfernt wird.
Dismount-VMHostAssignableDevice -InstanceId "<InstanceId des Controllers>"
- Zuweisen des USB-Controllers zur virtuellen Maschine:
Weisen Sie das Gerät der gewünschten VM zu.
Add-VMAssignableDevice -VMName "<Name Ihrer VM>" -LocationPath (Get-PnpDevice -InstanceId "<InstanceId des Controllers>").LocationPaths
Ersetzen Sie
<Name Ihrer VM>
durch den Namen Ihrer virtuellen Maschine. - Starten der VM und Installation der Treiber:
Starten Sie die virtuelle Maschine. Im Geräte-Manager der VM sollte der zugewiesene USB-Controller nun als unbekanntes Gerät erscheinen. Installieren Sie die entsprechenden Treiber des Controllers innerhalb der VM. Danach können Sie USB-Geräte direkt an die physischen Ports des zugewiesenen Controllers anschließen, und sie erscheinen in der VM.
- Entfernen der Zuweisung (falls nötig):
Wenn Sie das Gerät vom Host trennen oder einer anderen VM zuweisen möchten, müssen Sie die Schritte umkehren:
Remove-VMAssignableDevice -VMName "<Name Ihrer VM>" -LocationPath (Get-PnpDevice -InstanceId "<InstanceId des Controllers>").LocationPaths
Mount-VMHostAssignableDevice -InstanceId "<InstanceId des Controllers>"
Enable-PnpDevice -InstanceId "<InstanceId des Controllers>"
Starten Sie den Host ggf. neu.
Vorteile:
- Echtes Passthrough: Die VM hat nativen Zugriff auf das Gerät, was maximale Kompatibilität und Leistung bietet.
- Niedrige Latenz: Ideal für zeitkritische Anwendungen oder spezielle Hardware.
- Bootfähig: Ein bootfähiger USB-Stick kann über einen DDA-Controller an die VM übergeben werden.
Nachteile:
- Komplexität: Die Einrichtung erfordert fortgeschrittene PowerShell-Kenntnisse und eine sorgfältige Konfiguration.
- Exklusiver Zugriff: Das zugewiesene Gerät ist nicht mehr für den Hyper-V-Host oder andere VMs verfügbar.
- Hardware-Anforderungen: Erfordert IOMMU-fähige Hardware und eine dedizierte PCIe-USB-Controller-Karte (Onboard-Controller funktionieren selten).
- Migration: Eine VM mit DDA-Gerät kann nicht live migriert werden.
Alternative: USB-over-IP-Software
Für Szenarien, in denen DDA nicht möglich oder zu aufwendig ist, oder wenn USB-Geräte über ein Netzwerk freigegeben werden sollen, gibt es kommerzielle USB-over-IP-Lösungen. Diese Software (z.B. USB Network Gate, VirtualHere) installiert einen Server auf dem Hyper-V-Host und einen Client in der VM. Das USB-Gerät wird virtuell über das Netzwerk an die VM umgeleitet.
Vorteile:
- Sehr flexibel, auch über große Distanzen nutzbar.
- Keine IOMMU-Hardware erforderlich.
- Kann USB-Geräte für mehrere VMs oder sogar physische Clients über das Netzwerk bereitstellen (wenn die Software dies unterstützt).
Nachteile:
- Kostenpflichtig.
- Performance-Overhead durch das Netzwerkprotokoll.
- Abhängigkeit von der Netzwerkverbindung.
- Nicht ideal für extrem zeitkritische Anwendungen.
Häufige Probleme und Fehlerbehebung
- Integrationsdienste nicht installiert/aktuell: Ohne diese Dienste funktionieren die RDP-basierten Umleitungen nicht korrekt. Installieren oder aktualisieren Sie sie über Aktion -> Integrationsdienste einlegen.
- RDP auf der VM nicht aktiviert: Überprüfen Sie die Remotedesktop-Einstellungen in der VM.
- Gruppenrichtlinienkonflikte: Stellen Sie sicher, dass keine anderen Richtlinien die USB-Umleitung blockieren. Führen Sie
gpupdate /force
aus und starten Sie die Systeme neu. - Firewall: Überprüfen Sie, ob die Firewall auf Host oder VM RDP-Verbindungen blockiert.
- Gerät nicht DDA-kompatibel: Nicht alle PCIe-Geräte sind für DDA geeignet. Überprüfen Sie die Dokumentation des Hardwareherstellers und nutzen Sie
Get-VMHostAssignableDevice
. - IOMMU/VT-d/AMD-Vi nicht im BIOS aktiviert: Ohne diese Einstellung funktioniert DDA nicht.
- Fehlende Gerätetreiber: Nach DDA muss der Treiber für das durchgereichte Gerät in der VM installiert werden.
Fazit
Das Ermöglichen voller USB-Funktionen in Hyper-V-Umgebungen ist machbar, erfordert aber je nach Anwendungsfall unterschiedliche Herangehensweisen. Für die meisten grundlegenden Geräte ist der Erweiterte Sitzungsmodus ausreichend und einfach zu konfigurieren. Wenn Sie spezifischere oder anspruchsvollere USB-Geräte wie Dongles oder Messgeräte benötigen, bietet die RemoteFX-USB-Umleitung eine gute Alternative. Für Szenarien, die höchste Leistung, nativen Zugriff oder bootfähige USB-Geräte erfordern, ist die Diskrete Gerätezuweisung (DDA) die ultimative Lösung, wenngleich sie die komplexeste ist und spezielle Hardware-Anforderungen stellt. Überlegen Sie sorgfältig, welche Methode am besten zu Ihren Bedürfnissen passt, um das Beste aus Ihrer Hyper-V-Umgebung herauszuholen.