가상화 기술은 이제 너무나 보편화되어 우리가 생각하는 것보다 훨씬 많은 곳에서 활용되고 있습니다. 이제는 가상화가 제공하는 기능과 경제성 없이 인터넷을 상상하기조차 어려울 정도입니다. 물리적 하드웨어를 관리하는 번거로움과 비용을 크게 절약할 수 있지만, 때로는 USB와 같은 외부 장치를 가상 머신에 연결해야 하는 상황이 여전히 발생합니다.

VMware를 사용해 본 경험이 있다면 이 글을 읽으며 VMware에서의 과정이 훨씬 간단하다는 것을 느끼실 겁니다. VMware는 이미 오래전부터 USB 패스스루 기능을 제공해 왔습니다. 다만 한 번에 하나의 가상 머신에만 USB 장치를 연결할 수 있다는 점이 아쉬운 부분입니다. 반면 Hyper-V에서는 상황이 조금 다릅니다. Hyper-V에서 USB 패스스루를 수행하는 과정은 별도의 방식으로 진행됩니다. 자세한 내용에 들어가기 전에 먼저 USB 패스스루의 기본 개념부터 살펴보겠습니다.
USB 패스스루란 가상 머신에서 USB 드라이브에 접근할 수 있도록 해주는 기능입니다. 이때 USB 드라이브는 가상 머신에 실제로 접속 중인 컴퓨터에 연결되어 있거나, Hyper-V 호스트에 꽂혀 있을 수 있습니다. 이 두 가지 시나리오는 서로 다른 두 가지 패스스루 방식을 요구하며, 이 글에서는 두 가지 방법을 모두 다룰 예정입니다.
서버 측(Server-side) USB 패스스루
서버 측 또는 호스트 USB 패스스루는 USB가 Hyper-V 호스트에 직접 연결된 경우를 말합니다. VMware만큼 매끄럽지는 않지만, 사실 그렇게 어렵지도 않습니다. 게다가 아래에서 소개하는 안내를 따르면 그 어느 때보다 쉽게 설정할 수 있습니다. 그럼 시작해 보겠습니다.
- 먼저 사용하려는 USB 장치를 컴퓨터에 연결합니다.
- 장치를 연결하면 호스트 운영체제가 해당 드라이브를 인식합니다. 하지만 문제는 한 번에 하나의 운영체제만 USB 드라이브를 사용할 수 있다는 점입니다. 이를 해결하려면 USB 드라이브를 오프라인 상태로 전환하여 호스트 운영체제가 접근하지 못하도록 만들어야 합니다. 그러면 원하는 어떤 가상 머신에서든 자유롭게 접근할 수 있습니다.
- 이를 위해 Windows 키 + R을 눌러 실행(Run) 대화상자를 엽니다. 그런 다음 diskmgmt.msc 명령어를 입력하고 Enter 키를 누릅니다. 그러면 디스크 관리 창이 열립니다.
- 이제 USB를 오프라인 상태로 전환해야 합니다. 디스크를 마우스 오른쪽 버튼으로 클릭한 후 오프라인(Offline) 옵션을 선택합니다. 이때 드라이브 문자가 아니라 디스크 자체를 클릭해야 한다는 점에 유의하세요. 참고로 아래 이미지를 확인하시기 바랍니다.

- 디스크 관리 콘솔의 문제점은 모든 USB 장치에 대해 오프라인 옵션을 표시하지 않는다는 것입니다. 따라서 용량이 작은 USB 저장 드라이브의 경우 오프라인 옵션이 나타나지 않을 수 있으며, 이런 경우에는 패스스루를 사용할 수 없습니다.
- USB 드라이브가 오프라인 상태가 되면 Hyper-V 관리자(Hyper-V Manager)를 실행합니다.
- USB 드라이브에 접근해야 하는 가상 머신을 마우스 오른쪽 버튼으로 클릭하고 설정(Settings)으로 이동합니다.
- 하드웨어 추가(Add Hardware) 탭에서 목록에서 SCSI 컨트롤러(SCSI Controller)를 선택한 후 추가(Add) 버튼을 클릭합니다.

- 다음 화면에서 실제 하드 디스크(Physical Hard Disk) 옵션을 선택하고 연결된 USB 드라이브를 지정합니다.
- 완료되면 적용(Apply) 버튼을 클릭한 후 확인(OK)을 누릅니다.
- 이제 해당 가상 머신에서 USB 드라이브를 사용할 수 있습니다. 만약 VM에서 USB 드라이브가 목록에 표시되지 않는다면, 디스크 관리 콘솔로 돌아가서 USB 장치에 드라이브 문자를 할당하면 됩니다.
클라이언트 측(Client-side) USB 패스스루
서버 측 패스스루를 마쳤으니 이제 클라이언트 측 패스스루로 넘어가겠습니다. 클라이언트 측 패스스루에는 실제로 두 가지 방법이 있으며, 두 가지 모두 소개합니다. 첫 번째는 원격 데스크톱 세션을 통한 방법이고, 두 번째는 향상된 세션 모드(Enhanced Session Mode)를 활용하는 방법입니다. 시작해 보겠습니다.
방법 1: 원격 데스크톱 연결을 통한 USB 패스스루
원격 데스크톱 연결을 통해 USB 패스스루를 수행하려면 아래 지침을 따르세요.
- 먼저 가상 머신에서 원격 데스크톱 연결을 활성화해야 합니다. 가상 머신에 연결한 후 제어판 > 시스템 및 보안 > 원격 액세스 허용을 통해 원격 시스템 설정으로 이동합니다.
- 이 컴퓨터에 대한 원격 지원 연결 허용 확인란에 체크합니다. 또한 이 컴퓨터에 대한 원격 연결 허용 옵션도 선택되어 있는지 반드시 확인합니다. 마지막으로 적용(Apply)을 클릭한 후 확인(OK)을 누릅니다.

- 이제 이 머신에 원격으로 연결해야 합니다. 실행 대화상자에 mstsc.exe를 입력하여 RDP 클라이언트를 실행합니다.
- 옵션 표시(Show Options)를 클릭하여 추가 설정을 확인합니다. 로컬 리소스(Local Resources) 탭으로 전환한 후 자세히(More) 버튼을 클릭합니다.
- 기타 지원되는 플러그 앤 플레이 장치(Other supported Plug and Play devices) 옵션에 체크한 후 확인(OK)을 누릅니다.

- 마지막으로 연결(Connect) 버튼을 클릭하여 원격 데스크톱 세션을 시작합니다.
방법 2: 향상된 세션 모드(Enhanced Session Mode) 사용
향상된 세션 모드를 처음 들어보셨다면, 로컬 리소스와 장치를 가상 머신으로 리디렉션하는 데 도움이 되는 기능입니다. Windows 10 또는 Windows 8.1을 실행 중이라면 이 모드가 기본적으로 활성화되어 있습니다. 반면 Hyper-V 호스트가 Windows Server 2012 또는 Windows Server 2016을 실행 중이라면 수동으로 활성화해야 합니다.
아래 지침에 따라 USB 패스스루를 진행하세요:
- 먼저 Hyper-V 호스트에서 Hyper-V 관리자를 엽니다.
- 사용하려는 가상 머신을 마우스 오른쪽 버튼으로 클릭한 후 드롭다운 메뉴에서 Hyper-V 설정(Hyper-V Settings)을 선택합니다.
- 서버(Server)와 사용자(User) 섹션 모두에서 향상된 세션 모드 정책(Enhanced Sessions Mode Policy) 탭으로 이동하여 향상된 세션 모드 허용(Allow enhanced session mode) 옵션에 체크합니다.

- 그런 다음 적용(Apply)을 클릭하고 확인(OK) 버튼을 눌러 변경 사항을 저장합니다.
- 이제 사용하려는 로컬 리소스를 선택해야 합니다. 여기에는 로컬 드라이브, 프린터, USB 장치 등이 포함됩니다.
- 이를 위해 Hyper-V 관리자 창에서 가상 머신 이름을 두 번 클릭하여 가상 머신을 시작합니다.
- 로그인하기 전에 구성 창이 나타납니다. 이 창에서 옵션 표시(Show Options)를 클릭하여 추가 옵션을 확인합니다.

- 로컬 리소스(Local Resources) 탭으로 전환한 후 자세히(More) 버튼을 클릭합니다.
- 가상 머신이 로컬 USB 장치에 접근할 수 있도록 하려면 기타 지원되는 플러그 앤 플레이 장치(Other Supported Plug and Play devices) 옵션에 체크해야 합니다. 그런 다음 확인(OK) 버튼을 클릭합니다.
- 이 설정을 향후에도 사용하려면 이 가상 머신에 대한 향후 연결을 위해 내 설정 저장(Save my settings for future connections to this virtual machine) 확인란에 체크하면 됩니다.
- 마지막으로 연결(Connect)을 클릭하여 가상 머신에 로그인합니다.