Optimieren der Workspace-Verbindung mit dem Network Location Service (Technical Preview)

Hinweis:

Dieses Feature ist derzeit als Technical Preview verfügbar. Citrix empfiehlt, Features des Technical Preview nur in Testumgebungen zu verwenden.

Mit dem Network Location Service in Citrix Cloud optimieren Sie den internen Datenverkehr zu Apps und Desktops, die Sie Abonnenten in ihrem Workspace zur Verfügung stellen, und können so HDX-Sitzungen beschleunigen. In der Regel müssen sich Benutzer in internen und externen Netzwerken über ein externes Gateway mit VDAs verbinden. Während dies für externe Benutzer zu erwarten ist, können sich interne Benutzer dadurch langsamer mit virtuellen Ressourcen verbinden. Mit dem Network Location Service können interne Benutzer das Gateway umgehen und sich direkt mit VDAs verbinden, wodurch die Latenz für den internen Netzwerkverkehr verringert wird.

Zum Einrichten des Network Location Service konfigurieren Sie mit dem PowerShell-Modul “Network Location Service” von Citrix die Netzwerkstandorte, die den VDAs in Ihrer Umgebung entsprechen. Diese Netzwerkstandorte enthalten die öffentlichen IP-Bereiche der Netzwerke, von denen Ihre internen Benutzer eine Verbindung herstellen. Wenn Abonnenten eine Virtual Apps and Desktops-Sitzung vom Workspace aus starten, prüft Citrix Cloud anhand der öffentlichen IP-Adresse des Netzwerks, von dem aus sie eine Verbindung herstellen, ob sie sich innerhalb oder außerhalb des Firmennetzwerk befinden. Wenn ein Abonnent sich über das interne Netzwerk verbindet, leitet Citrix Cloud die Verbindung direkt an den VDA weiter und umgeht Citrix Gateway. Wenn ein Abonnent eine externe Verbindung herstellt, leitet Citrix Cloud den Abonnenten erwartungsgemäß über Citrix Gateway und dann an den VDA im internen Netzwerk.

Unterstützte Produkte

Der Network Location Service wird nur für Virtual Apps and Desktops unterstützt. Die Unterstützung für Citrix Managed Desktops und Citrix SD-WAN befindet sich in der Technical Preview-Phase.

Wichtig:

Wenn Ihre Umgebung neben On-Premises-VDAs auch Managed Desktops umfasst, führt das Konfigurieren des Network Location Service dazu, dass diese verwalteten Desktops nicht mehr aus dem internen Netzwerk gestartet werden können.

Der Start von Secure Browser, Citrix Virtual Apps Essentials und Citrix Virtual Desktops Essentials wird immer über das Gateway geleitet. Die Konfiguration des Network Location Service bringt darum bei diesen Starts keine Leistungsverbesserung.

Anforderungen

Netzwerkanforderungen

  • Wenn Sie ein Unternehmensnetzwerk und ein Gast-WiFi-Netzwerk verwenden, müssen diese Netzwerke separate öffentliche IP-Adressen haben. Wenn Ihr Unternehmens- und Gastnetzwerk dieselbe öffentliche IP-Adresse verwendet, können Benutzer im Gastnetzwerk keine Virtual Apps and Desktops-Sitzung starten.
  • Sie müssen die öffentlichen IP-Adressbereiche der Netzwerke verwenden, von denen Ihre internen Benutzer eine Verbindung herstellen. Interne Benutzer in diesen Netzwerken müssen über eine direkte Verbindung zu den VDAs verfügen. Andernfalls schlägt der Start virtueller Ressourcen fehl, da interne Benutzer direkt an den VDA weitergeleitet werden. Diese Verbindung ist jedoch nicht möglich.

TLS-Anforderungen

TLS 1.2 muss in PowerShell aktiviert sein, damit eine Verbindung zum Network Location Service hergestellt werden kann. Mit dem folgenden Befehl erzwingen Sie in PowerShell die Verwendung von TLS 1.2:

```
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
```

Workspaceanforderungen

In Citrix Cloud müssen Sie einen Workspace konfigurieren, der Virtual Apps and Desktops-Service ist unter Workspacekonfiguration > Serviceintegrationen aktiviert und Sie verwenden On-Premises-VDAs, um virtuelle Ressourcen für Workspace-Abonnenten bereitzustellen.

Aktivieren von TLS für Workspace-App für HTML5-Verbindungen

Wenn Abonnenten die Citrix Workspace-App für HTML5 zum Starten von Apps und Desktops verwenden, muss TLS auf den VDAs im internen Netzwerk aktiviert sein, um eine direkte Verbindung zu diesen VDAs zu ermöglichen. TLS ist erforderlich, da auf HTTPS-Sites mit gehosteter Workspace-App keine ungeschützten Verbindungen zwischen internem Client und VDA zulässig sind. Wenn TLS auf VDAs nicht aktiviert ist, führt die Verwendung des Network Location Service dazu, dass direkte Verbindungen für interne Benutzer mit dem HTML5-Viewer fehlschlagen und Abonnenten ihre Apps und Desktops nicht starten können. Starts mit dem Desktop Viewer sind davon nicht betroffen. Weitere Informationen zum Schutz direkter VDA-Verbindungen mit TLS finden Sie unter CTX134123 im Citrix Support Knowledge Center.

Powershell-Modul und Konfiguration

Download des PowerShell-Moduls

Vor dem Einrichten Ihrer Netzwerkstandorte laden Sie das von Citrix bereitgestellte PowerShell-Modul “Network Location Service” (nls.psm1) aus dem Citrix GitHub-Repository herunter. Mit diesem Modul können Sie beliebig viele Netzwerkstandorte für Ihre VDAs einrichten.

  1. Navigieren Sie in einem Webbrowser zu https://github.com/citrix/sample-scripts/blob/master/workspace/nls.psm1.
  2. Klicken Sie bei gedrückter ALT-Taste auf die Schaltfläche Raw. Github-Dateiansicht mit markierter Schaltfläche "Raw"
  3. Wählen Sie einen Speicherort auf Ihrem Computer und klicken Sie auf Speichern.

Erforderliche Konfigurationsdetails

Zum Einrichten Ihrer Netzwerkstandorte sind folgende Informationen erforderlich:

  • Kunden-ID, Client-ID und Clientgeheimnis für den sicheren Client in Citrix Cloud. Informationen zum Abrufen dieser Werte finden Sie unter Erstellen eines sicheren Client in diesem Artikel.
  • Öffentliche IP-Adressbereiche für die Netzwerke, von denen Ihre internen Benutzer eine Verbindung herstellen. Weitere Informationen zu diesen öffentlichen IP-Adressbereichen finden Sie unter Anforderungen in diesem Artikel.

Sie können ein Skript zur Eingabe dieser Werte erstellen, wie im Beispielskript angegeben. Sie können diese Werte auch über die PowerShell-Befehlszeile eingeben, wie unter Konfigurieren von Netzwerkstandorten in diesem Artikel beschrieben.

Hinweis:

Das PowerShell-Modul enthält eine fest codierte Zeitzone. Obwohl diese Zeitzone keine Auswirkungen auf die Funktionsweise Ihrer Netzwerkstandorte hat, können Sie sie durch Anpassen der Zeilen 67-71 der Datei nls.psm1 ändern.

Beispielskript

Das Beispielskript enthält alle Befehle, die Sie zum Hinzufügen, Ändern und Entfernen der öffentlichen IP-Adressbereiche für Ihre Zweigstellen benötigen. Sie müssen jedoch nicht alle Befehle ausführen, um eine einzelne Funktion auszuführen. Damit das Skript ausgeführt werden kann, müssen Sie stets die ersten 10 Zeilen angeben, von Import-Module bis einschließlich Connect-NLS. Anschließend können Sie nur die Befehle für die Funktionen angeben, die Sie ausführen möchten.

Import-Module .\nls.psm1 -Force
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

$clientId = "XXXX" #Replace with your clientId
$clientSecret = "YYY"    #Replace with your clientSecret
$customer = "CCCCCC"  #Replace with your customerid


# Connect to Network Location Service
Connect-NLS -clientId $clientId -clientSecret $clientSecret -customer $customer

# Create a new Network Location Service Site (Replace with details corresponding to your branch locations)
New-NLSSite -name "New York" -tags @("EastCoast") -timezone "America/New_York" -ipv4Ranges @("1.2.3.0/24") -longitude 40.7128 -latitude -74.0060

# Get the existing Network Location Service Sites
Get-NLSSite

# Create and update a Network Location Service Site
$s = (Get-NLSSite)[0]
$s.ipv4Ranges = @("1.2.3.4/32","4.3.2.1/32")
$s | Set-NLSSite

# Remove all Network Location Service Sites
Get-NLSSite | Remove-NLSSite

(Get-NLSSite)[2] | Remove-NLSSite

Erstellen eines sicheren Client

  1. Melden Sie sich bei Citrix Cloud auf https://citrix.cloud.com an.
  2. Wählen Sie im Menü “Citrix Cloud” Identitäts- und Zugriffsverwaltung und dann API-Zugriff.
  3. Notieren Sie sich die Kunden-ID auf der Registerkarte Sichere Clients. Sichere Clients-Konsole mit markierter Kunden-ID
  4. Geben Sie einen Namen für den Client ein und wählen Sie Client erstellen.
  5. Kopieren Sie die Client-ID und das Clientgeheimnis. Dialogfeld mit ID und Geheimnis für sicheren Client

Konfigurieren von Netzwerkstandorten

  1. Öffnen Sie ein PowerShell-Befehlsfenster und navigieren Sie zum Verzeichnis, in dem Sie das PowerShell-Modul gespeichert haben.
  2. Importieren Sie das Modul: Import-Module .\nls.psm1 -Force
  3. Legen Sie die erforderlichen Variablen fest. Verwenden Sie hierfür die Angaben zum sicheren Client, die Sie unter Erstellen eines sicheren Client erfasst haben:
    • $clientId = "YourSecureClientID"
    • $customer = "YourCustomerID"
    • $clientSecret = "YourSecureClientSecret"
  4. Verbinden Sie sich mit dem Network Location Service mit den Anmeldeinformationen für Ihren sicheren Client:

    Connect-NLS -clientId $clientId -clientSecret $clientSecret -customer $customer
    
  5. Erstellen Sie einen Netzwerkstandort und ersetzen Sie die Parameterwerte durch die Werte für das interne Netzwerk, von dem Ihre internen Benutzer eine direkte Verbindung herstellen:

    New-NLSSite -name "YourSiteName" -tags @("YourTags") -timezone "YourLocationTimezone" -ipv4Ranges @("ExternalIpsOfYourNetworkSites") -longitude 12.3456 -latitude 12.3456
    
  6. Überprüfen Sie, ob Ihre eingegebenen Informationen zum Netzwerkstandort korrekt sind: Get-NLSSite
  7. Wiederholen Sie die Schritte 5 und 6 für alle Netzwerkstandorte, von denen die Benutzer eine Verbindung herstellen.

Überprüfen der fehlerfreien Weiterleitung interner Startvorgänge

Verwenden Sie eine der folgenden Methoden, um zu überprüfen, ob interne Starts direkt auf VDAs zugreifen:

  • Zeigen Sie VDA-Verbindungen über die Virtual Apps and Desktops-Konsole an.
  • Überprüfen Sie mit der ICA-Dateiprotokollierung die korrekte Adressierung der Clientverbindung.

Virtual Apps and Desktops Service-Konsole

Wählen Sie Verwalten > Überwachen und suchen Sie einen Benutzer mit aktiver Sitzung. Im Abschnitt “Sitzungsdetails” der Konsole werden direkte VDA-Verbindungen als UDP-Verbindungen angezeigt, während Gateway-Verbindungen als TCP-Verbindungen angezeigt werden.

ICA-Dateiprotokollierung

Aktivieren Sie die ICA-Dateiprotokollierung auf dem Clientcomputer wie unter Aktivieren der Protokollierung für die Datei launch.ica beschrieben. Überprüfen Sie nach dem Start von Sitzungen die Einträge Address und SSLProxyHost in der Protokolldatei.

Bei direkten VDA-Verbindungen enthält die Eigenschaft Address die IP-Adresse und den Port des VDA und die Eigenschaft SSLProxyHost den FQDN und Port des VDA.

Bei Gateway-Verbindungen enthält die Eigenschaft Address das STA-Ticket und die Eigenschaft SSLProxyHost den FQDN und Port des Gateways.

Ändern von Netzwerkstandorten

  1. Listen Sie alle vorhandenen Netzwerkstandorte in einem PowerShell-Befehlsfenster auf: Get-NLSSite
  2. Zum Ändern des IP-Bereichs für einen bestimmten Netzwerkstandort geben Sie ein:

    (Get-NLSSite)[N] -ipv4Ranges @("1.2.3.4/32","4.3.2.1/32") | Set-NLSSite

    Dabei ist [N] die Ziffer, die der Position in der Liste entspricht und "1.2.3.4/32","4.3.2.1/32" sind die durch Kommas getrennten IP-Bereiche, die Sie verwenden möchten. Um beispielsweise den ersten aufgelisteten Standort zu ändern, geben Sie folgenden Befehl ein:

    (Get-NLSSite)[0] -ipv4Ranges @("98.0.0.1/32","141.43.0.0/24") | Set-NLSSite

Entfernen von Netzwerkstandorten

  1. Listen Sie alle vorhandenen Netzwerkstandorte in einem PowerShell-Befehlsfenster auf: Get-NLSSite
  2. Um alle Netzwerkstandorte zu entfernen, geben Sie ein: Get-NLSSite | Remove-NLSSite
  3. Um bestimmte Netzwerkstandorte zu entfernen, geben Sie ein: (Get-NLSSite)[N] | Remove-NLSSite. Dabei ist [N] die Ziffer, die der Position in der Liste entspricht. Um beispielsweise den ersten aufgelisteten Standort zu entfernen, geben Sie folgenden Befehl ein: (Get-NLSSite)[0] | Remove-NLSSite

Problembehandlung

Fehler bei Connect-NLS

Wenn beim Ausführen des Befehls Connect-NLS (Schritt 2 in Konfigurieren von Netzwerkstandorten) eine Fehlermeldung angezeigt wird, müssen Sie möglicherweise in PowerShell die Verwendung von TLS 1.2 erzwingen. Führen Sie hierfür den folgenden Befehl aus:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Fehler beim VDA-Start

Wenn VDA-Sitzungen nicht gestartet werden, müssen Sie sicherstellen, dass Sie öffentliche IP-Adressbereiche aus dem richtigen Netzwerk verwenden. Beim Konfigurieren Ihrer Netzwerkstandorte müssen Sie die öffentlichen IP-Adressbereiche des Netzwerks verwenden, von dem Ihre internen Benutzer eine Verbindung herstellen. Weitere Informationen finden Sie unter Anforderungen in diesem Artikel.

Um die öffentliche IP-Adresse eines VDAs zu überprüfen, melden Sie sich bei jeder VDA-Maschine an, rufen Sie https://google.com auf und geben Sie in der Suchleiste “what is my ip” ein.

Interne VDA-Starts werden weiterhin über das Gateway geleitet

Wenn intern gestartete VDA-Sitzungen weiterhin über das Gateway geleitet werden (als wären sie externe Sitzungen), müssen Sie sicherstellen, dass Sie die richtigen IP-Adressbereiche für die Netzwerke verwenden, von denen Ihre internen Benutzer eine Verbindung herstellen. Dies sind in der Regel öffentliche IP-Adressbereiche, die den Netzwerken entsprechen, in denen sich Ihre VDAs befinden; Benutzer können aber auch über ein VPN auf die VDAs zugreifen. Verwenden Sie nicht die lokalen IP-Adressen der VDAs. Weitere Informationen finden Sie unter Anforderungen in diesem Artikel.

Um die öffentliche IP-Adresse eines VDAs zu überprüfen, melden Sie sich bei jeder VDA-Maschine an, rufen Sie https://google.com auf und geben Sie in der Suchleiste “what is my ip” ein.

Zusätzliche Hilfe und Unterstützung

Besuchen Sie das Supportforum für den Network Location Service (Technical Preview), um von Citrix-Experten und anderen Mitgliedern der Citrix Cloud-Community Hilfe bei Problemen zu erhalten, Fragen zu klären oder Feedback zum Network Location Service zu geben.