RDP Shortpath は、Azure Virtual Desktop でサポートされているプラットフォームとセッション ホスト上のローカル デバイス Windows Appまたはリモート デスクトップ アプリ間の UDP ベースのトランスポートを確立します。 既定では、リモート デスクトップ プロトコル (RDP) は TCP ベースの逆接続トランスポートを開始し、UDP を使用してリモート セッションを確立しようとします。 UDP 接続が TCP 接続の切断に成功した場合は、フォールバック接続メカニズムとして TCP 接続が使用されます。
UDP ベースのトランスポートにより、接続の信頼性が向上し、待機時間の一貫性が向上します。 TCP ベースの逆接続トランスポートは、さまざまなネットワーク構成との最適な互換性を提供し、RDP 接続を確立するための成功率が高くなります。
RDP Shortpath は、次の 2 つの方法で使用できます。
Azure ExpressRoute やサイト間仮想プライベート ネットワーク (VPN) などのプライベート接続を使用するときに、クライアントとセッション ホストの間で直接接続が確立されるマネージド ネットワーク。 マネージド ネットワークを使用した接続は、次のいずれかの方法で確立されます。
クライアント デバイスとセッション ホスト間の 直接 UDP 接続。RDP Shortpath リスナーを有効にし、各セッション ホストの受信ポートが接続を受け入れることを許可する必要があります。
クライアントとセッション ホストの間で単純トラバーサル (STUN) プロトコルを使用して、クライアント デバイスとセッション ホスト間の 直接 UDP 接続。 セッション ホスト上の受信ポートを許可する必要はありません。
パブリック 接続を使用するときにクライアントとセッション ホストの間に直接接続が確立されるパブリック ネットワーク。 パブリック接続を使用する場合、2 つの接続の種類があります。これは、優先順にここに一覧表示されます。
クライアントとセッション ホスト間の単純トラバーサル (STUN) プロトコルを使用した 直接 UDP 接続。
クライアントとセッション ホスト間のトラバーサル Using Relay NAT (TURN) プロトコルを使用した リレー UDP 接続。
RDP Shortpath に使用されるトランスポートは、 ユニバーサル レート制御プロトコル (URCP) に基づいています。 URCP は、ネットワーク状態をアクティブに監視して UDP を強化し、公平かつ完全なリンク使用率を提供します。 URCP は、必要に応じて低遅延および損失レベルで動作します。
重要
- Azure Virtual Desktop 用 STUN を介したパブリック ネットワークの RDP Shortpath は、Azure パブリック クラウドとAzure Government クラウドで利用できます。
- TURN for Azure Virtual Desktop 経由のパブリック ネットワークの RDP Shortpath は、Azure パブリック クラウドでのみ使用できます。
主な利点
RDP Shortpath の使用には、次の主な利点があります。
RDP Shortpath のしくみ
マネージド ネットワークとパブリック ネットワークに対する RDP Shortpath のしくみを確認するには、次の各タブを選択します。
次の方法を使用して、マネージド ネットワークで RDP Shortpath を使用するために必要な直接視線接続を実現できます。
直接視線接続を持つことは、クライアントがファイアウォールによってブロックされることなく、セッション ホストに直接接続できることを意味します。
注:
他の VPN の種類を使用して Azure に接続する場合は、UDP ベースの VPN を使用することをお勧めします。 ほとんどの TCP ベースの VPN ソリューションでは入れ子になった UDP がサポートされていますが、TCP 輻輳制御の継承されたオーバーヘッドが追加され、RDP のパフォーマンスが低下します。
マネージド ネットワークに RDP Shortpath を使用するには、セッション ホストで UDP リスナーを有効にする必要があります。 既定では、ポート 3390 が使用されますが、別のポートを使用できます。
次の図は、Active Directory ドメインに参加しているマネージド ネットワークとセッション ホストに RDP Shortpath を使用する場合のネットワーク接続の概要を示しています。
接続シーケンス
すべての接続は、まず、Azure Virtual Desktop Gateway 経由で TCP ベースの 逆接続トランスポート を確立します。 次に、クライアントとセッション ホストが最初の RDP トランスポートを確立し、それらの機能の交換を開始します。 これらの機能は、次のプロセスを使用してネゴシエートされます。
セッション ホストは、IPv4 アドレスと IPv6 アドレスの一覧をクライアントに送信します。
クライアントはバックグラウンド スレッドを開始し、セッション ホストの IP アドレスのいずれかに対して直接、並列 UDP ベースのトランスポートを確立します。
クライアントは指定された IP アドレスをプローブしていますが、ユーザー接続に遅延が生じないように、リバース接続トランスポート経由で初期接続を確立し続けます。
クライアントがセッション ホストに直接接続している場合、クライアントは信頼できる UDP 経由で TLS を使用してセキュリティで保護された接続を確立します。
RDP Shortpath トランスポートを確立すると、リモート グラフィックス、入力、デバイス リダイレクトを含むすべての動的仮想チャネル (DVC) が新しいトランスポートに移動されます。 ただし、ファイアウォールまたはネットワーク トポロジによってクライアントが直接 UDP 接続を確立できなくなる場合、RDP は逆接続トランスポートで続行されます。
マネージド ネットワークの RDP Shortpath とパブリック ネットワークの両方をユーザーが使用できる場合は、最初に検出されたアルゴリズムが使用されます。 ユーザーは、そのセッションに対して最初に確立された接続を使用します。
パブリック接続を使用するときに UDP 接続が成功する可能性を最大限に高めるために、 直接 接続と リレー接続 の種類があります。
直接接続: STUN は、クライアントとセッション ホスト間の直接 UDP 接続を確立するために使用されます。 この接続を確立するには、クライアントとセッション ホストがパブリック IP アドレスとネゴシエートされたポートを介して相互に接続できる必要があります。 ただし、ほとんどのクライアントは、 ネットワーク アドレス変換 (NAT) ゲートウェイ デバイスの背後に置かれているため、独自のパブリック IP アドレスを知りません。 STUN は、NAT ゲートウェイ デバイスとクライアントの背後からパブリック IP アドレスを自己検出して、独自のパブリックに接続する IP アドレスを決定するためのプロトコルです。
クライアントが STUN を使用するには、そのネットワークで UDP トラフィックを許可する必要があります。 クライアントとセッション ホストの両方が、検出された他の IP アドレスとポートに直接ルーティングできる場合、通信は WebSocket プロトコル経由で直接 UDP を使用して確立されます。 ファイアウォールまたはその他のネットワーク デバイスが直接接続をブロックする場合は、リレーされた UDP 接続が試行されます。
リレー接続: TURN を使用して接続を確立し、直接接続できない場合にクライアントとセッション ホストの間で中間サーバー経由でトラフィックを中継します。 TURN は STUN の拡張機能です。 TURN を使用すると、パブリック IP アドレスとポートが事前に認識され、ファイアウォールやその他のネットワーク デバイスを介して許可されます。
ファイアウォールまたはその他のネットワーク デバイスが UDP トラフィックをブロックする場合、接続は TCP ベースの逆接続トランスポートにフォールバックします。
接続が確立されている場合、対話型接続確立 (ICE) は STUN と TURN の管理を調整して、接続が確立される可能性を最適化し、優先するネットワーク通信プロトコルに優先順位が与えられていることを確認します。
各 RDP セッションでは、RDP Shortpath トラフィックを受け入れる一時的なポート範囲 (既定では 49152 から 65535 ) から動的に割り当てられた UDP ポートが使用されます。 ポート 65330 は、Azure によって内部的に使用するために予約されているため、この範囲からは無視されます。 また、より小さい、予測可能なポート範囲を使用することもできます。 詳細については、「 パブリック ネットワークのクライアントで使用されるポート範囲を制限する」を参照してください。
ヒント
パブリック ネットワークの RDP Shortpath は、追加の構成なしで自動的に動作します。ネットワークとファイアウォールを使用すると、セッション ホストとクライアントの Windows オペレーティング システムでトラフィックが既定の値を使用することを許可し、RDP トランスポート設定が許可されます。
次の図は、セッション ホストがMicrosoft Entra IDに参加しているパブリック ネットワークに RDP Shortpath を使用する場合のネットワーク接続の概要を示しています。
TURN リレーの可用性
TURN リレーは、ACS TURN Relay (20.202.0.0/16) を使用して、次の Azure リージョンで使用できます。
- オーストラリア南東部
- インド中部
- 米国東部
- 米国東部 2
- フランス中部
- 西日本
- 北ヨーロッパ
- 米国中央南部
- 東南アジア
- 英国南部
- 英国西部
- 西ヨーロッパ
- 米国西部
- 米国西部 2
TURN リレーは、クライアント デバイスの物理的な場所に基づいて選択されます。 たとえば、クライアント デバイスが英国にある場合、英国南部または英国西部リージョンの TURN リレーが選択されます。 クライアント デバイスが TURN リレーから遠い場合、UDP 接続が TCP にフォールバックする可能性があります。
ネットワーク アドレス変換とファイアウォール
ほとんどの Azure Virtual Desktop クライアントは、プライベート ネットワーク上のコンピューターで実行されます。 インターネット アクセスは、ネットワーク アドレス変換 (NAT) ゲートウェイ デバイスを介して提供されます。 そのため、NAT ゲートウェイは、プライベート ネットワークからインターネット宛てのすべてのネットワーク要求を変更します。 このような変更は、プライベート ネットワーク上のすべてのコンピューターで 1 つのパブリック IP アドレスを共有することを意図しています。
IP パケットの変更により、トラフィックの受信者には、実際の送信者ではなく NAT ゲートウェイのパブリック IP アドレスが表示されます。 トラフィックが NAT ゲートウェイに戻ると、送信者の知らないうちに目的の受信者に転送するように注意します。 ほとんどのシナリオでは、このような NAT の背後に隠されているデバイスは、変換が行われているのを認識せず、NAT ゲートウェイのネットワーク アドレスを知りません。
NAT は、すべてのセッション ホストが存在する Azure Virtual Networks に適用されます。 セッション ホストがインターネット上のネットワーク アドレスに到達しようとすると、NAT ゲートウェイ (Azure によって提供される独自または既定のいずれか) またはAzure Load Balancerがアドレス変換を実行します。 さまざまな種類の送信元ネットワーク アドレス変換の詳細については、「 送信接続にソース ネットワーク アドレス変換 (SNAT) を使用する」を参照してください。
通常、ほとんどのネットワークには、トラフィックを検査し、ルールに基づいてブロックするファイアウォールが含まれます。 ほとんどのお客様は、受信接続 (つまり、要求なしで送信されたインターネットからの未承諾パケット) を防ぐためにファイアウォールを構成します。 ファイアウォールでは、要請されたトラフィックと未承諾のトラフィックを区別するために、データ フローを追跡するためのさまざまな手法が採用されています。 TCP のコンテキストでは、ファイアウォールは SYN パケットと ACK パケットを追跡し、プロセスは簡単です。 UDP ファイアウォールでは通常、パケット アドレスに基づいてヒューリスティックを使用して、トラフィックを UDP フローに関連付け、許可またはブロックします。 さまざまな NAT 実装を使用できます。
接続シーケンス
すべての接続は、まず、Azure Virtual Desktop Gateway 経由で TCP ベースの 逆接続トランスポート を確立します。 次に、クライアントとセッション ホストが最初の RDP トランスポートを確立し、それらの機能の交換を開始します。 パブリック ネットワークの RDP Shortpath がセッション ホストで有効になっている場合、セッション ホストは 候補収集と呼ばれるプロセスを開始します。
セッション ホストは、VPN や Teredo などの仮想インターフェイスを含め、セッション ホストに割り当てられているすべてのネットワーク インターフェイスを列挙します。
Windows サービス リモート デスクトップ サービス (TermService) は、各インターフェイスに UDP ソケットを割り当て、 IP:Port ペアを候補テーブルに ローカル候補として格納します。
リモート デスクトップ サービス サービスは、前の手順で割り当てられた各 UDP ソケットを使用して、パブリック インターネット上の Azure Virtual Desktop STUN サーバーに到達しようとします。 通信は、ポート 3478 に小さな UDP パケットを送信することによって行われます。
パケットが STUN サーバーに到達すると、STUN サーバーはパブリック IP とポートで応答します。 この情報は、 反射的候補として候補テーブルに格納されます。
セッション ホストがすべての候補を収集した後、セッション ホストは確立された逆接続トランスポートを使用して候補リストをクライアントに渡します。
クライアントがセッション ホストから候補の一覧を受け取ると、クライアントはその側で候補の収集も実行します。 次に、クライアントは候補リストをセッション ホストに送信します。
セッション ホストとクライアントが候補リストを交換した後、両当事者は、収集されたすべての候補を使用して相互に接続しようとします。 この接続試行は、両側で同時に実行されます。 多くの NAT ゲートウェイは、送信データ転送によってソケットが初期化されるとすぐに、ソケットへの受信トラフィックを許可するように構成されています。 NAT ゲートウェイのこの動作は、同時接続が不可欠な理由です。 STUN がブロックされているために失敗した場合は、TURN を使用してリレー接続が試行されます。
最初のパケット交換の後、クライアントとセッション ホストは 1 つまたは複数のデータ フローを確立できます。 これらのデータ フローから、RDP は最速のネットワーク パスを選択します。 その後、クライアントは、セッション ホストとの信頼できる UDP 経由で TLS を使用してセキュリティで保護された接続を確立し、RDP Shortpath トランスポートを開始します。
RDP で RDP Shortpath トランスポートが確立されると、リモート グラフィックス、入力、デバイス リダイレクトなど、すべての動的仮想チャネル (DVC) が新しいトランスポートに移動します。
マネージド ネットワーク用の RDP Shortpath とパブリック ネットワークの両方を使用できる場合は、最初に検出されたアルゴリズムが使用されます。つまり、ユーザーはそのセッションで最初に確立された接続を使用します。 詳細については、「 シナリオ 4 の例」を参照してください。
ネットワークの構成
パブリック ネットワークの RDP Shortpath をサポートするには、通常、特定の構成は必要ありません。 セッション ホストとクライアントは、ネットワーク構成で可能であれば、直接データ フローを自動的に検出します。 ただし、すべての環境は一意であり、一部のネットワーク構成は直接接続の成功率に悪影響を与える可能性があります。
推奨事項に従って、直接データ フローの確率を高めます。
RDP Shortpath は UDP を使用してデータ フローを確立するため、ネットワーク上のファイアウォールで UDP トラフィックがブロックされた場合、RDP Shortpath は失敗し、接続は TCP ベースの逆接続トランスポートにフォールバックします。 Azure Virtual Desktop では、Azure Communication ServicesとMicrosoft Teamsによって提供される STUN サーバーが使用されます。 この機能の性質上、セッション ホストからクライアントへの送信接続が必要です。 残念ながら、ほとんどの場合、ユーザーの場所を予測することはできません。 そのため、セッション ホストからインターネットへの送信 UDP 接続を許可することをお勧めします。 必要なポートの数を減らすために、 クライアントが UDP フローに使用するポート範囲を制限 できます。 RDP Shortpath のファイアウォールを構成する場合は、次の表を参考にしてください。
環境で、単一のプライベート ソース IP:ポート を一意のパブリック宛先 IP :Port にマッピングする対称 NAT を使用している場合は、TURN でリレー接続を使用できます。 これは、Azure Firewallと Azure NAT Gateway を使用する場合に当たります。 Azure 仮想ネットワークを使用した NAT の詳細については、「仮想ネットワークを使用 したソース ネットワーク アドレス変換」を参照してください。
パブリック ネットワーク用の RDP Shortpath を使用した接続の成功に関する一般的な推奨事項がいくつかあります。 詳細については、「 一般的な推奨事項」を参照してください。
マネージド ネットワークとパブリック ネットワークの両方に対して RDP Shortpath を使用できる場合は、最初に検出されたアルゴリズムが使用されます。 ユーザーは、そのセッションに対して最初に確立された接続を使用します。 詳細については、「 シナリオの例」を参照してください。
次のセクションには、RDP Shortpath を機能させるために許可する必要があるセッション ホストとクライアント デバイスのソース、宛先、プロトコルの要件が含まれています。
注:
6 月 15 日から、Microsoft は 40 の Azure リージョンで新しい TURN リレー IP 範囲 ( 51.5.0.0/16
) のロールアウトを開始します。 この新しい範囲は、Azure Virtual Desktop とWindows 365専用であり、以前に共有されていた 20.202.0.0/16 サブネットからの移行がAzure Communication Servicesによって使用されます。 このアップグレードは、パブリック ネットワークの RDP Shortpath (TURN/Relay 経由) を強化し、より高速で信頼性の高い接続をユーザーに提供するように設計されています。
セッション ホスト仮想ネットワーク
次の表では、セッション ホスト仮想ネットワークの RDP Shortpath のソース、宛先、プロトコルの要件について詳しくは、次の表をご覧ください。
名前 |
ソース |
送信元ポート |
Destination (転送先) |
宛先ポート |
プロトコル |
アクション |
STUN 直接接続 |
VM サブネット |
任意 |
任意 |
1024-65535 (既定値は 49152-65535) |
UDP |
許可 |
STUN/TURNリレー |
VM サブネット |
任意 |
20.202.0.0/16 |
3478 |
UDP |
許可 |
STUN/TURNリレー |
VM サブネット |
任意 |
51.5.0.0/16 |
3478 |
UDP |
許可 |
クライアント ネットワーク
次の表では、クライアント デバイスのソース、宛先、プロトコルの要件について詳しくは、次の表をご覧ください。
名前 |
ソース |
送信元ポート |
Destination (転送先) |
宛先ポート |
プロトコル |
アクション |
STUN 直接接続 |
クライアント ネットワーク |
任意 |
NAT ゲートウェイまたはAzure Firewallに割り当てられたパブリック IP アドレス (STUN エンドポイントによって提供) |
1024-65535 (既定値は 49152-65535) |
UDP |
許可 |
STUN/TURNリレー |
クライアント ネットワーク |
任意 |
20.202.0.0/16 |
3478 |
UDP |
許可 |
STUN/TURNリレー |
クライアント ネットワーク |
任意 |
51.5.0.0/16 |
3478 |
UDP |
許可 |
注:
6 月 15 日から、トラフィックは現在の Azure Communication Service (ACS) TURN Relay 範囲 (20.202.0.0/16
) から新しく指定されたサブネット 51.5.0.0/16
に段階的にリダイレクトされます。 このシフトはシームレスに設計されていますが、中断のないサービスを維持するために、新しい範囲のバイパス規則を事前に構成することが重要です。 両方の IP 範囲が適切にバイパスされている場合、エンド ユーザーは接続の問題を発生させるべきではありません。
Teredoサポート
RDP Shortpath には必要ありませんが、Teredoは追加の NAT トラバーサル候補を追加し、IPv4 専用ネットワークで RDP Shortpath 接続が成功する可能性を高めます。 セッション ホストとクライアントでTeredoを有効にする方法については、「Teredo サポートを有効にする」を参照してください。
UPnP のサポート
直接接続の可能性を高めるために、リモート デスクトップ クライアントの側では、RDP Shortpath で UPnP を使用して NAT ルーター上のポート マッピングを構成できます。 UPnP は、Xbox、配信の最適化、Teredoなど、さまざまなアプリケーションで使用される標準的なテクノロジです。 UPnP は、通常、ホーム ネットワーク上にあるルーターで一般提供されています。 UPnP は、ほとんどのホーム ルーターとアクセス ポイントで既定で有効になっていますが、多くの場合、企業ネットワークでは無効になっています。
一般的な推奨事項
パブリック ネットワークに RDP Shortpath を使用する場合の一般的な推奨事項を次に示します。
ユーザーがインターネット経由で Azure Virtual Desktop にアクセスする場合は、強制トンネリング構成を使用しないでください。
double NAT または Carrier-Grade-NAT (CGN) 構成を使用していないことを確認します。
ホーム ルーターで UPnP を無効にしないことをユーザーに推奨します。
クラウド パケット検査サービスの使用は避けてください。
TCP ベースの VPN ソリューションの使用は避けてください。
IPv6 接続またはTeredoを有効にします。
接続セキュリティ
RDP Shortpath は、RDP マルチトランスポート機能を拡張します。 これは、リバース接続トランスポートを置き換えるのではなく、それを補完します。 初期セッション ブローカーは、Azure Virtual Desktop サービスとリバース接続トランスポートを介して管理されます。 最初にリバース接続セッションと一致しない限り、すべての接続試行は無視されます。 認証後に RDP Shortpath が確立され、正常に確立された場合、リバース接続トランスポートがドロップされ、すべてのトラフィックが RDP Shortpath 経由で流れます。
RDP Shortpath は、セッション ホストの証明書を使用して、クライアントとセッション ホスト間の信頼できる UDP 経由で TLS を使用したセキュリティで保護された接続を使用します。 既定では、RDP 暗号化に使用される証明書は、展開中にオペレーティング システムによって自己生成されます。 また、エンタープライズ証明機関によって発行された一元管理の証明書を展開することもできます。 証明書の構成の詳細については、「 リモート デスクトップ リスナー証明書の構成」を参照してください。
注:
RDP Shortpath によって提供されるセキュリティは、TCP リバース接続トランスポートによって提供されるセキュリティと同じです。
シナリオ例
さまざまなネットワーク トポロジ間で RDP Shortpath を使用するかどうかを判断するために、接続がどのように評価されるかを示すシナリオの例を次に示します。
シナリオ 1
UDP 接続は、パブリック ネットワーク (インターネット) 経由でクライアント デバイスとセッション ホストの間でのみ確立できます。 VPN などの直接接続は使用できません。 UDP はファイアウォールまたは NAT デバイス経由で許可されます。
シナリオ 2
ファイアウォールまたは NAT デバイスが直接 UDP 接続をブロックしていますが、クライアント デバイスとセッション ホスト間の TURN を使用して、パブリック ネットワーク (インターネット) 経由でリレーされた UDP 接続を中継できます。 VPN などの別の直接接続は使用できません。
シナリオ 3
パブリック ネットワーク経由または直接 VPN 接続経由でクライアント デバイスとセッション ホストの間で UDP 接続を確立できますが、マネージド ネットワークの RDP Shortpath は有効になっていません。 クライアントが接続を開始すると、ICE/STUN プロトコルで複数のルートが表示され、各ルートが評価され、待機時間が最も短いものが選択されます。
この例では、直接 VPN 接続経由のパブリック ネットワークに RDP Shortpath を使用する UDP 接続が作成されます。これは、緑色の線で示すように、待機時間が最も短いためです。
シナリオ 4
パブリック ネットワークとマネージド ネットワークの RDP Shortpath の両方が有効になっています。 パブリック ネットワーク経由または直接 VPN 接続を介して、クライアント デバイスとセッション ホストの間で UDP 接続を確立できます。 クライアントが接続を開始すると、ポート 3390 を介したマネージド ネットワークの RDP Shortpath (既定) と ICE/STUN プロトコルを介したパブリック ネットワークの RDP Shortpath を使用した接続が同時に試行されます。 最初に見つかったアルゴリズムが使用され、ユーザーはそのセッションに対して最初に確立された接続を使用します。
パブリック ネットワークを経由すると、NAT デバイス、ロード バランサー、STUN サーバーなど、より多くの手順が実行されるため、最初に検出されたアルゴリズムは、マネージド ネットワークに RDP Shortpath を使用して接続を選択し、最初に確立される可能性があります。
シナリオ 5
パブリック ネットワーク経由または直接 VPN 接続経由でクライアント デバイスとセッション ホストの間で UDP 接続を確立できますが、マネージド ネットワークの RDP Shortpath は有効になっていません。 ICE/STUN が特定のルートを使用できないようにするために、管理者は UDP トラフィックのルートの 1 つをブロックできます。 ルートをブロックすると、残りのパスが常に使用されるようになります。
この例では、直接 VPN 接続で UDP がブロックされ、ICE/STUN プロトコルによってパブリック ネットワーク経由で接続が確立されます。
シナリオ 6
パブリック ネットワークとマネージド ネットワークの両方の RDP Shortpath が構成されていますが、直接 VPN 接続を使用して UDP 接続を確立できませんでした。 ファイアウォールまたは NAT デバイスもパブリック ネットワーク (インターネット) を使用して直接 UDP 接続をブロックしていますが、クライアント デバイスとセッション ホスト間の TURN を使用して、パブリック ネットワーク (インターネット) 経由でリレーされた UDP 接続を中継できます。
シナリオ 7
パブリック ネットワークとマネージド ネットワークの RDP Shortpath の両方が構成されていますが、UDP 接続を確立できませんでした。 この場合、RDP Shortpath は失敗し、接続は TCP ベースの逆接続トランスポートにフォールバックします。
次の手順