Azure Virtual Desktop の RDP Shortpath を構成する

重要

TURN for Azure Virtual Desktop を介したパブリック ネットワークの RDP Shortpath が利用できるのは Azure パブリック クラウドにおいてだけです。

ユーザーは、UDP または TCP ベースの転送でリモート デスクトップ プロトコル (RDP) を使って、Azure Virtual Desktop からリモート セッションに接続できます。 RDP Shortpath は、ローカル デバイスの Windows アプリまたはサポートされているプラットフォーム上のリモート デスクトップ アプリと、セッション ホストとの間に、UDP ベースの転送を確立します。

UDP ベースのトランスポートにより、接続の信頼性と待ち時間の一貫性が向上します。 TCP ベースのリバース接続トランスポートでは、さまざまなネットワーク構成との最適な互換性が提供され、RDP 接続の確立が成功する確率が高くなります。 UDP 接続を確立できない場合は、TCP ベースの逆接続転送がフォールバック接続方法として使われます。

クライアント デバイスとリモート セッションの間で UDP を柔軟に使用できるよう、RDP Shortpath には 4 つのオプションがあります。

  • マネージド ネットワークのための RDP Shortpath: ExpressRoute プライベート ピアリングや仮想プライベート ネットワーク (VPN) などのプライベート接続を使用する、クライアント デバイスとセッション ホストの間の "直接的な" UDP 接続。 セッション ホストで RDP Shortpath リスナーを有効にして、受信ポートが接続を受け入れられるようにします。

  • ICE/STUN によるマネージド ネットワークのための RDP Shortpath: ExpressRoute プライベート ピアリングや仮想プライベート ネットワーク (VPN) などのプライベート接続を使用する、クライアント デバイスとセッション ホストの間の "直接的な" UDP 接続。 セッション ホストで RDP Shortpath リスナーが有効にされておらず、受信ポートが許可されていない場合、ICE/STUN を使って、使用可能な IP アドレスと、接続に使用できる動的ポートを検出します。 ポートの範囲は構成できます。

  • ICE/STUN による公衆ネットワークのための RDP Shortpath: パブリック接続を使用する、クライアント デバイスとセッション ホストの間の "直接的な" UDP 接続。 ICE/STUN は、使用可能な IP アドレスと、接続に使用できる動的ポートを検出するために使われます。 RDP Shortpath リスナーと受信ポートは必要ありません。 ポートの範囲は構成できます。

  • TURN を介したパブリック ネットワークの RDP Shortpath: TURN がクライアントとセッション ホストの間の中間サーバー経由でトラフィックを中継するパブリック接続を使用する、クライアント デバイスとセッション ホストの間の "間接的な" UDP 接続。 このオプションの使用例は、接続で対称 NAT が使われている場合です。 接続には動的ポートが使われます。ポート範囲は構成できます。 TURN が利用可能な Azure リージョンの一覧については、TURN が利用可能なサポート対象の Azure リージョンに関する記事を参照してください。 クライアント デバイスからの接続も、サポートされている場所に存在する必要があります。 RDP Shortpath リスナーと受信ポートは必要ありません。

4 つのオプションのどれをクライアント デバイスで使用できるかは、ネットワーク構成によっても異なります。 RDP Shortpath のしくみの詳細と、いくつかのシナリオ例については、RDP Shortpath に関する記事をご覧ください。

この記事では、4 つの各オプションの既定の構成とその構成方法を示します。 また、RDP Shortpath が動作していることを確認する手順と、必要な場合にそれを無効にする方法についても説明します。

ヒント

ネットワークとファイアウォールでトラフィックの通過が許可されていて、セッション ホストとクライアントの Windows オペレーティング システムで RDP 転送の設定に既定値が使われている場合、STUN または TURN による公衆ネットワーク用の RDP Shortpath は、追加の構成なしで自動的に動作します。

既定の構成

セッション ホスト、関連するホスト プールのネットワーク設定、クライアント デバイスを、RDP Shortpath 用に構成する必要があります。 必要な構成の内容は、4 つの RDP Shortpath オプションのうちどれを使うかに依存し、クライアント デバイスのネットワーク トポロジと構成によっても異なります。

次に示すのは、各オプションの既定の動作と、構成する必要があることです。

RDP Shortpath のオプション セッション ホストの設定 ホスト プールのネットワーク設定 クライアント デバイスの設定
マネージド ネットワーク用 RDP Shortpath Windows では、UDP と TCP は既定で有効になります。

Microsoft Intune またはグループ ポリシーを使ってセッション ホストで RDP Shortpath リスナーを有効にし、受信ポートが接続を受け入れられるようにする必要があります。
既定値 (有効) Windows では、UDP と TCP は既定で有効になります。
ICE/STUN を使用するマネージド ネットワーク用の RDP Shortpath Windows では、UDP と TCP は既定で有効になります。

追加の構成は必要ありませんが、使われるポート範囲を制限できます。
既定値 (有効) Windows では、UDP と TCP は既定で有効になります。
ICE/STUN を使用する公衆ネットワーク用の RDP Shortpath Windows では、UDP と TCP は既定で有効になります。

追加の構成は必要ありませんが、使われるポート範囲を制限できます。
既定値 (有効) Windows では、UDP と TCP は既定で有効になります。
TURN を介した公衆ネットワーク用の RDP Shortpath Windows では、UDP と TCP は既定で有効になります。

追加の構成は必要ありませんが、使われるポート範囲を制限できます。
既定値 (有効) Windows では、UDP と TCP は既定で有効になります。

前提条件

RDP Shortpath を有効にする前に、次のものが必要です。

  • 次のいずれかのアプリを実行しているクライアント デバイス。

  • マネージド ネットワーク用の RDP Shortpath の場合は、クライアントとセッション ホストの間の直接接続が必要です。 つまり、クライアントはポート 3390 (既定) でセッション ホストに直接接続でき、ファイアウォール (Windows ファイアウォールを含む) またはネットワーク セキュリティ グループによってブロックされません。 ExpressRoute プライベート ピアリングや、Azure VPN Gateway などのサイト間またはポイント対サイト VPN (IPsec) は、マネージド ネットワークの例です。

  • クライアントとセッション ホストの両方でのインターネット アクセス。 セッション ホストには、セッション ホストからインターネットへの送信 UDP 接続、または STUN および TURN サーバーへの接続が必要です。 必要なポートの数を減らすには、STUN と TURN で使われるポート範囲を制限できます。

  • Azure PowerShell をローカルで使用したい場合は、「Azure Virtual Desktop で Azure CLI と Azure PowerShell を使用する」を参照して、Az.DesktopVirtualization PowerShell モジュールがインストールされていることを確認してください。 別の方法として、Azure Cloud Shell を使用します。

  • Azure PowerShell を使って RDP Shortpath を構成するためのパラメーターは、Az.DesktopVirtualization モジュールのバージョン 5.2.1 プレビューで追加されます。 PowerShell ギャラリーからそれをダウンロードしてインストールできます。

マネージド ネットワークの RDP Shortpath 用に RDP Shortpath リスナーを有効にする

マネージド ネットワーク用の RDP Shortpath オプションの場合は、セッション ホストで RDP Shortpath リスナーを有効にし、受信ポートを開いて接続を受け入れる必要があります。 これは、Microsoft Intune または Active Directory ドメインのグループ ポリシーを使って行うことができます。

重要

他の 3 つの RDP Shortpath オプションでは、使用可能な IP アドレスと接続に使われる動的ポートは ICE/STUN または TURN を使って検出されるため、RDP Shortpath リスナーを有効にする必要はありません。

お使いのシナリオに関連するタブを選択します。

Microsoft Intune を使ってセッション ホストで RDP Shortpath リスナーを有効にするには:

  1. Microsoft Intune 管理センターにサインインします。

  2. 設定カタログ プロファイル型で、Windows 10 以降のデバイスの構成プロファイルを作成または編集します。

  3. ピッカー設定で、[管理テンプレート]>[Windows コンポーネント]>[リモート デスクトップ サービス]>[リモート デスクトップ セッション ホスト]>[Azure Virtual Desktop] の順に移動します。

    Microsoft Intune ポータルでの Azure Virtual Desktop 管理用テンプレート オプションを示すスクリーンショット。

  4. [マネージド ネットワーク用に RDP Shortpath を有効にする] チェック ボックスをオンにして、設定ピッカーを閉じます。

  5. [管理用テンプレート] カテゴリを展開して、[マネージド ネットワーク用に RDP Shortpath を有効にする] のスイッチを [有効] に切り替えます。

  6. [次へ] を選択します。

  7. 省略可能: [スコープ タグ] タブで、プロファイルをフィルター処理するスコープのタグを選択します。 スコープのタグの詳細については、分散 IT のためのロールベースのアクセス制御(RBAC) とスコープのタグの使用に関するページをご覧ください。

  8. [割り当て] タブで、構成するリモート セッションを提供するコンピューターを含むグループを選択し、[次へ] を選択します。

  9. [確認 + 作成] タブで設定を確認し、[作成] を選択します。

  10. Windows ファイアウォールと使用しているその他のファイアウォールで、セッション ホストへのインバウンドを構成したポートが許可されていることを確認します。 「Intune でのエンドポイント セキュリティのファイアウォール ポリシー」の手順に従って行います。

  11. リモート セッションを提供するコンピューターにポリシーが適用されたら、再起動して設定を有効にします。

セッション ホストで UDP が有効になっていることを確認する

セッション ホストの場合、Windows では UDP は既定で有効になります。 Windows レジストリで RDP トランスポート プロトコルの設定を調べて、UDP が有効になっていることを確認するには:

  1. セッション ホストで PowerShell プロンプトを開きます。

  2. 次のコマンドを実行すると、レジストリが調べられて、現在の RDP トランスポート プロトコルの設定が出力されます。

    $regKey = Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services"
    
    If ($regKey.PSObject.Properties.name -contains "SelectTransport" -eq "True") {
        If (($regkey | Select-Object -ExpandProperty "SelectTransport") -eq 1) {
            Write-Output "The RDP transport protocols setting has changed. Its value is: Use only TCP."
        } elseif (($regkey | Select-Object -ExpandProperty "SelectTransport") -eq 2) {
            Write-Output "The default RDP transport protocols setting has changed. Its value is: Use either UDP or TCP."
        }
    } else {
        Write-Output "The RDP transport protocols setting hasn't been changed from its default value. UDP is enabled."
    }
    

    次の出力のような出力になる必要があります。

    The RDP transport protocols setting hasn't been changed from its default value.
    

    出力で Use only TCP という値が示される場合は、Microsoft Intune または Active Directory ドメインのグループ ポリシーによって、値が変更されている可能性があります。 次のいずれかの方法で、UDP を有効にする必要があります。

    1. お使いのセッション ホストを対象とする既存の Microsoft Intune ポリシーまたは Active Directory グループ ポリシーを編集します。 このポリシー設定は、次のいずれかの場所にあります。

      • Intune ポリシーの場合: [管理用テンプレート]>[Windows コンポーネント]>[リモート デスクトップ サービス]>[リモート デスクトップ セッション ホスト]>[接続]>[RDP トランスポート プロトコルの選択]

      • グループ ポリシーの場合: [コンピューターの構成]>[ポリシー]>[管理用テンプレート]>[Windows コンポーネント]>[リモート デスクトップ サービス]>[リモート デスクトップ セッション ホスト]>[接続]>[RDP トランスポート プロトコルの選択]

    2. 設定を [未構成] に設定するか、または [有効] に設定してから [トランスポートの種類の選択][UDP と TCP の両方を使用] を選びます。

    3. セッション ホストでポリシーを更新してから、再起動して設定を有効にします。

ホスト プールのネットワーク設定を構成する

Azure portal または Azure PowerShell を使ってホスト プールのネットワーク設定を構成すると、RDP Shortpath の使用方法を細かく制御できます。 ホスト プールでの RDP Shortpath の構成では、必要に応じて、4 つの RDP Shortpath オプションのうちのどれをセッション ホスト構成と共に使用するかを設定できます。

ホスト プールとセッション ホストの構成の間に競合がある場合は、最も制限の厳しい設定が使われます。 たとえば、マネージド ネットワークに RDP Shortpath が構成されていて、セッション ホストではリスナーが有効になっているのに、ホスト プールでは無効に設定されている場合、マネージド ネットワークの RDP Shortpath は機能しません。

お使いのシナリオに関連するタブを選択します。

Azure portal を使って、ホスト プールのネットワーク設定で RDP Shortpath を構成する方法を次に示します。

  1. Azure portal にサインインします。

  2. 検索バーに「Azure Virtual Desktop」と入力し、一致するサービス エントリを選択します。

  3. [ホスト プール] を選んでから、構成するホスト プールを選びます。

  4. [ネットワーク] を選んでから、[RDP Shortpath] を選びます。

    ホスト プールのネットワーク プロパティの [RDP Shortpath] タブを示すスクリーンショット。

  5. オプションごとに、要件に基づいてドロップダウンから値を選びます。 各オプションの既定値有効となっています。

  6. [保存] を選択します。

Windows クライアント デバイスで UDP が有効になっていることを確認する

Windows クライアント デバイスの場合、UDP は既定で有効になります。 Windows レジストリで UDP が有効になっていることを確認するには:

  1. Windows クライアント デバイスで PowerShell プロンプトを開きます。

  2. 次のコマンドを実行すると、レジストリが調べられて、現在の設定が出力されます。

    $regKey = Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client"
    
    If ($regKey.PSObject.Properties.name -contains "fClientDisableUDP" -eq "True") {
        If (($regkey | Select-Object -ExpandProperty "fClientDisableUDP") -eq 1) {
            Write-Output "The default setting has changed. UDP is disabled."
        } elseif (($regkey | Select-Object -ExpandProperty "fClientDisableUDP") -eq 0) {
            Write-Output "The default setting has changed, but UDP is enabled."
        }
    } else {
        Write-Output "The default setting hasn't been changed from its default value. UDP is enabled."
    }
    

    次の出力のような出力になる必要があります。

    The default setting hasn't been changed from its default value. UDP is enabled.
    

    出力で "UDP is disabled" と示される場合は、Microsoft Intune または Active Directory ドメインのグループ ポリシーによって、値が変更されている可能性があります。 次のいずれかの方法で、UDP を有効にする必要があります。

    1. お使いのセッション ホストを対象とする既存の Microsoft Intune ポリシーまたは Active Directory グループ ポリシーを編集します。 このポリシー設定は、次のいずれかの場所にあります。

      • Intune ポリシーの場合: [管理用テンプレート]>[Windows コンポーネント]>[リモート デスクトップ サービス]>[リモート デスクトップ接続クライアント]>[クライアントの UDP を無効にする]

      • グループ ポリシーの場合: [コンピューターの構成]>[ポリシー]>[管理用テンプレート]>[Windows コンポーネント]>[リモート デスクトップ サービス]>[リモート デスクトップ接続クライアント]>[クライアントの UDP を無効にする]

    2. 設定を [未構成] に設定するか、[無効] に設定します。

    3. クライアント デバイスでポリシーを更新してから、再起動して設定を有効にします。

クライアント デバイスの STUN/TURN サーバー接続と NAT の種類を確認する

実行可能ファイル avdnettest.exe を実行して、クライアント デバイスが STUN/TURN エンドポイントに接続できること、NAT が使われているかどうか、およびその種類を検証し、基本的な UDP 機能が動作することを確認できます。 最新バージョンの avdnettest.exe へのダウンロード リンクはこちらです。

ファイルをダブルクリックするか、コマンド ラインから実行することで、avdnettest.exe を実行できます。 接続が成功した場合、出力は次のようになります。

Checking DNS service ... OK
Checking TURN support ... OK
Checking ACS server 20.202.68.109:3478 ... OK
Checking ACS server 20.202.21.66:3478 ... OK

You have access to TURN servers and your NAT type appears to be 'cone shaped'.
Shortpath for public networks is very likely to work on this host.

環境で対称 NAT を使用している場合は、TURN との間接接続を使用できます。 ファイアウォールとネットワーク セキュリティ グループの構成の詳細については、RDP Shortpath のネットワーク構成に関する記事を参照してください。

省略可能: Teredo のサポートを有効にする

RDP Shortpath には必要ありませんが、Teredo ではさらに NAT トラバーサル候補が追加され、IPv4 のみのネットワークでの RDP Shortpath 接続の成功率が高まります。 PowerShell を使って、セッション ホストとクライアントの両方で Teredo を有効にできます。

  1. 管理者として PowerShell プロンプトを開きます。

  2. 次のコマンドを実行します。

    Set-NetTeredoConfiguration -Type Enterpriseclient
    
  3. 設定を有効にするには、セッション ホストとクライアント デバイスを再起動します。

STUN と TURN で使用されるポート範囲を制限する

既定では、STUN または TURN を使う RDP Shortpath オプションは、エフェメラル ポートの範囲 (49152 から 65535) を使って、サーバーとクライアントの間の直接パスを確立します。 ただし、より小さくて予測可能なポート範囲を使うように、セッション ホストを構成することもできます。

より小さいポート 38300 から 39299 の既定の範囲を設定することもできますし、独自のポート範囲を指定することもできます。 セッション ホストで有効にすると、Windows アプリまたはリモート デスクトップ アプリは、すべての接続について、ユーザーが指定した範囲からポートをランダムに選びます。 この範囲をすべて使うと、接続は既定のポート範囲 (49152 から 65535) の使用にフォールバックします。

ベースとプール サイズを選ぶときは、必要なポートの数を考慮してください。 範囲は 1024 から 49151 の間で指定する必要があります。その後、一時的なポート範囲が始まります。

Microsoft Intune または Active Directory ドメインのグループ ポリシーを使って、ポート範囲を制限できます。 お使いのシナリオに関連するタブを選択します。

Microsoft Intune を使って、STUN と TURN で使われるポート範囲を制限するには:

  1. Microsoft Intune 管理センターにサインインします。

  2. 設定カタログ プロファイル型で、Windows 10 以降のデバイスの構成プロファイルを作成または編集します。

  3. ピッカー設定で、[管理テンプレート]>[Windows コンポーネント]>[リモート デスクトップ サービス]>[リモート デスクトップ セッション ホスト]>[Azure Virtual Desktop] の順に移動します。

    Microsoft Intune ポータルでの Azure Virtual Desktop 管理用テンプレート オプションを示すスクリーンショット。

  4. [アンマネージド ネットワーク用に RDP Shortpath のポート範囲を使用する] チェック ボックスをオンにして、設定ピッカーを閉じます。

  5. [管理用テンプレート] カテゴリを展開して、[アンマネージド ネットワーク用に RDP Shortpath のポート範囲を使用する] のスイッチを [有効] に切り替えます。

  6. [ポート プール サイズ (デバイス)][UDP ベース ポート (デバイス)] の値を入力します。 既定値はそれぞれ 100038300 です。

  7. [次へ] を選択します。

  8. 省略可能: [スコープ タグ] タブで、プロファイルをフィルター処理するスコープのタグを選択します。 スコープのタグの詳細については、分散 IT のためのロールベースのアクセス制御(RBAC) とスコープのタグの使用に関するページをご覧ください。

  9. [割り当て] タブで、構成するリモート セッションを提供するコンピューターを含むグループを選択し、[次へ] を選択します。

  10. [確認 + 作成] タブで設定を確認し、[作成] を選択します。

  11. リモート セッションを提供するコンピューターにポリシーが適用されたら、再起動して設定を有効にします。

RDP Shortpath が動作していることを確認する

RDP Shortpath を構成したら、クライアント デバイスからリモート セッションに接続し、接続で UDP が使われていることを確認します。 使用中の転送は、Windows アプリまたはリモート デスクトップ アプリの [接続情報] ダイアログ、クライアント デバイスのイベント ビューアー ログ、または Azure portal の Log Analytics を使って確認できます。

お使いのシナリオに関連するタブを選択します。

接続で RDP Shortpath が使用されていることを確認するには、クライアントの接続情報をチェックします。

  1. リモート セッションに接続します。

  2. 次のスクリーンショットに示されているように、画面の上部にある [接続] ツール バーに移動して信号強度アイコンを選択し、[接続情報] ダイアログを開きます。

    リモート デスクトップ クライアントのリモート デスクトップ接続バーのスクリーンショット。

  3. 次のスクリーンショットで示すように、UDP が有効になっていることを出力で確認できます。

    • マネージド ネットワークに対して RDP Shortpath との直接接続が使われている場合、トランスポート プロトコルの値は UDP (プライベート ネットワーク) になります。

      マネージド ネットワークに RDP Shortpath が使われているときの、リモート デスクトップ接続情報ダイアログのスクリーンショット。

    • STUN が使われている場合は、トランスポート プロトコルの値は UDP になります。

      STUN 使用時のリモート デスクトップ接続情報ダイアログのスクリーンショット。

    • TURN が使われている場合は、トランスポート プロトコルの値は UDP (リレー) になります。

      TURN 使用時のリモート デスクトップ接続情報ダイアログのスクリーンショット。

公衆ネットワーク用の RDP Shortpath トランスポートを使用して接続を確立できない場合は、RDP Shortpath のトラブルシューティングに関する記事を参照してください。