Assigning static IP addresses when using XenApp and Provisioning Server

Ok so you’ve now decided what a really cool product Citrix Provisioning Server (PVS) is and have decided to use it to stream the OS to your XenApp servers. I’m assuming here you already have the PVS infrastructure in place and have created the image of your XenApp server onto a vDisk.

Now when using PVS inconjuction with a virtual desktop solution it’s well documented that you can use DHCP scope options 66 and 67 to locate the relevant Provisioning Sever and bootstrap file; which will allow PVS to stream the image; where the virtual desktops are allocated a dynamic IP address from DHCP.

Great we say now let’s use this technique for our XenApp servers…..mmm but we want our XenApp server to have static IP address; not one dynamically assigned from DHCP.

From what I’ve seen this isn’t very well documented but is a very real life example of how organisations do things.

One way of doing this that first springs to mind would be to create a bootable PVS ISO that contains the IP address of the XenApp server etc. I’m not a fan of this because you would need an ISO per XenApp server amongst other things.

The best, most controlled and visible method to do this would be to use reservations in DHCP based on a specified MAC address i.e. the one used in the PVS target device properties.

The basic steps to achieve this are:

  1. Create a DHCP scope limiting the range to the IP address of your XenApp servers i.e. 192.168.0.1 – 192.168.0.20 if you don’t already have one.
  2. Be sure to set the DHCP scope options required by PVS i.e. 66 and 67, if they haven’t already been set at the server level.
  3. Set the lease to be unlimited as they are reserved by the MAC address.
  4. Once you have created the scope then add the reservations entering the Reservation name (XenApp server name), MAC, IP and Description.

 You might think about duplicating the same scope on another DHCP server for fault tolerance remembering to add in the reservations and deactivating the scope otherwise you will get conflict errors. Only activate the scope should your other DHCP server fail; after this you are good to go.