Cuando configure escritorios basados en máquinas virtuales Windows para que sean accesibles a través un dispositivo de asignación de puertos y NAT en la misma dirección IP externa, debe proporcionar a cada escritorio un conjunto único de números de puerto. Los clientes pueden usar la misma dirección IP de destino, pero deben usar un número de puerto TCP único para que la conexión HTTPS dirija la conexión a un escritorio virtual específico.

Por ejemplo, el puerto HTTPS 1000 se dirige a un escritorio y el puerto HTTPS 1005 se dirige a otro, pero ambos puertos utilizan la misma dirección IP de destino. En este caso, sería demasiado complejo configurar números de puerto externos únicos para cada escritorio de las conexiones del protocolo del escritorio. Por esta razón, las opciones del complemento externalPCoIPPort, externalRDPPort y externalFrameworkChannelPort pueden utilizar una expresión relacional opcional en lugar de un valor estadístico para definir un número de puerto relacionado con el número de puerto HTTPS base utilizado por el cliente.

Si el dispositivo de asignación de puertos usa el número de puerto 1000 para HTTPS, asignado a TCP 443; el número de puerto 1001 para RDP, asignado a TCP 3389; el número de puerto 1002 para PCoIP, asignado a TCP y UDP 4172; y el número de puerto 1003 para el canal del marco de trabajo, asignado a TCP 32111, para simplificar la configuración, los números del puerto externo se pueden configurar para que sean externalRDPPort=+1, externalPCoIPPort=+2 y externalFrameworkChannelPort=+3. Cuando la conexión HTTPS ingrese desde un cliente que use el número de puerto de destino 1000 HTTPS, los números de los puertos externos se calcularán de forma automática de acuerdo a este número de puerto y usará 1001, 1002 y 1003 respectivamente.

Para implementar otro escritorio virtual, si el dispositivo de asignación de puertos usa el número de puerto 1005 para HTTPS, asignado a TCP 443; el número de puerto 1006 para RDP, asignado a TCP 3389; el número de puerto 1007 para PCoIP, asignado a TCP y UDP 4172; y el número de puerto 1008 para el canal del marco de trabajo, asignado a TCP 32111, con la misma configuración del puerto externo en el escritorio (+1, +2, +3 y sucesivamente) cuando la conexión HTTPS ingresa desde un cliente que usa el número de puerto de destino 1005 HTTPS, los números de puerto externos se calcularán automáticamente según el número de puerto 1005 y usará 1006, 1007 y 1008 respectivamente.

Este esquema permite que todos los escritorios estén configurados correctamente y que todos compartan la misma dirección IP externa. Si asigna números de puerto en incrementos de cinco (1000, 1005, 1010,...) al número de puerto HTTPS base, será posible que más de 12.000 escritorios accedan a la misma dirección IP. El número de puerto base se usa para determinar el escritorio virtual al que se enruta la conexión, según la conexión del dispositivo de asignación de puertos. En externalIPAddress=10.20.30.40, externalRDPPort=+1, externalPCoIPPort=+2 y externalFrameworkChannelPort=+3 configurados en todos los escritorios virtuales, la asignación a los escritorios virtuales debe corresponder a la descrita en la tabla de asignación de puertos y NAT.

Tabla 1. Valores de asignación de puertos y NAT
#MV Dirección IP del escritorio tráfico RDP PCOIP (TCP y UDP) Canal de marco de trabajo
0 192.168.0.0 10.20.30.40:1000 -> 192.168.0.0:443 10.20.30.40:1001 -> 192.168.0.0:3389 10.20.30.40:1002 -> 192.168.0.0:4172 10.20.30.40:1003 -> 192.168.0.0:32111
1 192.168.0.1 10.20.30.40:1005 -> 192.168.0.1:443 10.20.30.40:1006 -> 192.168.0.1:3389 10.20.30.40:1007 -> 192.168.0.1:4172 10.20.30.40:1008 -> 192.168.0.1:32111
2 192.168.0.2 10.20.30.40:1010 -> 192.168.0.2:443 10.20.30.40:1011 -> 192.168.0.2:3389 10.20.30.40:1012 -> 192.168.0.2:4172 10.20.30.40:1013 -> 192.168.0.2:32111
3 192.168.0.3 10.20.30.40:1015 -> 192.168.0.3:443 10.20.30.40:1016 -> 192.168.0.3:3389 10.20.30.40:1017 -> 192.168.0.3:4172 10.20.30.40:1018 -> 192.168.0.3:32111

En este ejemplo, Horizon Client se conecta a la dirección IP 10.20.30.40 y al número de puerto de destino HTTPS (1000 + n * 5), donde n es el número de escritorio. Para conectarse al escritorio 3, el cliente tiene que conectarse a 10.20.30.40:1015. Este esquema de direccionamiento simplifica de forma significativa las opciones de configuración de cada escritorio. Todos los escritorios están configurados con la misma dirección externa y la misma configuración de puertos. La configuración de la asignación de puertos y NAT se realiza a través del dispositivo de asignación de puertos y NAT con este patrón coherente y se puede acceder a todos los escritorios a través de una única dirección IP pública. El cliente usará normalmente un único nombre DNS público que resuelva esta dirección IP.