Hyper-V USB-enhetsåtkomst: 4 bästa anslutningsmetoder

Hyper-V utmärker sig som en robust hypervisor för företag. Men dess stöd för USB-enheter är fortfarande en av dess största brister. Även om användare förväntar sig en enkel ”passthrough”-växling, krävs det i praktiken en bättre och mer praktisk strategi.

Varning: 

Hyper-V har ingen inbyggd ”anslut”-knapp för USB-styrenheter. Därför kan Hyper-V inte ansluta USB-enheter, såsom skannrar, webbkameror, donglar osv., fysiskt till en virtuell dator på hårdvarunivå. 

Eftersom den inbyggda USB-passthrough-funktionen i Hyper-V inte är ett gångbart alternativ finns det indirekta metoder: 

• USB-over-IP: Denna metod använder nätverksbaserade USB-hubbar eller programvara från tredje part för att ansluta lokala enheter till en V;
• RDP-omdirigering: Denna metod hjälper dig att komma åt lokala enheter via en Fjärrskrivbordssession;
• Offline-diskmappning: Denna metod hjälper dig att komma åt USB-lagring genom att presentera den för ett system som en fysisk diskenhet;
• DDA (Discrete Device Assignment): Denna metod fungerar genom att tilldela en komplett PCIe-USB-styrenhet direkt till en virtuell dator på hårdvarunivå;

I den här artikeln förklarar vi Hyper-V:s möjligheter och begränsningar samt jämför fördelarna och nackdelarna med varje alternativ metod, för att hjälpa dig att hitta rätt metod som passar ditt arbetsflöde. 

Obs för Linux-specifika användare: Metoder, som Enhanced Session Mode och inbyggd RDP-omdirigering, är särskilt utformade för Windows-användare. Men om du är en Linux-användare rekommenderas det att du går direkt till metoden med USB Network Gate. Detta är den mest stabila lösningen för att köra arbetsflöden i en Linux-VM. DDA är också inte tillgängligt för Linux-gäst-VM:ar.

Nu ska vi prata om de fyra tillfälliga lösningar vi lovade.

Metod 1: Inbyggd enhetsomdirigering via RDP

Huvudmål:

RDP gör det möjligt för användare att snabbt få åtkomst till filer och kringutrustning på nätverksanslutna virtuella datorer. Enheter, såsom webbkameror och skrivare, gynnas av optimal prestanda genom omdirigering på hög nivå. Omdirigering på låg nivå bör helst reserveras för maskinvara som är beroende av specialiserade drivrutiner. Administratörer använder usbdevicestoredirect för att ange berättigade enhetsklasser och hantera omdirigering centralt med hjälp av grupprincip. 

Remote Desktop Protocol (RDP) ger dig det enklaste sättet att få åtkomst till en Hyper-V USB-enhetsgenomkoppling. Den här alternativa metoden fungerar endast i Windows utan att förlita sig på tredjepartsprogramvara. RDP-metoden används därför i huvudsak för kringutrustning, såsom skrivare, smartkort och USB-minnen. 

Hyper-V implementerar den här metoden på två olika sätt beroende på vilken metod som används för att få åtkomst till den virtuella datorn. Låt oss diskutera dem nedan. 

Förbättrat sessionsläge med Hyper-V-hanteraren

I förbättrat sessionsläge använder Hyper-V omdirigering av lokala resurser för att presentera värdsideenheter och -tjänster för en VM-session, även om det inte finns någon nätverksanslutning. Den här metoden använder VMBus i stället för standard-TCP/IP. VMBus är en dedikerad kommunikationskanal med hög genomströmning mellan gäst- och värdoperativsystemen.

Fördelar:

  • Stöder USB-enhetsomdirigering utan att vara beroende av nätverksanslutning
  • Implementerar omdirigering av lokala enheter via VMBus-gränssnittet för låg latens
  • Möjliggör olika kringutrustningar, såsom flashenheter, skrivare osv.

Nackdelar:

  • Det stöder endast Windows-operativsystemet på gäst-VM:ar.
  • Du måste välja de USB-enheter som du vill ansluta innan du startar en virtuell dator.

Begränsningar

• Stöder endast Windows-gästoperativsystem
• Kräver VMBus och Hyper-V Manager i stället för traditionella RDP-klienter
• Inte tillgängligt på Server Core-installationer och i vissa hårt låsta företagsmiljöer 

Obs: Förbättrat sessionsläge-metoden är för det mesta aktiv som standard på Windows 10- och 11-värdar.

Systemkrav:

Värd: Windows 10/11 eller Windows Server 2016+ med principen Enhanced Session Mode aktiverad. Stöder VMConnect som körs på Windows 10/11 eller Server 2016+. Gäst: Måste köra Windows 10/11 eller Server 2016+ med Fjärrskrivbord aktiverat.

Hur skickar man igenom USB i Hyper-V?

1. Starta Hyper-V-hanteraren på värddatorn. Högerklicka sedan på värdens namn och välj Hyper-V-inställningar i snabbmenyn som visas.

öppna Hyper-V-inställningar via snabbmenyn

2. Du kan hitta avsnitten Server och User i fönstret Inställningar. Välj Enhanced Session Mode Policy i Server-panelen och markera kryssrutan bredvid Allow enhanced session mode.

Välj princip för förbättrat sessionsläge

3. Välj sedan Förbättrat sessionsläge under avsnittet Användare och markera kryssrutan Använd förbättrat sessionsläge. Klicka på OK för att bekräfta och spara dina ändringar.

Förbättrat sessionsläge från avsnittet Användare

Du kan nu komma åt USB-enheter i valfri virtuell Hyper-V-dator efter att ha aktiverat Förbättrat sessionsläge.

Obs: Stäng alla aktiva Hyper-V VM-sessioner vid det här tillfället.

4. Starta Hyper-V Manager och dubbelklicka på den virtuella maskinens namn.

5. För att konfigurera din VM:s kommande anslutningar väljer du Visa alternativ i popup-menyn.

6. Välj sedan Lokala resurser och klicka på Mer under Lokala enheter och resurser.

7. Markera sedan alternativen ”Andra plug and play-enheter som stöds” och ”Enheter som jag ansluter senare” och bekräfta genom att klicka på OK.

8. Markera lämplig kryssruta på fliken Skärm för att spara den här konfigurationen för alla efterföljande anslutningar.

9. Klicka på Anslut för att tillämpa dina ändringar.

Använda PowerShell (värd)

1. Aktivera Förbättrat sessionsläge globalt:
Set-VMHost -EnableEnhancedSessionMode $true

2. Anslut med VMConnect och välj lokala resurser.

RDP-baserad enhetsomdirigering med MSTSC

När en virtuell dator har en specifik IP-adress och är åtkomlig på nätverket kan den standardiserade klienten för Fjärrskrivbordsanslutning (mstsc.exe) användas för att upprätta en anslutning. Det här tillvägagångssättet fungerar utan behov av Hyper-V Manager. 

Fördelar:

  • Använder standard-RDP-klienten vid arbete över nätverket
  • Förlitar sig inte på Hyper-V Manager för drift
  • Idealisk för miljöer med fjärråtkomst

Nackdelar:

  • USB-enheter frigörs omedelbart när RDP-sessionen avslutas
  • Prestandan är starkt beroende av nätverkslatensen och den tillgängliga bandbredden

Begränsningar:

• Beror på en tilldelad IP-adress och en aktiv nätverksanslutning
• Tillåter endast Plug and Play-enheter
• Tillhandahåller inte beständig USB-åtkomst utanför en aktiv RDP-session

Minimikrav för system:

Gäst: Windows måste vara installerat med Fjärrskrivbord aktiverat och tillgängligt via nätverket.

Klient: En RDP-klient med stöd för nödvändig omdirigering krävs, och USB-omdirigering på låg nivå är begränsad till endast Windows-klienter. 

Hur du aktiverar

1. Du behöver ge åtkomst till Fjärrskrivbordsanslutningar på din VM. Anslut till din virtuella dator och leta i Kontrollpanelen efter alternativen System och säkerhet. Klicka på Tillåt fjärråtkomst.

2. Kontrollera att rutorna Tillåt fjärranslutningar till den här datorn och Tillåt fjärrassistansanslutningar till den här datorn är markerade och klicka sedan på OK på fliken Fjärr i fönstret Systemegenskaper. Rutorna Tillåt fjärranslutningar till den här datorn och Tillåt fjärrassistansanslutningar till den här datorn markerade

3. Tryck på Win + R för att starta programmet Kör och skriv mstsc.exe i textrutan. Tryck på Enter för att köra programmet Anslutning till fjärrskrivbord.

4. Klicka på knappen Visa alternativ för att expandera dialogrutan RDC.

5. Öppna fliken Lokala resurser och klicka på Mer i avsnittet Lokala enheter och resurser.

6. I menyn som visas aktiverar du kryssrutan Andra Plug and Play-enheter (PnP) som stöds. Klicka på OK.

7. Gå tillbaka till fliken Allmänna inställningar och anslut till din virtuella dator med dess användarnamn och IP-adress.

8. Om du vill starta din fjärrskrivbordssession klickar du på Anslut.

9. Logga in på den virtuella datorn och kontrollera om de tillagda USB-enheterna visas i Utforskaren.

Metod 2: Använda USB Network Gate för USB-over-IP-passthrough

Huvudmål:

USB Network Gate utmärker sig som en plattformsoberoende lösning för Linux-gäst-VM:ar och Server Core-system med begränsad enhetsåtkomst. Den körs oberoende av Hyper-V och kräver ingen konfiguration av hypervisorn.

USB-omdirigering på nätverksnivå för Hyper-V gör det möjligt för USB-enheter som är fysiskt anslutna till en dator att användas av en annan dator över ett lokalt nätverk (LAN). Inuti den virtuella Hyper-V-maskinen visas USB-enheten precis som om den vore direkt ansluten till systemet, så att du kan använda den som vanligt utan att märka några skillnader. 

Den här metoden fungerar oberoende av Hyper-V och kan användas utan att hypervisorn behöver ändras. Den dirigerar USB-trafik över TCP/IP, vilket gör metoden idealisk för olika Hyper-V-anslutningar av USB-enheter. 

USB Network Gate gör det möjligt för alla USB-enheter, inklusive smartkort, webbkameror, skrivare, USB-minnen, donglar med mera, att upprätta kommunikation med en Hyper-V virtuell maskin. USB-over-IP-metoden används ofta på Hyper-V-värdar som körs i Server Core-distributioner, där direkt interaktion med enheter är begränsad. 

USB Network Gate är det enda lämpliga sättet för Linux-användare att ansluta dedikerad hårdvara samtidigt som fullt funktionsstöd och konsekvent prestanda bibehålls. 

USB Network Gate fungerar som en klient-server-lösning, där den gör det möjligt att ge åtkomst till fysiska USB-enheter från ett värdsystem på serversidan till fjärr-PC:ar eller virtuella maskiner på klientsidan. Denna klient-server-konfiguration gör att Hyper-V VM kan arbeta med fjärrenheter precis som om de vore anslutna direkt till systemet, oavsett deras fysiska avstånd. 

Fördelar:

  • Fungerar med nästan alla USB-enheter
  • Plattformsoberoende stöd
  • Ingen Hyper-V-konfiguration krävs

Nackdelar:

  • Kräver installation av programvara från tredje part
  • Lägger till operativ och licensieringsrelaterad overhead

Begränsningar:

• Kräver stabil nätverksanslutning
• Introducerar nätverkslatens som kan påverka realtidsenheter
• Inte en inbyggd Hyper-V-funktion (USB-over-IP-arkitektur)

Minimikrav på system: 

Kompatibel med Windows 7 SP1+ och senare (inklusive Server 2008 R2+), macOS 10.14+, Linux (Ubuntu och CentOS), Android 5.0+ och Raspberry Pi OS.

För att använda USB Network Gate, installera det på både värden och den virtuella datorn och se till att en stabil nätverksanslutning finns tillgänglig. 

Så här använder du USB-enheter i Hyper-V via ett nätverk

1. Installera USB Network Gate på både värd- och gästmaskiner.

2. Öppna appen och dela USB-enheten som är ansluten till Hyper-V-värden.

dela USB Hyper-V-värd

3. När du använder den virtuella datorn öppnar du appen och letar upp den delade USB-enheten.

anslut USB-enhet till Hyper-V-gästmaskin

4. Klicka på Anslut.

Du kan hitta detaljerade instruktioner om hur du ansluter en USB-enhet till en Hyper-V-gästmaskin över nätverket i följande video:

Att använda USB Network Gate för att montera och få åtkomst till Hyper-V USB-enheter på en virtuell maskin är enkelt, snabbt och smidigt.

Metod 3: Åtkomst till en fysisk disk i Hyper-V med SCSI-passthrough

Huvudmål:

Det primära målet med den här metoden är att möjliggöra direkt och exklusiv VM-åtkomst till en rw USB-disk, vilket säkerställer att värden inte stör enheten. Den här metoden fungerar bra för datamigrering, VHDX-fri återställning och för att snabbt ansluta USB-enheter till virtuella datorer. 

Hyper-V låter dig göra USB-lagringsenheter tillgängliga för virtuella datorer som om de vore fysiska diskar. I den här arkitekturen använder den en SCSI-styrenhet för att koppla från USB-enheterna från värden och ansluta dem direkt till de virtuella datorerna (VM).

Obs: En SCSI-kontroller behövs för virtuella datorer av generation 2. Eftersom virtuella datorer av generation 1 fungerar med både SCSI och IDE. SCSI är dock att föredra i det här fallet, där du behöver koppla bort USB-enheter från värden och ansluta dem till den virtuella datorn utan att stänga av den virtuella datorn.

Många användare tar ofta fel på den här metoden och USB-passthrough i Hyper-V. Även om det är samma sak fungerar den här metoden endast för masslagringsenheter.

Fördelar:

  • Fungerar bra för användare av Linux- och Windows Hyper-V-VM:ar
  • Du får möjlighet att hantera åtkomst till USB-lagringsenheter

Nackdelar:

  • Installationsprocessen är utmanande
  • Det gäller endast USB-masslagringsenheter som inte kan tas bort under drift
  • En USB-lagringsenhet kan anslutas antingen till värden eller till den virtuella maskinen, men inte till båda samtidigt

Begränsningar:

• Stöder endast USB-lagringsenheter, såsom externa hårddiskar eller USB-minnen
• USB-enheter presenteras som enheter, inte som standard-USB-hårdvara
• Värden och den virtuella datorn kan inte använda enheten samtidigt
• Det går inte alltid att ta bort enheten medan den används
• Fungerar inte med skannrar, donglar, webbkameror, HID-enheter eller smartkort

Minimikrav för systemet: 

Hyper V på Windows 10/11 eller Windows Server krävs, samt en ytterligare disk som konfigurerats som offline på värden, och målet är inte värd-OS-disken. 

Hur du aktiverar

1. Starta appen Diskhantering. För att göra det öppnar du Diskhantering från Start-menyns snabbmeny. Alternativt kan du trycka på Win + R för att öppna Kör och öppna diskmgmt.msc.

kör diskmgmt.msc

2. Eftersom värden och den virtuella datorn inte kan komma åt USB-enheten samtidigt måste du först ställa in USB-enheten som offline på värden. För att ställa in USB-enheten som offline, hitta den bland enheterna som listas i Diskhantering, högerklicka på den och välj alternativet Offline.

ställ in USB-enheten som offline

3. Nu när värdoperativsystemet inte har någon direkt åtkomst till USB-lagringen kan du aktivera Hyper-V USB-passthrough. Öppna helt enkelt Hyper-V-hanteraren, högerklicka på den virtuella datorn som behöver åtkomst och välj Inställningar i snabbmenyn.

öppna inställningar för Hyper-V-dator

4. Leta upp fliken SCSI på vänster sida av inställningsmenyn och klicka på den. Klicka sedan på Lägg till under alternativet Hårddisk.

lägg till hårddisk i SCSI-styrenhet
Obs: Istället för att använda en SCSI-styrenhet kan du lägga till hårddisken till IDE-styrenheten. Du bör dock notera att användare inte kommer att kunna koppla bort den från den virtuella datorn utan att först stänga av den. Vi rekommenderar att introducera disken som en SCSI-enhet som kan tas bort från en aktiv virtuell dator för att spara tid.

5. Välj alternativet Fysisk hårddisk under SCSI-styrenhet > Hårddisk i menyn till vänster och välj sedan USB-enheten. Se till att disknumret på den valda enheten matchar den disk du kopplade från i Diskhantering. Klicka på OK för att spara ändringarna.

Starta Hyper-V-VM:ens Filutforskaren efter att du har lagt till enheten. USB-lagringsenheten inuti VM:n ska nu vara synlig.

Med PowerShell på värddatorn

  1. Identifiera USB-disken på värddatorn och ställ in den som offline.

Get-Disk | Where-Object BusType -eq USB

Set-Disk -Number <DiskNumber> -IsOffline $true

2. Använd disknumret för att ansluta den offline fysiska disken till den virtuella datorn.
Add-VMHardDiskDrive -VMName “<VMName>” -ControllerType SCSI -DiskNumber <DiskNumber>

Obs: Tänk på att pass-through-diskar är kompatibla med arbetsflöden för export eller migrering och kan störa säkerhetskopieringar och kontrollpunkter jämfört med VHDX-baserad lagring.

Metod 4: Använda Discrete Device Assignment (DDA) för att aktivera USB-pass-through i Hyper-V

Primärt syfte

DDA tillhandahåller nära nog verklig USB-passthrough genom att dedikera en PCIe-USB-styrenhet till en virtuell dator, vilket möjliggör åtkomst på låg nivå och leverantörsdrivrutiner. Enheten tas bort från värden medan den virtuella datorn i princip får inbyggd prestanda och full drivrutinskompatibilitet. Den här tekniken är ett gångbart alternativ när RDP-omdirigering inte kan uppfylla USB-enhetens protokoll- och drivrutinskrav.

Fördelar:

  • Nästan verklighetstrogen hårdvarupassthrough
  • Utmärkt prestanda och kompatibilitet för USB-enheter med en dedikerad styrenhet
  • Fungerar med specialiserad maskinvara som kräver leverantörsdrivrutiner (donglar, labbutrustning, säkerhetsnycklar)

Nackdelar:

  • Kräver avancerade färdigheter
  • Ingen värdåtkomst till enheten medan den är tilldelad till VM
  • Kräver omstart av virtuell dator när enheten läggs till

Begränsningar:

• Ingen VM-spara/återställning, ingen live-migrering, inget dynamiskt minne medan enheten är tilldelad
• Fungerar endast på Windows Server 2016/2019/2022/2025 med Hyper-V — inte tillgängligt på Windows 10/11 Home
• Kräver Gen2-VM
• Alla PCIe-USB-kontroller är inte kompatibla — verifiera med Microsofts DDA-skript

Minimikrav för systemet: 

Operativsystem som stöds: Windows Server-utgåvor med Hyper-V, såsom 2016, 2019, 2022 och 2025

Hårdvara: CPU-stöd för EPT/NPT och en IOMMU med avbrotts- och DMA-omappning krävs, tillsammans med BIOS-/firmwareinställningar aktiverade för dessa funktioner (liknande SR-IOV-krav).

Hur du använder DDA för att skicka vidare en USB-kontroller till en Hyper-V-VM

Samla in information och förbered miljön:

  1. Bekräfta DDA-krav: du behöver Windows Server Hyper-V och maskinvara som stöder IOMMU/ACS och enhetsisolering. Gå igenom DDA-planeringsguiden för begränsningar medan enheten är ansluten.
  2. Hitta kontrollerns platsökväg: öppna Enhetshanteraren på värden → expandera USB-styrenheter → välj den USB-kontroller som ska dedikeras → fliken Information → Egenskap: Platsökvägar → kopiera PCIROOT(…) -strängen.


Tilldela kontrollern med PowerShell (VM måste vara avstängd)

(Valfritt) Storleksätt MMIO för VM:

$vm = “<VMName>”

Set-VM -Name $vm -LowMemoryMappedIoSpace 3GB -HighMemoryMappedIoSpace 33280MB

Avmontera kontrollern från värden och tilldela den till VM:

$loc = “<PCIROOT(…from Device Manager…)>”

Dismount-VMHostAssignableDevice -LocationPath $loc -Force

Add-VMAssignableDevice -VMName $vm -LocationPath $loc

Starta VM och installera leverantörens drivrutin i gästen vid behov.

För att återställa:

Remove-VMAssignableDevice -VMName $vm -LocationPath $loc

Mount-VMHostAssignableDevice -LocationPath $loc

Obs: DDA fungerar inte med alla kontroller och enheter. Verifiera kompatibilitet med Microsofts DDA-skript eller leverantörens dokumentation innan du fortsätter.

Slutsats

Även om Hyper-V inte har ett inbyggt USB-passthrough-reglage med ett klick, erbjuder det andra flexibla alternativ baserat på ditt operativsystem och dina maskinvarukrav. För att välja det mest lämpliga tillvägagångssättet för ditt specifika arbetsflöde ger vi en snabb sammanfattning av de alternativa metoderna som diskuteras i den här artikeln. 

Metod Bäst för Enheter som stöds Gästoperativsystem Konfigurationskomplexitet
USB Network Gate Professionell användning Nästan alla (donglar, webbkameror osv.) Windows, Linux, macOS Låg
Fysisk disk (SCSI) Stort lagringsutrymme Endast externa hårddiskar och USB-minnen Windows, Linux Medel
Förbättrad session Lokalt administratörsarbete Grundläggande Plug and Play-enheter, såsom USB-minnen Endast Windows Låg
RDP-omdirigering Fjärråtkomst Begränsade PnP-enheter Endast Windows Låg
DDA Företag / avancerade användare USB-styrenheter (PCIe) Windows Server Hög

Genom att förstå dessa skillnader kan du spara tid och undvika frustrationen med att behöva prova dig fram. Oavsett om du vill ha flexibiliteten med nätverksbaserad USB-åtkomst eller enkelheten med Förbättrat sessionsläge kan du nu använda verktygen som för samman dina fysiska enheter och din virtuella Hyper-V-konfiguration. 

FAQ

Nej, Hyper-V har inget inbyggt alternativ för USB-passthrough. Du kan ansluta USB-enheter till en virtuell dator endast via lösningar i form av kringgåenden, såsom SCSI-diskpassthrough, programvara från tredje part som USB Network Gate, DDA, förbättrat sessionsläge eller RDP-omdirigering.

Ja, det är möjligt att använda en USB-dongel inuti en Hyper-V-virtuell maskin med metoder som USB Network Gate (USB-over-IP) och DDA. RDP-omdirigering kanske inte fungerar med alla enhetstyper på grund av drivrutinsbegränsningar.

Diskret enhetstilldelning (DDA) i Hyper-V gör att en hel PCIe USB-kontroller kan dedikeras till en virtuell dator. När en kontroller tilldelas via DDA förlorar värden åtkomst till den, och funktionen är endast tillgänglig på Windows Server och senare.

Förbättrat sessionsläge dirigerar RDP genom VMConnect via VMBus i stället för att använda en traditionell nätverksanslutning. Det fortsätter att fungera även när ingen IP-adress är tilldelad till den virtuella datorn. Standard-RDP via mstsc.exe fungerar bara när den virtuella datorn är nåbar på nätverket.

Ja, men den har begränsad funktionalitet. Både RDP-omdirigering och Förbättrat sessionsläge stöds på Windows 10 och 11. DDA stöds endast på Windows Server. När du behöver fullständigt stöd för flera enheter på Windows 10 och 11 är USB Network Gate det mest praktiska valet.