Optimiser la connectivité aux espaces de travail avec Direct Workload Connection

Remarque :

Cette fonctionnalité est actuellement en version limitée. La fonctionnalité peut être utilisée dans un environnement de production, mais peut ne pas convenir à tous les clients. Pour plus d’informations, consultez la section À propos de cette version limitée ce cet article.

Avec la fonction Direct Workload Connection de Citrix Cloud, vous pouvez optimiser le trafic interne vers les applications et les bureaux que vous mettez à la disposition des espaces de travail des abonnés afin de rendre les sessions HDX plus rapides. Normalement, les utilisateurs des réseaux internes et externes doivent se connecter à des VDA via une passerelle externe. Bien que cela soit attendu pour les utilisateurs externes, les utilisateurs internes connaissent des connexions plus lentes aux ressources virtuelles. Direct Workload Connection permet aux utilisateurs internes de contourner la passerelle et de se connecter directement aux VDA, réduisant ainsi la latence du trafic réseau interne.

Pour configurer la fonction Direct Workload Connection, vous configurez les emplacements réseau qui correspondent aux VDA de votre environnement à l’aide du service de localisation réseau fourni par Citrix. Pour configurer ces emplacements, vous utilisez un fichier module PowerShell fourni par Citrix. Ces emplacements réseau correspondent aux plages d’adresses IP publiques des réseaux à partir desquels vos utilisateurs internes se connecteront (par exemple, les emplacements de votre bureau ou succursales). Lorsque les abonnés lancent des sessions Virtual Apps and Desktops à partir de leur espace de travail, Citrix Cloud détecte si les abonnés sont internes ou externes au réseau de l’entreprise en fonction de l’adresse IP publique du réseau à partir duquel ils se connectent. Si un abonné se connecte à partir du réseau interne, Citrix Cloud achemine la connexion directement vers le VDA, en contournant Citrix Gateway. Si un abonné se connecte en externe, Citrix Cloud achemine l’abonné via Citrix Gateway comme prévu, puis redirige l’abonné via Citrix Cloud Connector vers le VDA dans le réseau interne.

À propos de cette version limitée

Le service de localisation réseau, utilisé par Direct Workload Connection, est actuellement hébergé dans plusieurs zones de disponibilité dans la région US-East d’Amazon Web Services. Un appel au service de localisation réseau est effectué au moment du lancement du bureau ou de l’application en parallèle avec de nombreux autres appels. Le service de localisation réseau vérifie l’adresse IP publique d’où provient l’appel et fournit une réponse pour indiquer si l’utilisateur est interne ou externe. Dans le cas rare où aucune réponse n’est reçue du service de localisation réseau avant le retour des autres appels parallèles, le lancement est acheminé via la passerelle.

Le service de localisation réseau est hébergé sur un seul serveur POP. Par conséquent, si AWS subit une panne à l’échelle de la région dans la région US-East qui affecte toutes les zones de disponibilité, le service de localisation réseau est hors connexion. À ce jour, AWS n’a jamais subi de panne à l’échelle de la région et dispose d’une garantie de disponibilité de 99,999 %. Toutefois, si une panne se produit, tous les lancements sont acheminés via la passerelle plutôt que directement vers les VDA. Les lancements sont acheminés via des VDA lorsque la région US-East est de nouveau en ligne. Bien qu’aucun échec ou retard de lancement ne se produise, la latence revient aux niveaux précédemment rencontrés avant d’activer Direct Workload Connection. Citrix vous recommande d’examiner si vous pouvez accepter cette possibilité avant d’activer Direct Workload Connection.

Produits pris en charge

Direct Workload Connection est pris en charge pour le service Virtual Apps and Desktops uniquement. La prise en charge de Citrix Managed Desktops et Citrix SD-WAN est disponible en version limitée.

Important :

Si votre environnement inclut Citrix Managed Desktops avec des VDA locaux, la configuration de Direct Workload Connection entraîne l’échec des lancements de Citrix Managed Desktops à partir du réseau interne.

Les lancements de Secure Browser, Citrix Virtual Apps Essentials et Citrix Virtual Desktops Essentials sont toujours acheminés via la passerelle. Par conséquent, ces lancements ne permettent pas d’améliorer les performances de la configuration de Direct Workload Connection.

Exigences

Configuration réseau requise

  • Si vous disposez d’un réseau d’entreprise et d’un réseau Wi-Fi invité, ces réseaux doivent avoir des adresses IP publiques distinctes. Si vos réseaux d’entreprise et d’invité partagent la même adresse IP publique, les utilisateurs du réseau invité ne peuvent pas lancer les sessions Virtual Apps and Desktops.
  • Vous devez utiliser les plages d’adresses IP publiques des réseaux à partir desquels vos utilisateurs internes se connecteront. Les utilisateurs internes de ces réseaux doivent disposer d’une connexion directe aux VDA. Si ce n’est pas le cas, les lancements de ressources virtuelles échouent car l’espace de travail tentera d’acheminer les utilisateurs internes directement vers les VDA, ce qui n’est pas possible.

Exigences TLS

TLS 1.2 doit être activé dans PowerShell lors de la configuration de vos emplacements réseau. Pour forcer PowerShell à utiliser TLS 1.2, utilisez la commande suivante avant d’utiliser le module PowerShell :

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

Exigences relatives à l’espace de travail

  • Vous avez un espace de travail configuré dans Citrix Cloud.
  • Le service Virtual Apps and Desktops est activé dans Configuration de l’espace de travail > Intégrations de service.
  • Vous utilisez des VDA locaux pour fournir des ressources virtuelles aux abonnés de l’espace de travail.

Activer TLS pour l’application Workspace pour les connexions HTML5

Si vos abonnés utilisent l’application Citrix Workspace pour HTML5 pour lancer des applications et des bureaux, TLS doit être activé sur les VDA de votre réseau interne pour que les connexions directes à ces VDA soient établies correctement. Si TLS n’est pas activé, les lancements d’applications et de bureaux sont acheminés via la passerelle lorsque les abonnés utilisent l’application Workspace pour HTML5. Les lancements à l’aide de Desktop Viewer ne sont pas affectés. Pour plus d’informations sur la sécurisation des connexions VDA directes avec TLS, consultez l’article CTX134123 dans le Centre de connaissances du support Citrix.

Présentation de la configuration

Pour configurer Direct Workload Connection, effectuez les tâches suivantes :

  1. Déterminez les plages d’adresses IP publiques de chaque emplacement de succursale à partir de laquelle vos utilisateurs internes se connecteront.
  2. Télécharger le module PowerShell.
  3. Créez un client API sécurisé dans Citrix Cloud et notez l’ID client et le secret.
  4. Importez le module PowerShell et connectez-vous au service de localisation réseau avec les détails de votre client API.
  5. Créez des sites de service de localisation réseau pour chacun de vos emplacements de succursales avec les plages d’adresses IP publiques que vous avez précédemment déterminées. Direct Workload Connection est automatiquement activé pour tous les lancements provenant des emplacements réseau internes que vous avez spécifiés.
  6. Lancez une application ou un bureau à partir d’un appareil de votre réseau interne et vérifiez que la connexion va directement au VDA, en contournant la passerelle.

Module PowerShell et configuration

Télécharger le module PowerShell

Avant de configurer vos emplacements réseau, téléchargez le module PowerShell fourni par Citrix (nls.psm1) à partir du référentiel Citrix Github. À l’aide de ce module, vous pouvez configurer autant d’emplacements réseau que nécessaire pour vos VDA.

  1. Depuis un navigateur Web, accédez à https://github.com/citrix/sample-scripts/blob/master/workspace/nls.psm1.
  2. Appuyez sur ALT tout en cliquant sur le bouton Raw. Vue de fichier Github avec bouton Raw en surbrillance
  3. Sélectionnez un emplacement sur votre ordinateur et cliquez sur Enregistrer.

Détails de configuration requis

Pour configurer vos emplacements réseau, vous avez besoin des informations suivantes :

  • ID client sécurité Citrix Cloud, ID client et secret client. Pour obtenir ces valeurs, reportez-vous à Créer un client sécurisé dans cet article.
  • Plages d’adresses IP publiques pour les réseaux à partir desquels vos utilisateurs internes se connecteront. Pour plus d’informations sur ces plages d’adresses IP publiques, consultez la section Exigences dans cet article.

Créer un client sécurisé

  1. Connectez-vous à Citrix Cloud à partir de https://citrix.cloud.com.
  2. Dans le menu Citrix Cloud, sélectionnez Gestion des identités et des accès, puis sélectionnez Accès aux API.
  3. Dans l’onglet Clients sécurisés, notez votre ID client. Console client sécurisé avec identifiant client en surbrillance
  4. Entrez un nom pour le client, puis sélectionnez Créer un client.
  5. Copiez l’ID client et le secret client. Boîte de dialogue Identifiant et secret client sécurisé

Configurer les emplacements réseau

  1. Ouvrez une fenêtre de commande PowerShell et accédez au répertoire où vous avez enregistré le module PowerShell.
  2. Importez le module : Import-Module .\nls.psm1 -Force
  3. Définissez les variables requises avec vos informations de client sécurisé à partir de Créer un client sécurisé :
    • $clientId = "YourSecureClientID"
    • $customer = "YourCustomerID"
    • $clientSecret = "YourSecureClientSecret"
  4. Connectez-vous au service de localisation réseau à l’aide de vos informations d’identification de client sécurisé :

    Connect-NLS -clientId $clientId -clientSecret $clientSecret -customer $customer
    
  5. Créez un emplacement réseau en remplaçant les valeurs des paramètres par les valeurs correspondant au réseau interne à partir duquel vos utilisateurs internes se connectent directement :

    New-NLSSite -name "YourSiteName" -tags @("YourTags") -ipv4Ranges @("PublicIpsOfYourNetworkSites") -longitude 12.3456 -latitude 12.3456
    

    Lorsque l’emplacement réseau est créé, la fenêtre de commande affiche les détails de l’emplacement réseau.

  6. Répétez l’étape 5 pour tous les emplacements réseau à partir desquels les utilisateurs se connectent.
  7. Exécutez la commande Get-NLSSite pour renvoyer une liste de tous les sites que vous avez configurés avec le service de localisation réseau et vérifiez que leurs détails sont corrects.

Vérifier que les lancements internes sont acheminés correctement

Pour vérifier que les lancements internes accèdent directement aux VDA, utilisez l’une des méthodes suivantes :

  • Affichez les connexions VDA via la console Virtual Apps and Desktops.
  • Utilisez la journalisation des fichiers ICA pour vérifier l’adresse correcte de la connexion client.

Console Virtual Apps and Desktops Service

Sélectionnez Gérer > Moniteur, puis recherchez un utilisateur dont la session est active. Dans la section Détails de la session de la console, les connexions VDA directes s’affichent sous forme de connexions UDP tandis que les connexions par passerelle s’affichent sous forme de connexions TCP.

Journalisation des fichiers ICA

Activez la journalisation des fichiers ICA sur l’ordinateur client comme décrit à la section Pour autoriser la journalisation du fichier launch.ica. Après le lancement des sessions, examinez les entrées Address et SSLProxyHost dans le fichier journal.

Pour les connexions VDA directes, la propriété Address contient l’adresse IP et le port du VDA et la propriété SSLProxyHost contient le nom de domaine complet et le port du VDA.

Pour les connexions par passerelle, la propriété Address contient le ticket STA et la propriété SSLProxyHost contient le nom de domaine complet et le port de la passerelle.

Modifier les emplacements réseau

Suivez les étapes de cette section si vous devez apporter des modifications à un emplacement réseau existant.

  1. Dans une fenêtre de commande PowerShell, listez tous les emplacements réseau existants : Get-NLSSite
  2. Pour modifier la plage d’adresses IP d’un emplacement réseau spécifique, tapez

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

    [N] est le nombre correspondant à l’emplacement dans la liste (qui commence par un zéro) et "1.2.3.4/32","4.3.2.1/32" sont les plages d’adresses IP séparées par des virgules que vous souhaitez utiliser. Par exemple, pour modifier le premier emplacement répertorié, tapez la commande suivante :

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

Supprimer des emplacements réseau

Suivez les étapes de cette section si vous devez supprimer des emplacements réseau que vous ne souhaitez plus utiliser.

  1. Dans une fenêtre de commande PowerShell, listez tous les emplacements réseau existants : Get-NLSSite
  2. Pour supprimer tous les emplacements réseau, tapez Get-NLSSite | Remove-NLSSite
  3. Pour supprimer des emplacements réseau spécifiques, tapez (Get-NLSSite)[N] | Remove-NLSSite, où [N] est le numéro correspondant à l’emplacement dans la liste. Par exemple, pour supprimer le premier emplacement répertorié, tapez (Get-NLSSite)[0] | Remove-NLSSite.

Exemple de script

L’exemple de script inclut toutes les commandes dont vous pourriez avoir besoin pour ajouter, modifier et supprimer les plages d’adresses IP publiques de vos succursales. Cependant, vous n’avez pas besoin d’exécuter toutes les commandes pour exécuter une fonction unique. Pour que le script s’exécute, incluez toujours les 10 premières lignes, de Import-Module jusqu’à Connect-NLS. Par la suite, vous pouvez inclure uniquement les commandes pour les fonctions que vous souhaitez effectuer.

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") -ipv4Ranges @("1.2.3.0/24") -longitude 40.7128 -latitude -74.0060

# Get the existing Network Location Service Sites (optional)
Get-NLSSite

# Update the IP Address ranges of your first Network Location Service Site (optional)
$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 (optional)
Get-NLSSite | Remove-NLSSite

# Remove your third site (optional)
(Get-NLSSite)[2] | Remove-NLSSite

Résolution des problèmes

Connect-NLS renvoie une erreur

Si vous recevez une erreur lors de l’exécution de la commande Connect-NLS (étape 2 dans Configurer les emplacements réseau), vous devrez peut-être forcer PowerShell à utiliser TLS 1.2. Pour ce faire, exécutez la commande suivante :

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

Échecs de lancement du VDA

Si les sessions VDA ne parviennent pas à démarrer, vérifiez que vous utilisez des plages d’adresses IP publiques à partir du réseau approprié. Lors de la configuration de vos emplacements réseau, vous devez utiliser les plages d’adresses IP publiques sur le réseau à partir duquel vos utilisateurs se connectent. Pour plus d’informations, consultez la section Exigences dans cet article.

Pour vérifier l’adresse IP publique du VDA, connectez-vous à chaque machine VDA, accédez à https://google.com et entrez « What is my IP » dans la barre de recherche.

Les lancements de VDA internes sont toujours acheminés par la passerelle

Si les sessions VDA lancées en interne sont toujours acheminées via la passerelle comme s’il s’agissait de sessions externes, vérifiez que vous utilisez des plages d’adresses IP correctes pour les réseaux à partir desquels vos utilisateurs internes se connectent. Il s’agit généralement des plages d’adresses IP publiques qui correspondent aux réseaux où résident vos VDA, bien que vos utilisateurs puissent accéder aux VDA via un VPN. N’utilisez pas les adresses IP locales des VDA. Pour plus d’informations, consultez la section Exigences dans cet article.

Pour vérifier l’adresse IP publique du VDA, connectez-vous à chaque machine VDA, accédez à https://google.com et entrez « What is my IP » dans la barre de recherche.

Aide et support supplémentaires

Pour obtenir de l’aide ou des questions sur la résolution des problèmes, contactez votre représentant commercial Citrix ou le support Citrix.