원격 데스크톱 프로토콜을 통한 주변 장치 및 리소스 리디렉션
리디렉션을 사용하면 사용자는 클립보드, 웹캠, USB 디바이스, 프린터 등의 리소스와 주변 장치를 RDP(원격 데스크톱 프로토콜)을 통해 로컬 디바이스(클라이언트 쪽)와 원격 세션(서버 쪽) 간에 공유할 수 있습니다. 리디렉션의 목적은 로컬 디바이스를 사용할 때와 비슷한 원활한 원격 환경을 제공하는 것입니다. 이러한 환경은 사용자가 원격으로 작업할 때 생산성과 효율성을 높이는 데 도움이 됩니다. 관리자는 보안 요구 사항과 사용자 요구 사항 간의 균형을 맞추기 위해 리디렉션을 구성할 수 있습니다.
이 문서에서는 다양한 주변 장치 클래스에 따른 리디렉션 방법, 리디렉션 분류, 리디렉션 가능한 리소스 및 주변 장치의 지원되는 형식에 대한 자세한 정보를 제공합니다.
리디렉션 방법 및 분류
RDP는 두 가지 리디렉션 방법을 활용하여 로컬 디바이스와 원격 세션 간의 리소스와 주변 장치를 리디렉션합니다.
높은 수준 리디렉션: 특정 클래스의 주변 장치나 환경에 대한 모든 통신을 가로채고 최적화함으로써 지능형 매개자 역할을 합니다. 높은 수준 리디렉션은 원격 시나리오에서 최상의 성능을 보장하지만, 주변 장치 드라이버와 애플리케이션 지원에도 의존합니다.
불투명한 낮은 수준 리디렉션: 원격 시나리오에서 해석, 이해, 제한 또는 최적화를 시도하지 않고 주변 장치의 원시 통신을 전송합니다.
불투명한 낮은 수준 리디렉션은 적합한 높은 수준 주변 장치 리플렉션 리디렉션 솔루션이 없는 USB를 통해 연결되는 주변 장치와 원격 세션에서 제대로 작동하려면 특정 드라이버나 소프트웨어 요구 사항이 있는 주변 장치에 사용됩니다. USB 리디렉션은 URB(USB 요청 블록)를 사용하여 포트 및 프로토콜 수준에서 발생합니다. 불투명한 낮은 수준 리디렉션은 직렬/COM 포트를 통해 연결되는 주변 장치에도 사용됩니다.
높은 수준 리디렉션에는 4가지의 포괄적인 기술이 사용되는데, 이는 리디렉션 방향과 리디렉션되는 리소스나 주변 장치의 형식을 기준으로 분류됩니다. 4가지 높은 수준 리디렉션 분류는 다음과 같습니다.
주변 장치 리플렉션: 로컬 디바이스에 연결된 특정 종류의 주변 장치를 원격 세션에 반사합니다. 이 분류에는 키보드, 마우스, 터치, 펜, 트랙패드 등의 입력 디바이스가 포함됩니다.
데이터 공유: 클립보드에 대한 로컬 디바이스와 원격 세션 간의 데이터를 공유하고 전송합니다.
상태 리플렉션: 배터리 상태 및 위치와 같은 로컬 디바이스 상태를 원격 세션에 반영합니다.
애플리케이션 분할: 로컬 디바이스와 Microsoft Teams와 같은 원격 세션에서 애플리케이션 기능을 분할합니다.
사용되는 리디렉션 방법은 Windows, macOS, iOS/iPadOS, Android 등 주변 장치 종류와 사용 가능한 리소스, 주변 장치, 기능에 따라 달라질 수 있습니다. 원격 세션에서 사용할 수 있는 리디렉션은 사용하는 애플리케이션에 따라 달라집니다. 다양한 플랫폼에서 Windows 앱을 사용한 리디렉션 지원을 비교하려면 플랫폼 및 디바이스에서 Windows 앱 기능 비교를 참조하세요.
Important
가능하면 높은 수준의 리디렉션을 사용하는 것이 좋습니다. 이렇게 하면 최상의 성능과 사용자 환경을 제공할 수 있습니다. 불투명한 낮은 수준 리디렉션은 실질적으로 대체 시나리오이므로 이러한 주변 장치의 성능, 안정성 및 지원되는 기능 집합은 기본적으로 보장되지 않습니다.
암호화된 USB 스토리지 등 일부 주변 장치는 리디렉션할 수 없습니다.
USB 리디렉션 비교
다음 표에서는 불투명한 낮은 수준 USB 리디렉션을 사용하여 USB 주변 장치를 리디렉션하는 방법과 RDP에서 지원되는 주변 장치 클래스를 통해 높은 수준 리디렉션을 사용하여 주변 장치를 리디렉션하는 방법을 비교합니다.
불투명한 낮은 수준 USB 리디렉션 | 높은 수준 리디렉션 |
---|---|
원격 세션에 USB 주변 장치 드라이버를 설치해야 합니다. 로컬 디바이스에 드라이버를 설치할 필요가 없습니다. | 로컬 디바이스에 주변 장치 드라이버를 설치해야 합니다. 대부분의 경우 원격 세션에 드라이버를 설치할 필요가 없습니다. |
다양한 주변 장치 클래스에 대해 단일 리디렉션 방법을 사용합니다. | 각 주변 장치 클래스에 대해 특정 리디렉션 방법을 사용합니다. |
RDP 연결을 통해 USB 주변 장치와 USB 요청 블록을 전달합니다. | 주변 장치 클래스에 최적화된 프로토콜을 사용하여 원격 세션에서 높은 수준 주변 장치 기능을 노출합니다. |
원격 세션에서 USB 주변 장치를 사용하는 동안은 로컬 디바이스에서 해당 디바이스를 사용할 수 없습니다. 한 번에 하나의 원격 세션에서만 사용할 수 있습니다. | 주변 장치는 로컬 디바이스와 원격 세션에서 동시에 사용할 수 있습니다. |
짧은 대기 시간 연결을 위해 최적화되었습니다. 주변 장치 드라이버 구현에 따른 변수입니다. | LAN 및 WAN 연결에 최적화되어 있으며 대역폭과 대기 시간과 같은 조건의 변화를 인식합니다. |
불투명한 낮은 수준 USB 리디렉션 제어
불투명한 낮은 수준 USB 리디렉션을 사용하여 USB 주변 장치를 리디렉션하는 것은 RDP 속성 usbdevicestoredirect:s:<value>
에 의해 제어됩니다. 여기서 <값>은 USB\<Vendor ID and Product ID>\<USB instance ID>
형식의 디바이스 인스턴스 경로입니다.
Azure Virtual Desktop과 같은 일부 제품 및 서비스의 경우 다음과 같이 RDP 속성 값을 설정하여 리디렉션 동작을 제어할 수 있습니다.
일부 USB 주변 장치에는 불투명한 낮은 수준 USB 리디렉션이나 높은 수준 리디렉션을 사용하는 함수가 있을 수 있습니다. 기본적으로 이러한 주변 장치는 높은 수준 리디렉션을 사용하여 리디렉션됩니다. RDP 속성을 사용하면 이러한 주변 장치가 불투명한 낮은 수준 USB 리디렉션을 사용하도록 강제할 수 있습니다. 불투명한 낮은 수준 USB 리디렉션을 통해 USB 오디오 주변 장치를 사용하려면 오디오 출력 위치를 로컬 컴퓨터에서 소리를 재생하도록 설정해야 합니다.
클래스 GUID를 사용하여 전체 USB 주변 장치 클래스를 리디렉션하거나 리디렉션하지 않습니다.
*
와일드카드를 사용하면 값이 높은 수준 리디렉션 메커니즘 또는 드라이버가 설치되지 않은 대부분의 주변 장치를 리디렉션합니다. 클래스 GUID는 자동으로 일치하지 않는 추가 주변 장치를 리디렉션하는 데 사용할 수 있습니다.
각 값을 단독으로 사용할 수도 있고, 세미콜론으로 구분하여 여러 값을 조합하여 사용할 수도 있으며, 처리 순서에 따라 값을 조합하여 사용할 수도 있습니다. 다음 표에는 유효한 값과 처리 순서가 나열되어 있습니다.
처리 순서 | 값 | 설명 |
---|---|---|
해당 없음 | 지정된 값 없음 | 불투명한 낮은 수준 리디렉션을 사용하여 지원되는 USB 주변 장치를 리디렉션하지 마세요. |
1 | * |
높은 수준 리디렉션을 사용하지 않는 모든 주변 장치를 리디렉션합니다. |
2 | {<DeviceClassGUID>} |
지정된 디바이스 설정 클래스에 속하는 모든 주변 장치를 리디렉션합니다. |
3 | <USBInstanceID> |
지정된 디바이스 인스턴스 경로로 지정된 USB 주변 장치를 리디렉션합니다. |
4 | <-USBInstanceID> |
지정된 디바이스 인스턴스 경로로 지정된 주변 장치를 리디렉션하지 마세요. |
올바른 처리 순서로 문자열로 구성하면 구문은 다음과 같습니다.
usbdevicestoredirect:s:*;{<DeviceClassGUID>};<USBInstanceID>;<-USBInstanceID>
USB 디바이스의 디바이스 인스턴스 경로는 USB\<Device ID>\<USB instance ID>
형식의 세 섹션으로 구성됩니다. 이 값은 디바이스 관리자에서 찾거나 Get-PnpDevice PowerShell cmdlet을 사용하여 찾을 수 있습니다. 세 섹션은 순서대로 다음과 같습니다.
- 버스 드라이버 이름(이 경우 USB).
- 디바이스 ID에는 USB 주변 장치의 VID(공급업체 ID)와 PID(제품 ID)가 포함되어 있습니다.
- 인스턴스 ID는 컴퓨터에서 동일한 형식의 다른 디바이스와 디바이스를 고유하게 구분하는 데 사용됩니다.
RDP를 통해 리디렉션할 USB 주변 장치를 지정할 때 디바이스 인스턴스 경로를 사용할 수 있습니다. 디바이스 인스턴스 경로를 사용하는 경우, 이 값은 연결된 로컬 디바이스의 포트에 따라 달라집니다. 예를 들어, 첫 번째 USB 포트에 연결된 주변 장치는 디바이스 인스턴스 경로 USB\VID_045E&PID_0779\5&21F6DCD1&0&5
를 갖지만 동일한 주변 장치를 두 번째 USB 포트에 연결하면 디바이스 인스턴스 경로 USB\VID_045E&PID_0779\5&21F6DCD1&0&6
을 갖습니다. USB 주변 장치의 경우 디바이스 인스턴스 경로를 지정하면 주변 장치가 동일한 포트에 연결된 경우에만 리디렉션됩니다.
또는 클래스 GUID를 사용하여 USB 주변 장치의 전체 디바이스 설정 클래스를 리디렉션할 수 있습니다. 클래스 GUID를 사용하는 경우, 연결된 포트에 관계없이 로컬 디바이스에서 해당 클래스 GUID를 갖는 모든 주변 장치가 리디렉션됩니다. 예를 들어, 클래스 GUID {4d36e96c-e325-11ce-bfc1-08002be10318}
을 사용하면 모든 멀티미디어 디바이스가 리디렉션됩니다. 모든 클래스 GUID 목록은 공급업체에서 사용할 수 있는 시스템 정의 디바이스 설정 클래스에서 확인할 수 있습니다.
RDP 속성을 사용하는 방법에 대한 몇 가지 예는 usbdevicestoredirect RDP 속성을 참조하세요.
지원되는 리소스 및 주변 장치
다음 표에는 지원되는 각 리소스 또는 주변 장치 클래스와 각각에 대해 권장되는 리디렉션 방법이 나열되어 있습니다.
리소스 또는 주변 장치 클래스 | 리디렉션 방법 | 주요 데이터 흐름 방향 |
---|---|---|
올인원 프린터/스캐너 | 불투명한 낮은 수준 리디렉션 | 양방향 |
오디오 입력 - 마이크(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
오디오 출력 - 스피커(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 원격에서 로컬로 |
배터리(자동, 구성할 수 없음) | 높은 수준 - 상태 리플렉션 | 로컬에서 원격으로 |
생체 인식 판독기(세션 내에서만, 로그인 중에는 불가) | 불투명한 낮은 수준 리디렉션 | 양방향 |
카메라/웹캠(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
CD/DVD 드라이브(읽기 전용) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
클립보드 | 높은 수준 - 데이터 공유 | 양방향 |
키보드(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
로컬 하드 드라이브 또는 USB 이동식 스토리지 | 높은 수준 - 주변 장치 리플렉션 | 양방향 |
위치 | 높은 수준 - 상태 리플렉션 | 로컬에서 원격으로 |
마우스(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
MTP Media Player | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
멀티미디어 리디렉션 | 높은 수준 - 애플리케이션 분할 | 양방향 |
펜(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
프린터(로컬 연결 또는 네트워크) | 높은 수준 - 주변 장치 리플렉션 | 원격에서 로컬로 |
PTP 카메라 | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
스캐너 | 불투명한 낮은 수준 리디렉션 | 양방향 |
직렬/COM 포트 | 불투명한 낮은 수준 리디렉션 | 양방향 |
스마트 카드 판독기 | 높은 수준 - 주변 장치 리플렉션 | 양방향 |
터치(USB 또는 통합) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
트랙패드(USB 또는 통합, 정밀 터치패드(PTP) 제스처 제외) | 높은 수준 - 주변 장치 리플렉션 | 로컬에서 원격으로 |
USB에서 직렬 어댑터로 | 불투명한 낮은 수준 리디렉션 | 양방향 |
VoIP 전화/헤드셋 | 불투명한 낮은 수준 리디렉션 | 양방향 |
WebAuthN | 높은 수준 - 주변 장치 리플렉션 | 양방향 |
참고 항목
다음 주변 장치 클래스는 리디렉션이 차단됩니다.
- USB 네트워크 어댑터.
- USB 디스플레이.
스캐너 리디렉션에는 TWAIN 지원이 포함되지 않습니다.
배터리 리디렉션은 Azure Virtual Desktop 및 Windows 365에서만 사용할 수 있습니다. 자동으로 제공되며 구성할 수 없습니다.
Bluetooth 드라이버 스택 리디렉션은 지원되지 않습니다. Bluetooth 키보드와 같은 주변 장치가 로컬 디바이스에 연결된 경우 지원되는 주변 장치 클래스에 따라 원격 세션으로 리디렉션됩니다.
다음 다이어그램은 각 주변 장치 클래스에 사용되는 리디렉션 방법을 보여 줍니다.
구성 우선 순위
원격 세션 관리자가 리디렉션에 사용하도록 설정된 디바이스 클래스 및 리디렉션의 동작 방식을 구성합니다. 동작은 Microsoft Intune 또는 그룹 정책(Active Directory 또는 로컬) 서버 쪽에서 구성하거나 원격 세션에 연결하는 데 사용되는 .rdp
파일에서 지정할 수 있습니다. Azure Virtual Desktop 및 원격 데스크톱 서비스에는 RDP 속성을 대신 지정할 수 있는 브로커 서비스도 있습니다.
그러나 보다 제한적인 구성이 필요한 경우 로컬 디바이스에서 특정 설정을 재정의할 수 있습니다. 더 제한적인 설정은 어디에 구성되어 있든 우선적으로 적용됩니다. 예를 들어, 관리자가 모든 원격 세션에서 기본적으로 클립보드가 리디렉션되도록 구성했지만 로컬 디바이스에서 클립보드 리디렉션을 사용하지 않도록 설정하도록 구성된 경우 원격 세션에서 클립보드를 사용할 수 없습니다. 이는 일부 사용자 또는 디바이스가 기본 구성보다 더 제한적인 설정을 필요로 하는 상황에서 유연성을 제공합니다.
관련 콘텐츠
- 원격 데스크톱 프로토콜을 통한 오디오 및 동영상 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통해 카메라, 웹캠 및 동영상 캡처 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통한 클립보드 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통해 고정, 이동식 및 네트워크 드라이브 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통한 위치 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통해 Windows에서 미디어 전송 프로토콜 및 그림 전송 프로토콜 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통한 프린터 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통한 직렬 또는 COM 포트 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통한 스마트 카드 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통해 Windows에서 USB 리디렉션 구성.
- 원격 데스크톱 프로토콜을 통한 WebAuthn 리디렉션 구성
- 지원되는 RDP 속성.
- 플랫폼 및 디바이스 전반에 걸쳐 Windows 앱 기능 비교.
- 플랫폼과 디바이스 전반에 걸쳐 원격 데스크톱 앱 기능 비교.