Hyper-V доступ до USB-пристроїв: 4 найкращі підходи до підключення

Hyper-V вирізняється як надійний корпоративний гіпервізор. Однак підтримка USB-пристроїв залишається одним із його основних недоліків. Хоча користувачі очікують простого й легкого перемикача «passthrough», насправді потрібна краща, практичніша стратегія.

Попередження: 

Hyper-V не має жодної вбудованої кнопки «attach» для контролерів USD. Тому Hyper-V не може підключати USB-пристрої, такі як сканери, вебкамери, донгли тощо, фізично до ВМ на апаратному рівні. 

Оскільки вбудований USB passthrough у Hyper-V не є життєздатним варіантом, доступні непрямі підходи: 

• USB-over-IP: Цей підхід використовує мережеві USB-хаби або стороннє програмне забезпечення, щоб під’єднати локальні пристрої до V;
• RDP Redirection: Цей підхід допомагає отримати доступ до локальних пристроїв через сеанс Remote Desktop;
• Offline Disk Mapping: Цей метод допомагає отримати доступ до USB-накопичувача, представляючи його системі як фізичний дисковий пристрій;
• DDA (Discrete Device Assignment): Цей підхід працює шляхом прямої передачі цілого PCIe USB-контролера у віртуальну машину на апаратному рівні;

У цій статті ми пояснимо можливості та обмеження Hyper-V, порівняємо переваги й недоліки кожного альтернативного підходу, щоб допомогти знайти правильний підхід, який підходить для вашого робочого процесу. 

Примітка для користувачів Linux: Підходи, такі як Enhanced Session Mode та вбудоване перенаправлення RDP, спеціально розроблені для користувачів Windows. Але якщо ви користувач Linux, доцільно відразу перейти до підходу USB Network Gate. Це найстабільніше рішення для запуску робочих процесів у віртуальній машині Linux. DDA також недоступний для гостьових віртуальних машин Linux.

Тепер давайте поговоримо про чотири обхідні рішення, які ми обіцяли.

Спосіб 1: Вбудоване перенаправлення пристроїв через RDP

Ключова мета:

RDP дозволяє користувачам швидко отримувати доступ до файлів і периферійних пристроїв на віртуальних машинах, підключених до мережі. Такі пристрої, як вебкамери та принтери, отримують оптимальну продуктивність завдяки високорівневому перенаправленню. Низькорівневе перенаправлення найкраще залишати для апаратного забезпечення, яке залежить від спеціалізованих драйверів. Адміністратори використовують usbdevicestoredirect, щоб налаштувати придатні класи пристроїв і централізовано керувати перенаправленням за допомогою групової політики. 

Протокол віддаленого робочого стола (RDP) надає вам найпростіший спосіб доступу до наскрізного передавання USB-пристрою Hyper-V. Цей альтернативний підхід працює лише у Windows без використання стороннього програмного забезпечення. Тож метод RDP, по суті, застосовується для периферійних пристроїв, таких як принтери, смарт-картки та флеш-накопичувачі. 

Hyper-V реалізує цей підхід двома різними способами залежно від методу, що використовується для доступу до віртуальної машини. Розгляньмо їх нижче. 

Розширений режим сеансу з використанням Диспетчера Hyper-V

У режимі розширеного сеансу Hyper-V використовує перенаправлення локальних ресурсів, щоб надавати пристрої та служби на стороні хоста для сеансу ВМ, навіть якщо мережеве підключення відсутнє. Цей метод використовує VMBus замість стандартного TCP/IP. VMBus — це виділений і високопродуктивний канал зв’язку між гостьовою та хостовою операційними системами.

Переваги:

  • Підтримує перенаправлення USB-пристроїв без залежності від мережевого підключення
  • Реалізує перенаправлення локального пристрою через інтерфейс VMBus для низької затримки
  • Забезпечує підтримку різних периферійних пристроїв, таких як флеш-накопичувачі, принтери тощо.

Мінуси:

  • Він підтримує лише операційну систему Windows на гостьових віртуальних машинах.
  • Ви повинні вибрати USB-пристрої, які хочете підключити, перед запуском віртуальної машини.

Обмеження

• Підтримує лише гостьові ОС Windows
• Потребує VMBus і Hyper-V Manager замість традиційних RDP-клієнтів
• Недоступно на інсталяціях Server Core та в деяких посилено захищених корпоративних середовищах 

Примітка: Розширений режим сеансу здебільшого активний за замовчуванням на хостах Windows 10 і 11.

Системні вимоги:

Хост: Windows 10/11 або Windows Server 2016+ з увімкненою політикою режиму розширеного сеансу. Підтримується VMConnect, що працює на Windows 10/11 або Server 2016+. Гостьова ОС: має працювати під керуванням Windows 10/11 або Server 2016+ з увімкненим віддаленим робочим столом.

Як виконати проброс USB у Hyper-V?

1. Запустіть диспетчер Hyper-V на головному комп’ютері. Потім клацніть правою кнопкою миші назву хоста та виберіть «Параметри Hyper-V» у контекстному меню, що з’явиться.

відкрийте параметри Hyper-V через контекстне меню

2. Ви можете знайти розділи Server і User у вікні Setting. Виберіть Enhanced Session Mode Policy на панелі Server і встановіть прапорець поруч із Allow enhanced session mode.

Виберіть політику режиму розширеного сеансу

3. Далі виберіть Enhanced Session Mode у розділі User і встановіть прапорець Use enhanced session mode. Натисніть OK, щоб підтвердити та зберегти зміни.

Розширений режим сеансу з розділу «Користувач»

Тепер ви можете отримувати доступ до USB-пристроїв у будь-якій віртуальній машині Hyper-V після ввімкнення режиму покращеного сеансу.

Примітка: Закрийте всі активні сеанси віртуальних машин Hyper-V на цьому етапі.

4. Запустіть Hyper-V Manager і двічі клацніть назву віртуальної машини.

5. Щоб налаштувати майбутні підключення вашої ВМ, у спливаючому меню виберіть Show Options.

6. Далі виберіть Local Resources і натисніть More у розділі Local Devices and Resources.

7. Далі позначте параметри “Other supported Plug and Play devices” і “Devices that I plug in later” та підтвердьте, натиснувши OK.

8. На вкладці Display встановіть відповідний прапорець, щоб зберегти цю конфігурацію для всіх наступних підключень.

9. Натисніть Connect, щоб застосувати зміни.

Використання PowerShell (хост)

1. Увімкніть режим розширеного сеансу глобально:
Set-VMHost -EnableEnhancedSessionMode $true

2. Підключіться за допомогою VMConnect і виберіть локальні ресурси.

Перенаправлення пристроїв на основі RDP із використанням MSTSC

Коли віртуальна машина має конкретну IP-адресу та доступна в мережі, для встановлення з’єднання можна використати стандартний клієнт Підключення до віддаленого робочого стола (mstsc.exe). Цей підхід працює без необхідності використання Диспетчера Hyper-V. 

Переваги:

  • Використовує стандартний клієнт RDP під час роботи через мережу
  • Не покладається на Hyper-V Manager для роботи
  • Ідеально підходить для середовищ віддаленого доступу

Мінуси:

  • USB-пристрої звільняються одразу після завершення сеансу RDP
  • Продуктивність значною мірою залежить від мережевої затримки та доступної пропускної здатності

Обмеження:

• Залежить від призначеної IP-адреси та активного мережевого підключення
• Дозволяє лише пристрої Plug and Play
• Не забезпечує постійного USB-доступу поза межами активного сеансу RDP

Мінімальні системні вимоги:

Гість: Windows має бути встановлено з увімкненим Remote Desktop і доступним через мережу.

Клієнт: Потрібен RDP-клієнт із підтримкою необхідного перенаправлення, а низькорівневе перенаправлення USB обмежене лише клієнтами Windows. 

Як активувати

1. Вам потрібно буде надати доступ до підключень Remote Desktop Connections на вашій ВМ. Підключіться до своєї віртуальної машини та знайдіть у Панелі керування параметри System and Security. Натисніть Allow remote access.

2. Переконайтеся, що встановлено прапорці Дозволити віддалені підключення до цього комп’ютера та Дозволити підключення віддаленої допомоги до цієї машини, потім натисніть OK на вкладці Remote у вікні System Properties. Прапорці Дозволити віддалені підключення до цього комп’ютера та Дозволити підключення віддаленої допомоги до цієї машини встановлено

3. Натисніть Win + R, щоб запустити програму «Виконати», і введіть mstsc.exe у текстовому полі. Натисніть Enter, щоб запустити застосунок «Підключення до віддаленого робочого стола».

4. Натисніть кнопку «Показати параметри», щоб розгорнути діалогове вікно RDC.

5. Відкрийте вкладку «Локальні ресурси» та натисніть «Додатково» в розділі «Локальні пристрої та ресурси».

6. У меню, що з’явиться, увімкніть прапорець Інші підтримувані пристрої Plug and Play (PnP). Натисніть OK.

7. Поверніться на вкладку загальних налаштувань і під’єднайтеся до своєї віртуальної машини, використовуючи її ім’я користувача та IP-адресу.

8. Щоб запустити сеанс Віддаленого робочого стола, натисніть «Підключитися».

9. Увійдіть до ВМ і перевірте, чи відображаються додані USB-пристрої у Провіднику.

Метод 2: Використання USB Network Gate для USB-over-IP Passthrough

Ключова мета:

USB Network Gate вирізняється як кросплатформне рішення для гостьових ВМ Linux і систем Server Core з обмеженим доступом до пристроїв. Воно працює незалежно від Hyper-V і не потребує налаштування гіпервізора.

Переадресація USB на рівні мережі в Hyper-V робить можливим використання USB-пристроїв, які фізично підключені до одного комп’ютера, на іншому комп’ютері через локальну мережу (LAN). Усередині віртуальної машини Hyper-V USB-пристрій відображається так, ніби його під’єднано безпосередньо до системи, тож ви можете користуватися ним у звичайному режимі, не помічаючи жодних відмінностей. 

Цей підхід працює незалежно від Hyper-V і може використовуватися без модифікації гіпервізора. Він спрямовує USB-трафік через TCP/IP, що робить цей підхід ідеальним для різних підключень USB-пристроїв у Hyper-V. 

USB Network Gate забезпечує роботу з будь-яким USB-пристроєм, зокрема смарткартами, вебкамерами, принтерами, флеш-накопичувачами, донглами та іншим, для встановлення зв’язку з віртуальною машиною Hyper-V. Підхід USB-over-IP часто застосовується на хостах Hyper-V, що працюють у розгортаннях Server Core, де прямий доступ до пристроїв обмежено. 

USB Network Gate — єдиний придатний спосіб для користувачів Linux підключати спеціалізоване обладнання, зберігаючи повну підтримку функцій і стабільну продуктивність. 

USB Network Gate працює як клієнт-серверне рішення, що дає змогу надавати доступ до фізичних USB-пристроїв із хост-системи на стороні сервера клієнтським віддаленим ПК або віртуальним машинам. Ця клієнт-серверна конфігурація дозволяє ВМ Hyper-V працювати з віддаленими пристроями так, ніби їх під’єднано безпосередньо до системи, незалежно від їхньої фізичної відстані. 

Переваги:

  • Працює майже з будь-яким USB-пристроєм
  • Кросплатформна підтримка
  • Не потрібно налаштовувати Hyper-V

Мінуси:

  • Потрібне встановлення стороннього програмного забезпечення
  • Додає операційні витрати та витрати на ліцензування

Обмеження:

• Потребує стабільного мережевого підключення
• Додає мережеву затримку, що може впливати на пристрої реального часу
• Не є нативною функцією Hyper-V (архітектура USB-over-IP)

Мінімальні системні вимоги: 

Сумісний із Windows 7 SP1+ та новішими версіями (включно з Server 2008 R2+), macOS 10.14+, Linux (Ubuntu та CentOS), Android 5.0+ і Raspberry Pi OS.

Щоб використовувати USB Network Gate, встановіть його і на хості, і на ВМ та переконайтеся, що доступне стабільне мережеве підключення. 

Як використовувати USB-пристрої в Hyper-V через мережу

1. Встановіть USB Network Gate на обох машинах — хості та гостьовій.

2. Відкрийте програму та надайте доступ до USB-пристрою, підключеного до хоста Hyper-V.

спільний USB-хост Hyper-V

3. Під час роботи віртуальної машини відкрийте застосунок і знайдіть спільний USB-пристрій.

підключити USB-пристрій до гостьової машини Hyper-V

4. Натисніть Підключитися.

Детальні інструкції щодо підключення USB-пристрою до гостьової машини Hyper-V через мережу ви можете знайти в наступному відео:

Використання USB Network Gate для підключення та доступу до USB-пристроїв Hyper-V у віртуальній машині — це легко, швидко та зручно.

Метод 3: Доступ до фізичного диска в Hyper-V за допомогою SCSI Passthrough

Ключова мета:

Основною метою цього методу є забезпечення прямого та ексклюзивного доступу ВМ до USB-диска з правами читання/запису, що гарантує, що хост не втручатиметься в роботу пристрою. Цей підхід добре підходить для міграції даних, відновлення без VHDX та швидкого підключення USB-накопичувачів до ВМ. 

Hyper-V дає змогу зробити USB-пристрої зберігання доступними для віртуальних машин так, ніби вони є фізичними дисками. У цій архітектурі він використовує контролер SCSI, щоб від’єднати USB-пристрої від хоста та під’єднати їх безпосередньо до віртуальних машин (VM).

Примітка: Для віртуальних машин покоління 2 потрібен контролер SCSI. Оскільки віртуальні машини покоління 1 працюють як із SCSI, так і з IDE. Однак у цьому випадку більш бажаним є SCSI, коли потрібно від’єднати USB-пристрої від хоста та під’єднати їх до віртуальної машини без вимкнення віртуальної машини.

Багато користувачів часто плутають цей метод із USB passthrough у Hyper-V. Хоча це те саме, цей підхід працює лише для пристроїв масового зберігання.

Переваги:

  • Добре працює для користувачів VM Hyper-V у Linux та Windows
  • Ви отримаєте можливість керувати доступом до пристроїв USB-накопичувачів

Мінуси:

  • Процес налаштування є складним
  • Це застосовується лише до USB-пристроїв масового зберігання, які не можна від’єднувати під час роботи
  • USB-накопичувач можна підключити або до хоста, або до віртуальної машини, але не до обох одночасно

Обмеження:

• Підтримуються лише USB-накопичувачі, такі як зовнішні жорсткі диски або флеш-накопичувачі
• USB-пристрої відображаються як диски, а не як стандартне USB-обладнання
• Хост і віртуальна машина не можуть використовувати пристрій одночасно
• Не завжди можна від’єднати пристрій, поки він використовується
• Не працює зі сканерами, донглами, вебкамерами, пристроями HID або смарт-картами

Мінімальні системні вимоги: 

Потрібен Hyper V у Windows 10/11 або Windows Server, а також додатковий диск, налаштований в автономному режимі на хості, і цільовий диск не є диском ОС хоста. 

Як активувати

1. Запустіть програму «Керування дисками». Для цього відкрийте «Керування дисками» з контекстного меню «Пуск». Або натисніть Win + R, щоб відкрити програму «Виконати», і запустіть diskmgmt.msc.

запустіть diskmgmt.msc

2. Оскільки хост і віртуальна машина не можуть одночасно отримати доступ до USB-накопичувача, спочатку потрібно перевести USB-накопичувач в автономний режим на хості. Щоб перевести USB-накопичувач в автономний режим, знайдіть його серед пристроїв, перелічених у Керуванні дисками, клацніть по ньому правою кнопкою миші та виберіть параметр «Автономно».

встановіть USB-накопичувач у режим "офлайн"

3. Тепер, коли основна операційна система хоста не має прямого доступу до USB-накопичувача, ви можете ввімкнути USB passthrough у Hyper-V. Просто відкрийте диспетчер Hyper-V, клацніть правою кнопкою миші на віртуальній машині, якій потрібен доступ, і виберіть «Параметри» в контекстному меню.

відкрити параметри машини Hyper-V

4. Знайдіть вкладку SCSI з лівого боку меню налаштувань і натисніть на неї. Далі натисніть Додати в розділі «Жорсткий диск».

додати жорсткий диск у контролер SCSI
Примітка: Замість використання контролера SCSI ви можете додати жорсткий диск до контролера IDE. Однак слід зазначити, що користувачі не зможуть від’єднати його від віртуальної машини, не вимкнувши її спочатку. Ми радимо додати диск як пристрій SCSI, який можна від’єднати від активної віртуальної машини, щоб заощадити час.

5. Виберіть параметр «Фізичний жорсткий диск» у розділі SCSI Controller > Hard Drive в меню ліворуч, потім виберіть USB-накопичувач. Переконайтеся, що номер диска на вибраному накопичувачі має відповідати диску, який ви перевели в офлайн у керуванні дисками. Натисніть OK, щоб зберегти зміни.

Після додавання диска запустіть Провідник файлів у вашій віртуальній машині Hyper-V. USB-накопичувач для зберігання даних усередині ВМ тепер має бути видимим.

За допомогою PowerShell на хост-машині

  1. Виявте USB-диск на хост-машині та переведіть його в офлайн.

Get-Disk | Where-Object BusType -eq USB

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

2. Використайте номер диска, щоб під’єднати офлайн фізичний диск до віртуальної машини.
Add-VMHardDiskDrive -VMName “<VMName>” -ControllerType SCSI -DiskNumber <DiskNumber>

Примітка: Майте на увазі, що диски pass-through сумісні з робочими процесами експорту або міграції та можуть порушити роботу резервного копіювання й контрольних точок порівняно зі сховищем на основі VHDX.

Метод 4: Використання призначення дискретного пристрою (DDA) для ввімкнення USB-переадресації в Hyper-V

Основне призначення

DDA забезпечує майже реальний USB passthrough, виділяючи PCIe USB-контролер для віртуальної машини, що надає низькорівневий доступ і драйвери виробника. Пристрій вилучається з хоста, тоді як ВМ отримує по суті нативну продуктивність і повну сумісність драйверів. Ця техніка є життєздатною альтернативою, коли перенаправлення RDP не може задовольнити вимоги протоколу та драйверів USB-пристрою.

Переваги:

  • Майже повний наскрізний доступ до апаратного забезпечення
  • Відмінна продуктивність і сумісність для USB-пристроїв із виділеним контролером
  • Працює зі спеціалізованим апаратним забезпеченням, яке потребує драйверів виробника (донгли, лабораторне обладнання, ключі безпеки)

Мінуси:

  • Потребує просунутих навичок
  • Немає доступу хоста до пристрою, поки він призначений ВМ
  • Потребує перезапуску ВМ під час додавання пристрою

Обмеження:

• Немає збереження/відновлення стану ВМ, немає живої міграції, немає динамічної пам’яті, поки пристрій призначено
• Працює лише на Windows Server 2016/2019/2022/2025 з Hyper-V — недоступно на Windows 10/11 Home
• Потрібна ВМ Gen2
• Не всі контролери USB PCIe сумісні — перевірте за допомогою скрипта DDA від Microsoft

Мінімальні системні вимоги: 

Підтримувана ОС: випуски Windows Server із Hyper-V, такі як 2016, 2019, 2022 і 2025

Обладнання: Потрібна підтримка EPT/NPT процесором і IOMMU з перенаправленням переривань та DMA, а також увімкнені в BIOS/прошивці параметри для цих функцій (подібно до вимог SR-IOV).

Як використовувати DDA для передавання USB-контролера у віртуальну машину Hyper-V

Зберіть інформацію та підготуйте середовище:

  1. Підтвердьте вимоги DDA: вам потрібні Windows Server Hyper-V і апаратне забезпечення, що підтримує IOMMU/ACS та ізоляцію пристроїв. Перегляньте настанови з планування DDA щодо обмежень, поки пристрій під’єднано.
  2. Знайдіть шлях розташування контролера: відкрийте Диспетчер пристроїв на хості → розгорніть Контролери універсальної послідовної шини → виберіть USB-контролер, який потрібно виділити → вкладка «Відомості» → Властивість: «Шляхи розташування» → скопіюйте рядок PCIROOT(…).


Призначте контролер за допомогою PowerShell (ВМ має бути вимкнена)

(Необов’язково) Налаштуйте MMIO для ВМ:

$vm = “<VMName>”

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

Відмонтуйте контролер від хоста та призначте його ВМ:

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

Dismount-VMHostAssignableDevice -LocationPath $loc -Force

Add-VMAssignableDevice -VMName $vm -LocationPath $loc

Запустіть ВМ та за потреби встановіть драйвер постачальника в гостьовій ОС.

Щоб повернути назад:

Remove-VMAssignableDevice -VMName $vm -LocationPath $loc

Mount-VMHostAssignableDevice -LocationPath $loc

Примітка: DDA не працює з усіма контролерами та пристроями. Перед тим як продовжити, перевірте сумісність за допомогою скрипта DDA від Microsoft або документації постачальника.

Висновок

Хоча Hyper-V не має вбудованого перемикача USB passthrough «в один клік», він пропонує інші гнучкі альтернативи залежно від вашої операційної системи та вимог до апаратного забезпечення. Щоб вибрати найбільш відповідний підхід для вашого конкретного робочого процесу, ми надаємо короткий огляд альтернативних методів, розглянутих у цій статті. 

Метод Найкраще підходить для Підтримувані пристрої Гостьова ОС Складність налаштування
USB Network Gate Професійного використання Майже будь-які (донгли, вебкамери тощо) Windows, Linux, macOS Низька
Фізичний диск (SCSI) Великого сховища даних Лише зовнішні HDD та флеш-накопичувачі Windows, Linux Середня
Розширений сеанс Локальної роботи адміністратора Базові пристрої Plug and Play, наприклад флеш-накопичувачі Лише Windows Низька
Перенаправлення RDP Віддаленого доступу Обмежені пристрої PnP Лише Windows Низька
DDA Корпоративного використання / досвідчених користувачів USB-контролери (PCIe) Windows Server Висока

Розуміння цих відмінностей допомагає вам заощадити час і уникнути розчарування від методу спроб і помилок. Незалежно від того, чи потрібна вам гнучкість мережевого доступу до USB або простота режиму розширеного сеансу, тепер ви можете використовувати інструменти, які поєднують ваші фізичні пристрої та вашу віртуальну конфігурацію Hyper-V. 

Поширені запитання

Ні, Hyper-V не має вбудованої опції для USB-передавання до віртуальної машини. Ви можете підключати USB-пристрої до ВМ лише через обхідні рішення, такі як passthrough диска SCSI, стороннє ПЗ на кшталт USB Network Gate, DDA, режим розширеного сеансу або перенаправлення через RDP.

Так, можна використовувати USB-адаптер у віртуальній машині Hyper-V, застосовуючи такі методи, як USB Network Gate (USB-over-IP) та DDA. Перенаправлення RDP може не працювати з усіма типами пристроїв через обмеження драйверів.

Призначення дискретного пристрою (DDA) у Hyper-V дозволяє повністю виділити контролер PCIe USB для віртуальної машини. Коли контролер призначено через DDA, хост втрачає доступ до нього, і ця функція доступна лише у Windows Server та новіших версіях. 

Режим розширеного сеансу спрямовує RDP через VMConnect по VMBus замість використання традиційного мережевого з’єднання. Він продовжує працювати навіть тоді, коли віртуальній машині не призначено IP-адресу. Стандартний RDP через mstsc.exe працює лише тоді, коли віртуальна машина доступна в мережі.

Так, проте його функціональність обмежена. І перенаправлення RDP, і режим розширеного сеансу підтримуються у Windows 10 та 11. DDA підтримується лише у Windows Server. Коли вам потрібна повна підтримка між різними пристроями у Windows 10 та 11, USB Network Gate є найпрактичнішим вибором.