Citrixサポートブログ

  • トラブルシューティング
2019.04.07

Citrix NetScaler Gateway を使用した場合のXenApp7.15の公開アプリケーション起動処理の流れ

Citrix NetScaler Gateway を使用した場合のXenApp7.15の公開アプリケーション起動処理の流れ

こんにちは。Citrix製品のサポートを担当している川東(かわひがし)です。

Citrix XenApp(※現在の製品名はCitrix Virtual Apps)は、複数のコンポーネントが連動して動作するため、公開アプリケーション起動で問題が発生した際に、起動処理の流れが把握できていると問題切り分けをスムーズに行える場合があります。

  • 製品名の変更の詳細はこちら をご参照ください。

本記事は、Citrix NetScaler Gateway(以下、NetScaler Gateway)を使用した場合のXenApp7.15の公開アプリケーション起動処理の流れについて説明します。NetScaler Gatewayを使用しない場合の以下の記事を先に読んで頂くと本記事の内容がイメージしやすくなると思いますので、是非ご参照ください!


本記事は1ページで以下の3つに内容を分けて説明しています。

・NetScaler Gatewayサイトへのログインから公開アプリケーションアイコン一覧の表示まで
・公開アプリケーションのアイコンをクリック後、起動用のICAファイルがダウンロードされるまで
・クライアント端末から公開アプリケーションの起動要求を送信してから起動が完了するまで


【参考情報】
Citrix サポートブログ
Windows ファイアウォール使用してXenApp(Citrix Virtual Apps)のポートをブロックする動作テスト

https://www.ashisuto.co.jp/citrix_blog/article/201903-FireWall-XenApp.html

※開放する必要のあるポート番号を検証環境で動作確認する場合、こちらの記事をご参考にしてください。

CTX227054
NetScaler Gateway, StoreFront and XenDesktop Integration Communication Workflow
https://support.citrix.com/article/CTX227054

CTX236889
Application and Desktop Launch Process for internal network users
https://support.citrix.com/article/CTX236889

CTX128909
XenDesktop Connection Process and Communication Flow
https://support.citrix.com/article/CTX128909

CTX101810
Communication Ports Used by Citrix Technologies
https://support.citrix.com/article/CTX101810


本記事で説明しているXenApp7.15環境の構成図

以下の構成図を用いて説明します。VDAサーバ1号機にXenAppデータベースを同居する場合も多いと思いますが、今回は説明の都合上、XenAppサイトデータベースを別サーバにしています。

NSGとXenApp7.15の起動処理の流れ1

※以下の表に記載のポート番号は筆者の検証環境で確認出来た番号です。

流れ 内容 行きの通信ポート
クライアント端末にてブラウザを開き、NetScaler Gatewayのサイトにログインします。 ※Citrix Receiver を使用した接続も同様です。 TCP/443
NetScaler Gatewayとドメインコントローラ間で認証処理が行われます。 TCP/389(LDAP)
NetScaler Gatewayがログイン情報を StoreFront に送信します。 TCP/80(HTTP)
StoreFrontとドメインコントローラ間でユーザの資格情報が正しいことを確認します。 TCP/88(Kerberos)
TCP/445
TCP/3268
StoreFront が デリバリーコントローラサーバのCitrix Broker Service にログオン情報を送信します。 TCP/80(HTTP)
デリバリーコントローラサーバとドメインコントローラ間で資格情報が正しいことを確認します。 TCP/88(kerberos)
デリバリーコントローラはXenAppのサイトデータベース(SQL Server)へ、ユーザが利用できる公開アプリケーションの情報を問い合わせます。 TCP/1433
デリバリーコントローラは⑦で取得したデータをStoreFrontへ送信します。 戻り通信
StoreFrontはユーザに表示する画面を生成してNetScaler Gatewayに送信します。 戻り通信
クライアント端末の画面にログインしたユーザアカウントで利用できる公開アプリケーションの一覧が表示されます。 戻り通信

公開アプリケーションのアイコンをクリック後、起動用のICAファイルがダウンロードされるまで

NSGとXenApp7.15の起動処理の流れ2

※以下の表に記載のポート番号は筆者の検証環境で確認出来た番号です。

流れ 内容 行きの通信ポート
クライアント端末にて公開アプリケーションのアイコンをクリックします。 TCP/443
NetScaler GatewayからStoreFrontサーバへリクエスト情報を送信します。 TCP/80(HTTP)
StoreFrontサーバからデリバリーコントローラサーバへリクエスト情報を送信します。 TCP/80(HTTP)
デリバリーコントローラサーバからドメインコントローラへ資格情報を問い合わせます。 TCP/88(Kerberos)
デリバリーコントローラサーバからXenAppサイトデータベースへ、公開アプリケーションを起動するための最適なVDAサーバを問い合わせます。
XenDesktopの場合、ユーザ割り当てがランダムの場合は空いているデスクトップVDAが選ばれます。ユーザが事前割り当ての場合は、自身のアカウントが設定されているデスクトップVDAが選ばれます。
TCP/1433
⑤で取得した最適なマシンを起動する必要がある場合は、ハイパーバイザーに起動要求を出します。 2019/10/10更新
XenServer:TCP/80
Hyper-V:TCP/8100
vCenter Server:TCP/443
例えば、5でVDAサーバ2号機が最適なサーバとして選ばれた場合、デリバリーコントローラのCitrix Broker ServiceからVDAサーバの Citrix Desktop Serviceへ接続をして、VDAサーバからセッションキーを取得します。 TCP/80(HTTP)
デリバリーコントローラからStoreFrontへ公開アプリケーションを起動するためのデータを送信します。 戻り通信
StoreFrontは、デリバリーコントローラサーバのSTAにチケットの生成を要求して取得します。こちらのチケットに⑦の情報は含まれません。STAにて保持されます。 TCP/80(HTTP)
StoreFrontサーバにて⑨で取得したチケット情報をもとに、クライアント端末のReceiverが参照するための起動用のファイル(ICAファイル)を作成して、NetScaler Gateway へ送信します。 戻り通信
NetScaler Gatewayからクライアント端末へ起動用のファイル(ICAファイル)を転送します。 戻り通信

クライアント端末から公開アプリケーションの起動要求を送信してから起動が完了するまで

NSGとXenApp7.15の起動処理の流れ3

※以下の表に記載のポート番号は筆者の検証環境で確認出来た番号です。

流れ 内容 行きの通信ポート
クライアント端末のCitrix Receiverは、起動用ファイル(ICAファイル)のSSLProxyHostで指定されているNetScaler Gatewayに接続します。 TCP/443
NetScaler Gateway とデリバリーコントローラサーバのSecure Ticket Authority(STA)間で、チケットの検証をします。 TCP/80(HTTP)
チケットが正しいことを確認後、NetScaler GatewayがVDAサーバ2号機へ接続します。 TCP/2598
もしくは
TCP/1494
VDAサーバ2号機からデリバリーコントローラサーバへ、セッション起動をする通知をします。 TCP/80(HTTP)
デリバリーコントローラサーバからCitrixライセンスサーバへ、ライセンスのチェックアウトの処理をします。
※チェックアウトの処理はTCP/7279の通信ですが、Citrix StudioからCitrix ライセンスサーバ間の通信はTCP/27000とTCP/8083も使用されます。
TCP/7279
デリバリーコントローラサーバからXenAppサイトデータベースへ、セッション情報を登録します。 TCP/1433
デリバリーコントローラサーバからVDAサーバへ該当のセッションに紐付くトークンが含まれる情報を送信します。 戻り通信
VDAサーバ2号機からNetScaler Garewayへ「3」の応答を返します。 戻り通信
NetScaler GatewayからVDAサーバ2号機へ接続してセッションを確立します。 TCP/2598
もしくは
TCP/1494
VDAサーバにてセッション起動準備をして公開アプリケーションを起動します。Windows の認証処理で、ドメインコントローラサーバに対する認証処理の通信も発生します。 UDP/53 (DNS)
TCP/135 (RPC)
TCP/88 (Kerberos)
TCP/389 (LDAP)
UDP/389 (LDAP
NetScaler Gateway を介して、クライアント端末とVDAサーバ間にて公開アプリケーションの通信を行います。
※クライアント端末とNetScaler Gateway間は右のA
※クライアント端末とNetScaler Gateway間は右のB 2019/06/20 訂正
※NetScaler GatewayとVDAサーバ2号機間は右のB
A:443
B:TCP/2598 もしくは TCP/1494

まとめ

  • 公開アプリケーションのアイコン一覧をクライアント端末のブラウザに表示させるまでの処理は、NetScaler Gatewayを使用しない場合と同様の流れになります。
  • 公開アプリケーションのアイコンをクリックした後、NetScaler Gateway がSTAから取得したチケットを使用してクライアント端末の代理でXenAppサーバに接続します。
  • 公開アプリケーションの通信は、NetScaler Gateway を介して、クライアント端末とVDAサーバ間にて行います。

いかがでしたでしょうか?公開アプリケーションの起動処理の流れを把握することで、問題切り分けの時間を短縮できる場合がありますのでご参考にして頂けますと幸いです。


Citrix製品紹介セミナーも定期開催しています

クライアント仮想化の基礎知識から、仮想化製品「Citrix Virtual Apps and Desktops(XenAppおよびXenDesktop)」の製品概要、導入検討時に注意すべき点などをご紹介します。
今お持ちのお悩みを解決し、Citrix製品をより有効に活用する方法を具体的に学ぶことができる内容になっております。




Citrixの設定・トラブル対処方法の良くあるFAQ10選プレゼント中

アシストのCitrixサポートセンターに良くある設定・トラブル対処方法のFAQ10選の資料を無料プレゼント中です。また、Citrix XenApp/XenDesktopの問題発生時に原因を切り分ける方法も掲載しております。以下のバナーからお気軽にダウンロードください。


筆者情報:川東健吾

アシストに入社し、テスト系製品のカスタマーサポートを担当後、現在はCitrix製品を担当しています。XenAppとXenDesktopのトラブルシューティングや運用に役立つ情報を、長年のサポート対応の視点で分かりやすくお伝えしていきます。
学生時代から続けている映像制作の趣味の延長で、Citrixトラブシューティング入門動画も制作しました。こちらからご視聴頂けます。

関連している記事

  • トラブルシューティング
2023.11.13

特定のクライアント端末で公開アプリケーションの起動が失敗する場合の問題切り分けの一例

特定のクライアント端末で公開アプリケーションが起動できない問題について弊社のCitrixヘルプデスクがよく案内している切り分け方法をご紹介します。

  • トラブルシューティング
2023.11.13

Workspace app for Windows をクリーンアンインストールする方法

クライアント端末にインストールしているWorkspace appにてReceiverCleanupUtility.exeがある場合は、こちらを使用してクリーンアンインストールができます。

  • トラブルシューティング
2023.08.25

Citrix ConfigSync Service の Event ID:505 に関する対処方法

今回は、CitrixデリバリーコントローラサーバのWindowsイベントログ(アプリケーションログ)に「Citrix ConfigSync Service の Event ID:505」が継続して記録される場合の対処方法をご紹介します。

Citrix Virtual Apps and Desktops(XenAppおよびXenDesktop)の製品概要セミナー Citrixの設定・トラブル対処方法の良くあるFAQ10選 Citrixサポートセンターのご紹介

ページの先頭へ戻る