Configuring Remote Desktop IP Virtualization III

Part III: using Remote Desktop Services Provider for Windows PowerShell™

Part I of this blog post series describes what Remote Desktop IP Virtualization is all about, illustrates the scenarios where it can add value, lists the requirements for configuring a server in Remote Desktop IP Virtualization mode and details the steps involved in configuring per-program and per-session Remote Desktop IP Virtualization using Remote Desktop Services provider for Windows PowerShell.

Part II of this blog post series describes configuring RD IP Virtualization automatically on managed computers by using Group Policy objects.

This post explains how to do all this using the RDS Provider for Windows PowerShell.

  1. On the RD Session Host server, start “Windows PowerShell Modules” with elevated privileges. Click Start, select Administrative Tools, right-click “Windows PowerShell Modules,” and then click “Run as administrator.
  2. Type “cd RDS:” and press ENTER to switch to the RDS Provider for Windows PowerShell. Type “cd RDSConfiguration\VirtualIPSettings” and press ENTER. Type “Dir” and press ENTER to see the configuration settings required to set the RD Session Host Server in Remote Desktop IP Virtualization mode.
    image 
  3. Remote Desktop IP Virtualization is disabled by default. To enable Remote Desktop IP Virtualization, type “Set-Item VirtualIPActive 1” and press ENTER.
    image
  4. To select a network adapter to be used for Remote Desktop IP Virtualization:
    a. If the MAC address of the network adapter is already known, provide the value directly to set-item by typing “set-item .\NetworkAdapter 00-15-17-0E-7A-43”, where “00-15-17-0E-7A-43” is the MAC address of the network adapter and Press ENTER.
    image
    b. Alternatively, to get the MAC address of the network adapter, type “$NetworkAdapter=Get-WmiObject -namespace root\cimv2\terminalservices –query "select * from win32_tsvirtualip"” and then press ENTER.
    image

    Now select the MAC Address of the appropriate network adapter to be used for IP Virtualization by accessing the $NetworkAdapter.NetworkAdapterMacList[] array. In the above example, if “Intel(R) PRO/1000 PT desktop Adapter” is to be used for IP virtualization, Type “set-item .\NetworkAdapter $NetworkAdapter.NetworkAdapterMacList[0] -passthru” and then press ENTER.
    image

Note: Only single network adapter scenarios are currently supported. If the server has multiple enabled network adapters, only the adapter selected in the settings will be used for Remote Desktop IP Virtualization.

Configuring IP Virtualization in Per Program Mode

By default, when Remote Desktop IP Virtualization is enabled, the server is configured on per-program mode (the value of VirtualIPMode being 1).

Note: This mode is of no practical significance if no programs are selected that use virtual IP addresses.

To choose applications that need a virtual IP address, create entries under the RDS: \RDSConfiguration\VirtualIPSettings\Applications node. An application can be virtualized by using either:

  • The full path of the application: Only the application at the specified location is IP-virtualized
  • The process name: All applications with the process name, regardless of their path, are IP-virtualized.

Type “New-Item –Path RDS: \RDSConfiguration\VirtualIPSettings\Applications” and then press ENTER. Enter the path of the application.
image

You can assign Virtual IPs to an application directly by using either the AppPath or AppName parameters directly as shown in the screen snapshots below:

a. Using AppPath:
image

b. Using AppName:
image

Note: To remove a program from the list, say notepad.exe, type “Remove-Item –Path RDS:\RDSConfiguration\VirtualIPSettings\Applications\notepad.exe –Recurse” and then press ENTER.

The final step is to reboot the RDSH server so that new user sessions logging on will get virtual IP addresses for their virtualized applications.

Configuring IP Virtualization in Per Session Mode

To change the mode to per-session, type “Set-Item VirtualIPMode 0” and then press ENTER. Reboot the server to complete the configuration.
image

To disable RD IP Virtualization, type “Set-Item VirtualIPActive 0” and then press ENTER.