Optimizar la conectividad a los espacios de trabajo con la conexión directa de carga de trabajo

Con la conexión directa de carga de trabajo en Citrix Cloud, puede optimizar el tráfico interno dirigido a las aplicaciones y escritorios en los espacios de trabajo para agilizar las sesiones HDX. Normalmente, tanto los usuarios de redes internas como los de redes externas se conectan a VDA a través de una puerta de enlace externa. Es posible que esta puerta de enlace esté en su organización o se proporcione como un servicio de Citrix y se agregue a la ubicación de recursos dentro de Citrix Cloud. La conexión directa de carga de trabajo permite a los usuarios internos omitir la puerta de enlace y conectarse directamente a los VDA, lo que reduce la latencia del tráfico de las redes internas.

Para configurar la conexión directa de carga de trabajo, necesita ubicaciones de red que correspondan al lugar en el que los clientes inician aplicaciones y escritorios en su entorno. Agregue una dirección pública para la ubicación de cada oficina en la que residan estos clientes mediante el servicio de ubicación de red (NLS). Dispone de dos opciones para configurar las ubicaciones de red:

  • Usar la opción de menú Ubicaciones de red de Citrix Cloud.
  • Usar un módulo de PowerShell que proporciona Citrix.

Las ubicaciones de red corresponden a los rangos IP públicos de las redes desde las que se conectan los usuarios internos, como las sucursales u oficinas. Citrix Cloud utiliza direcciones IP públicas para determinar si las redes desde las que se inician aplicaciones o escritorios virtuales son internas o externas a la red de la empresa. Si un suscriptor se conecta desde la red interna, Citrix Cloud redirige la conexión directamente al VDA sin pasar por Citrix Gateway. Si un suscriptor se conecta externamente, Citrix Cloud lo redirige a través de Citrix Gateway y, a continuación, dirige el tráfico de la sesión a través del Citrix Cloud Connector al VDA de la red interna. Si se usa Citrix Gateway Service y el protocolo Rendezvous está habilitado, Citrix Cloud redirige a los usuarios externos a través de Gateway Service al VDA de la red interna. Es posible que haya clientes itinerantes, como los equipos portátiles, que usen cualquiera de estas rutas de red, según si el cliente se encuentra dentro o fuera de la red corporativa cuando se produce el inicio.

Importante:

Si su entorno incluye Citrix DaaS Standard para Azure junto con VDA locales, la configuración de la conexión directa de carga de trabajo provoca un error en los inicios que tienen lugar en la red interna.

Los inicios de recursos de Remote Browser Isolation, Citrix Virtual Apps Essentials y Citrix Virtual Desktops Essentials se redirigen siempre a la puerta de enlace. Estos inicios no mejoran el rendimiento de la configuración de la conexión directa de carga de trabajo.

Requisitos

Requisitos de la red

  • La red corporativa y las redes Wi-Fi de invitados deben tener direcciones IP públicas independientes. Si sus redes corporativas y de invitados comparten direcciones IP públicas, los usuarios de la red de invitados no podrán iniciar sesiones de DaaS.
  • Utilice los rangos de direcciones IP públicas de las redes desde las que se conectan los usuarios internos. Los usuarios internos de estas redes deben tener una conexión directa con los VDA. De lo contrario, los recursos virtuales fallan al iniciarse, ya que Workspace intenta redirigir a los usuarios internos directamente al VDA, lo que no es posible.
  • Si bien los VDA suelen estar ubicados dentro de la red local, también puede usar VDA alojados en una nube pública, como Microsoft Azure. Los inicios de los clientes deben tener una ruta de red para contactar con los VDA sin que un firewall los bloquee. Esto requiere un túnel VPN desde su red local hasta una red virtual en la que residan los VDA.

Requisitos de TLS

TLS 1.2 debe estar habilitado en PowerShell al configurar las ubicaciones de red. Para forzar a PowerShell para que utilice TLS 1.2, use el siguiente comando antes de usar el módulo de PowerShell:

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

Requisitos del espacio de trabajo

  • Debe tener un espacio de trabajo configurado en Citrix Cloud.
  • Citrix DaaS se habilita en Configuración de Workspace > Integraciones de servicios.

Habilitar TLS para la aplicación Workspace para conexiones HTML5

Si sus suscriptores utilizan la aplicación Citrix Workspace para HTML5 para iniciar aplicaciones y escritorios, Citrix recomienda tener configurado TLS en los VDA de su red interna. La configuración de los VDA para que usen conexiones TLS garantiza que sean posibles los inicios directos de los VDA. Si los VDA no tienen TLS habilitado, los inicios de aplicaciones y escritorios deben redirigirse a través de una puerta de enlace cuando los suscriptores utilizan la aplicación Citrix Workspace para HTML5. Los inicios que utilizan Desktop Viewer no se ven afectados. Para obtener más información acerca de cómo proteger las conexiones directas de VDA con TLS, consulte el artículo CTX134123 en Knowledge Center de Citrix Support.

Configuración de ubicación de red de Citrix Cloud

La configuración de la conexión directa de carga de trabajo a través de Citrix Cloud implica crear ubicaciones de red mediante los intervalos de direcciones IP públicas de cada ubicación de sucursal desde la que se conectan los usuarios internos.

Crear una ubicación de red

  1. En la consola de Citrix Cloud, vaya a Ubicaciones de red en el menú principal. Elemento de menú Ubicaciones de red
  2. Seleccione el botón Agregar ubicación de red en la esquina superior derecha. Página Ubicaciones de red
  3. Introduzca un nombre de ubicación de red, un rango de direcciones IP públicas para la ubicación y etiquetas de ubicación. Agregar ubicación de red
  4. Repita estos pasos para cada nueva ubicación de red que quiera agregar. Ubicaciones de red

Modificar o quitar ubicaciones de red

  1. En la consola de Citrix Cloud, vaya a Ubicaciones de red en el menú principal.
  2. Seleccione los puntos suspensivos situados junto a la ubicación de red que quiere modificar o quitar y, a continuación:
    • Seleccione Modificar para modificar una ubicación de red y, a continuación, Guardar los cambios para verlos en la página de ubicaciones de red; o bien
    • Seleccione Eliminar para quitar una ubicación de red. Se le pedirá que confirme esta decisión antes de que se elimine la ubicación de red. Esta acción no se puede deshacer.

Configuración de ubicación de red de PowerShell

En lugar de usar la interfaz de la consola de administración de Citrix Cloud, puede usar un script de PowerShell para configurar la conexión directa a la carga de trabajo. La configuración de la conexión directa de carga de trabajo con PowerShell conlleva las siguientes tareas:

  1. Determine los intervalos de direcciones IP públicas de cada ubicación de sucursal desde la que se conectan los usuarios internos.
  2. Descargue el módulo de PowerShell.
  3. Cree un cliente de API seguro en Citrix Cloud y anote el ID y el secreto del cliente.
  4. Importe el módulo de PowerShell y conéctese al servicio de ubicación de red (NLS) con los detalles del cliente API.
  5. Cree sitios NLS para cada una de sus ubicaciones de sucursal con los rangos de direcciones IP públicas que haya determinado previamente. La conexión directa de carga de trabajo se habilita automáticamente para cualquier inicio que provenga de las ubicaciones de red internas que haya especificado.
  6. Inicie una aplicación o escritorio desde un dispositivo de la red interna y compruebe que la conexión va directamente al VDA, sin pasar por la puerta de enlace. Para obtener más información, consulte Registros de archivos ICA en este artículo.

Descargar el módulo de PowerShell

Antes de configurar las ubicaciones de red, descargue el módulo de PowerShell (nls.psm1) suministrado por Citrix desde el repositorio de GitHub para Citrix. Con este módulo, puede configurar tantas ubicaciones de red como sea necesario para los VDA.

  1. En un explorador web, vaya a https://github.com/citrix/sample-scripts/blob/master/workspace/nls.psm1.
  2. Presione ALT mientras hace clic en el botón Raw. Vista del archivo de GitHub con el botón Raw resaltado
  3. Seleccione una ubicación en la máquina y haga clic en Save.

Detalles de configuración requeridos

Para configurar las ubicaciones de red, necesita la siguiente información:

  • El ID de cliente seguro de Citrix Cloud, el ID de cliente y el secreto de cliente. Para obtener estos valores, consulte Crear un cliente seguro en este artículo.
  • Rangos de direcciones IP públicas de las redes desde las que se conectan los usuarios internos. Para obtener más información acerca de estos rangos de direcciones IP públicas, consulte la sección Requisitos de este artículo.

Crear un cliente seguro

  1. Inicie sesión en Citrix Cloud desde https://citrix.cloud.com.
  2. Desde el menú de Citrix Cloud, seleccione Administración de acceso e identidad y, luego, Acceso a API.
  3. En la ficha Clientes seguros, anote su ID de cliente. Consola de Secure Client con el ID de cliente resaltado
  4. Escriba un nombre para el cliente y, a continuación, seleccione Crear cliente.
  5. Copie el ID del cliente y el secreto del cliente. Cuadro de diálogo con el ID y el secreto de Secure Client

Configurar ubicaciones de red

  1. Abra una ventana de comandos de PowerShell y vaya hasta el mismo directorio donde guardó el módulo de PowerShell.
  2. Importe el módulo: Import-Module .\nls.psm1 -Force
  3. Establezca las variables requeridas con la información de cliente seguro desde Crear un cliente seguro:
    • $clientId = "YourSecureClientID"
    • $customer = "YourCustomerID"
    • $clientSecret = "YourSecureClientSecret"
  4. Conéctese al servicio de ubicación de red con sus credenciales de cliente seguro:

    Connect-NLS -clientId $clientId -clientSecret $clientSecret -customer $customer
    
  5. Cree una ubicación de red. Para ello, sustituya los valores de los parámetros por los valores que corresponden a la red interna desde la que los usuarios internos se conectan directamente:

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

    Para especificar una única dirección IP en lugar de un intervalo, agregue /32 al final de la dirección IP. Por ejemplo:

    New-NLSSite -name "YourSiteName" -tags @("YourTags") -ipv4Ranges @("PublicIpOfYourNetworkSite/32") -longitude 12.3456 -latitude 12.3456 -internal $True
    

    Importante:

    Al utilizar el comando New-NLSSite, incluya al menos un valor para cada parámetro. Si ejecuta este comando sin argumentos de línea de comandos, PowerShell le pedirá que introduzca los valores adecuados para cada parámetro de uno en uno. Al introducir valores para el parámetro -tags, presione ENTRAR después de introducir cada valor de etiqueta. Cuando haya terminado de introducir etiquetas, presione ENTRAR de nuevo para continuar con el siguiente parámetro. La propiedad internal es una propiedad booleana obligatoria con valores posibles $True o $False que se asigna a la interfaz de usuario a través de PowerShell. Por ejemplo: (UI) Network Internal -> (PowerShell) –internal=$True.

    Cuando la ubicación de red se crea correctamente, la ventana de comandos muestra los detalles de la ubicación de red.

  6. Repita el paso 5 para todas las ubicaciones de red desde las que se conectan los usuarios.
  7. Ejecute el comando Get-NLSSite para ver una lista de todos los sitios que haya configurado con NLS y compruebe que los datos de esos sitios son correctos.

Modificar ubicaciones de red

Para cambiar una ubicación de red existente:

  1. Desde una ventana de comandos de PowerShell, indique todas las ubicaciones de red existentes: Get-NLSSite
  2. Para modificar el intervalo de IP de una ubicación de red específica, escriba

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

    donde [N] es el número correspondiente a la ubicación en la lista (a partir de cero) y "1.2.3.4/32","4.3.2.1/32" son los intervalos de IP, separados por comas, que quiere usar. Por ejemplo, para modificar la primera ubicación de la lista, escriba el siguiente comando:

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

Eliminar ubicaciones de red

Para eliminar las ubicaciones de red que ya no quiere utilizar:

  1. Desde una ventana de comandos de PowerShell, indique todas las ubicaciones de red existentes: Get-NLSSite
  2. Para quitar todas las ubicaciones de red, escriba Get-NLSSite | Remove-NLSSite
  3. Para quitar ubicaciones de red específicas, escriba (Get-NLSSite)[N] | Remove-NLSSite, donde [N] es el número correspondiente a la ubicación de la lista. Por ejemplo, para quitar la primera ubicación de la lista, escriba (Get-NLSSite)[0] | Remove-NLSSite.

Verificar que los inicios internos se redirigen correctamente

Para comprobar que los inicios internos acceden directamente a los VDA, utilice uno de los métodos siguientes:

  • Consulte las conexiones de VDA a través de la consola de DaaS.
  • Utilice los registros de archivos ICA para verificar la dirección correcta de la conexión del cliente.

Consola de Citrix DaaS

Seleccione Administrar > Supervisar y, a continuación, busque un usuario con una sesión activa. En la sección “Detalles de la sesión” de la consola, las conexiones VDA directas se muestran como conexiones UDP, mientras que las conexiones de la puerta de enlace se muestran como conexiones TCP.

Si no ve UDP en la consola de DaaS, debe habilitar la directiva de transporte adaptable de HDX para los VDA.

Registros de archivos ICA

Habilite los registros de archivos ICA en el equipo cliente, tal y como se describe en Para habilitar la captura de registros del archivo launch.ica. Después de iniciar las sesiones, consulte las entradas Address y SSLProxyHost en el archivo de registro.

Conexiones de VDA directas

Para las conexiones directas de VDA, la propiedad Address contiene la dirección IP y el puerto del VDA.

A continuación, se muestra un ejemplo de un archivo ICA cuando un cliente inicia una aplicación mediante NLS:

[Notepad++ Cloud]
Address=;10.0.1.54:1494
SSLEnable=Off
<!--NeedCopy-->

La propiedad SSLProxyHost no está presente en este archivo. Esta propiedad se incluye solo para inicios a través de una puerta de enlace.

Conexiones de puerta de enlace

Para las conexiones de puerta de enlace, la propiedad Address contiene el tíquet STA de Citrix Cloud, la propiedad SSLEnable se establece en On y la propiedad SSLProxyHost contiene el FQDN y el puerto de la puerta de enlace.

A continuación, se muestra un ejemplo de un archivo ICA cuando un cliente tiene una conexión a través de Citrix Gateway Service e inicia una aplicación:

[PowerShell ISE Cloud]
Address=;40;CWSSTA;027C02199068B33889A40C819A85CBB4
SSLEnable=On
SSLProxyHost=global.g.nssvcstaging.net:443
<!--NeedCopy-->

A continuación, se muestra un ejemplo de un archivo ICA cuando un cliente tiene una conexión a través de una puerta de enlace local e inicia una aplicación mediante una puerta de enlace local que está configurada dentro de la ubicación de recursos:

[PowerShell ISE Cloud]
Address=;40;CWSSTA;027C02199068B33889A40C819A85CBB5
SSLEnable=On
SSLProxyHost=onpremgateway.domain.com:443
<!--NeedCopy-->

Nota:

Los servidores virtuales de la puerta de enlace local que se utilizan para iniciar aplicaciones y escritorios virtuales deben ser servidores virtuales VPN, no servidores virtuales nFactor AAA. Los servidores virtuales nFactor AAA son solo para la autenticación de usuarios y no hacen de intermediarios del tráfico de inicios ICA ni HDX de recursos.

Ejemplo de script

El script de ejemplo incluye todos los comandos que puede necesitar para agregar, modificar y quitar los rangos de direcciones IP públicas de las ubicaciones de sucursal. Sin embargo, no es necesario ejecutar todos los comandos para realizar una sola función. Para que se ejecute el script, incluya siempre las primeras 10 líneas, desde Import-Module hasta Connect-NLS. Después, puede incluir solo los comandos de las funciones que quiere realizar.

Import-Module .\nls.psm1 -Force

$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 -internal $True

# 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

Solución de problemas

Fallos de inicio del VDA

Si no se inician sesiones de VDA, compruebe que está utilizando rangos de direcciones IP públicas de la red correcta. Al configurar las ubicaciones de red, debe utilizar los intervalos de direcciones IP públicas de la red desde la que se conectan los usuarios internos para llegar a Internet. Para obtener más información, consulte la sección Requisitos de este artículo.

Los inicios internos de VDA siguen redirigiéndose a través de la puerta de enlace

Si las sesiones de VDA iniciadas internamente siguen redirigiéndose a través de la puerta de enlace como si fueran sesiones externas, compruebe que está utilizando la dirección IP pública correcta desde la que se conectan los usuarios internos para llegar a su espacio de trabajo. La dirección IP pública que aparece en el sitio NLS debe corresponder a la dirección que utiliza el cliente que inicia los recursos para acceder a Internet. Para obtener la dirección IP pública correcta para el cliente, inicie sesión en la máquina del cliente, visite un motor de búsqueda e introduzca “what is my IP” en la barra de búsqueda.

Todos los clientes que inician recursos dentro de la misma ubicación de oficina suelen acceder a Internet con la misma dirección IP pública de salida de la red. Estos clientes deben tener una ruta de red de Internet a las subredes en las que residen los VDA, que no esté bloqueada por un firewall. Para obtener más información, consulte la sección Requisitos de este artículo.

Errores al ejecutar cmdlets de PowerShell en plataformas que no son de Windows

Si se encuentra con errores al ejecutar cmdlets con los parámetros correctos en PowerShell Core, compruebe que la operación se llevó a cabo correctamente. Por ejemplo, si ve errores al ejecutar el cmdlet New-NLSSite, ejecute Get-NLSSite para comprobar que se creó el sitio. La ejecución de estos cmdlets en plataformas macOS o Linux con PowerShell Core puede provocar un error, aunque la operación se haya ejecutado correctamente.

Si ve este problema al ejecutar cmdlets con los parámetros correctos en una plataforma Windows mediante PowerShell, compruebe que está utilizando la versión más reciente del módulo de PowerShell. Con la versión más reciente del módulo de PowerShell, este problema no se produce en plataformas Windows.

Asistencia y ayuda adicionales

Si tiene dudas o necesita ayuda para solucionar problemas, contacte con su representante de ventas de Citrix o con Citrix Support.

Optimizar la conectividad a los espacios de trabajo con la conexión directa de carga de trabajo