VDAとデリバリーコントローラー間のWebSocket通信

最終公開日 : Nov 13, 2026
この記事では、Windows Communication Foundation (WCF) の代替として、VDAとDelivery Controller間のWebSocket通信を確立する手順について説明します。

ステップ1:Delivery ControllerでWebSocketを有効にする

  1. サイトを構成します。詳しくは、「サイトの作成」を参照してください。
  2. サイト上の各Delivery ControllerにTLS証明書をインストールします。詳細については、「ControllerにTLSサーバー証明書をインストールする」を参照してください。
  3. 次のコマンドを使用して、各Delivery Controller™でWebSocket通信を有効にします。
    New-ItemProperty "HKLM:\SOFTWARE\Citrix\DesktopServer\WorkerProxy" -Name "WebSocket_Enabled" -PropertyType "DWord" -Value 1 -Force
    注:
    WebSocketを有効にした後、必ずDelivery Controllerを再起動してください。

ステップ2:VDAでWebSocketを有効にする

  1. Delivery Controllerを信頼するために、VDAにルートおよび中間証明機関 (CA) をインストールします。
  2. VDAの作成方法に基づいて、VDAのWebSocket通信を有効にします。
    • ドメインに参加していないVDA:
      WebSocket通信はデフォルトで有効になっています。追加の構成は不要です。
    • 簡易インストールを使用して作成されたドメイン参加済みVDA:
      簡易インストールスクリプト (ctxinstall.sh) を最初に実行する前に、/opt/Citrix/VDA/sbin/ctxinstall.confで次の環境変数を設定してWebSocketを有効にします。
      • CTX_XDL_DJ_ENROLLMENT_TOKEN_FILE=<file-path\>|'<none\>' – WebSocketの有効化を制御し、VDA登録用のトークンファイルを指定します。デフォルト値は**'<none\>'**で、WebSocketが無効であることを意味します。ドメイン参加済みVDAでWebSocketを有効にするには、トークンファイルへのパスを入力します。
      • CTX_XDL_ENROLLMENT_TOOL_USING_LDAPS='y|n' – 登録ツールがLDAPまたはLDAPSのどちらを照会するかを構成します。デフォルトではLDAPを照会します ('n')。LDAPSを使用するには、値を**'y'**に設定します。
    • Machine Creation Services™ (MCS) を使用して作成されたドメイン参加済みVDA:
      テンプレートマシンで、/etc/xdl/mcs/mcs_local_setting.reg を開き、WebSocket を有効にするために、次のようなコマンドラインを追加します。
      create -k "HKLM\Software\Citrix\VirtualDesktopAgent" -t "REG_DWORD" -v "CbpTransportVersion2" -d "0x00000001" --force
      このコマンドは、CbpTransportVersion2 レジストリキーを作成または変更します。デフォルトでは、値は 0 (WCF通信) です。ドメイン参加済みVDAでWebSocket通信を有効にするには、値をゼロ以外の値に設定します。レジストリを変更した後、ctxvda サービスを再起動して変更を適用します。
      ヒント:
      作成方法に関係なく、任意のドメイン参加済みVDAで、CbpTransportVersion2 レジストリキーを使用してWCFとWebSocketを切り替えることができます。