// This is the script to give summary on the main page.
Think IPM

Thursday, June 26, 2008

RDP Client 6.1 for XP SP2

This is the new client that comes with XP SP3 and Vista SP1. It removes the preconnection login prompts, so you no longer have to authenticate before connecting, only to be prompted again on many machines.

Read all about it at ...


Click Here to Continue Reading >>

Thursday, June 19, 2008

P2V Linux boxes to VMware Virtual Machines

Great write up by Chris Hahn. I also found some additional information on http://conshell.net/wiki/index.php/Linux_P2V

Linux P2V procedure

Required Software

Red Hat / Fedora Linux CD1 (any version)
VMware Converter 3.x / 4.x

Converting physical host to Virtual Machine

Convert physical machine to VM image using VMware Converter bootcd.

Virtual Machine Cleanup

When conversion is complete, edit properties of virtual machine to remove unnecessary hardware

  • Take Snapshot of virtual machine before making any changes
  • Remove USB controllers, Serial ports, parallel ports, floppy drives
  • Change hard disk controller to LSI logic from Buslogic if VM is currently configured for Buslogic
  • Configure VM to boot from CD in VM bios before booting from hard disk
  • Connect Red Hat boot CD to VM. Select Connected and Connect at Power on
  • Boot up machine with Redhat CD. You will be prompted to change the hard disk type to LSI Logic controller type if disk controller was changed above. Accept this change

Follow VMware KB article below to reconfigure VM hardware –


Confirm VM boots correctly after updates

VMware Tools

Open Virtual Machine console. Select Install/Upgrade VMware tools from menu. Mount virtual cdrom with the following command

Mount /dev/hda/ /media/cdrom

(This command may be different depending on the version of linux. The cdrom could be mounted under /dev/cdrom or somewhere else. The mount folder could also be /mnt/cdrom instead of /media/cdrom.)

Once the VMware tools CD is mounted, type rpm –i /media/cdrom/VMwareTools-xxxx.xxx.rpm (the xxx section will depend on the version of ESX, and the linux platform. Just use tab autocomplete to get the exact filename)

Once the tools are installed run vmware-config-tools.pl. Follow the instructions to complete VMware Tools installation.

Click Here to Continue Reading >>

Have Citrix Netscaler add a header with the real Client IP Address

Here is a great Citrix tip from Sam Jacobs.

When deploying a Netscaler / Web Interface solution, it is always desirable to be able to determine the *real* IP address of the client.

This is especially useful when MetaLog is deployed.

Here is a KB article describing the procedure to set an IIS header on the AGEE with the value of the user's real IP address:

How to Override the Web Interface 4.5 Client Address Mode Discovery

Click Here to Continue Reading >>

Tuesday, June 17, 2008

Cookie Required error when running Citrix AGEE with XDS

Another Great Tip from David Paoleschi.

If you get the “Cookie Required” error when you running AGEE with XDS (that WI 5.0). This is because the change of cookies.js (Inetpub\wwwroot\Citrix\XenApp\app_data\clientscripts) in WI 5.0.

To get around this issue, open the cookies.js, you can find the line:

document.cookie = name + "=" + value + "; path=<%=wiContext.getWebAbstraction().getAbsoluteRequestDirectory()%>";

change it to the following and save the file:

document.cookie = name + "=" + value + ";

The problem will disappear. However, I am not sure if there is any adverse effect by doing this, so use this with care.

Click Here to Continue Reading >>

Monday, June 16, 2008

Video Issues running Citrix XenCenter from Citrix XenDesktop Session

Good Thread from Chris Hahn on issues running XenCenter Client from a XenDesktop Session.

QUESTION: If I run the XenCenter client from a XenDesktop session, I see a lot of display corruption. The remote console does not work at all, and switching between other tabs for a Virtual machine also causes display corruption (overlay of text from previous tabs.

I see similar problems running VMware VirtualCenter from a XenDesktop session. The Virtual Machine names do not show up, and a lot of the text in the menus does not appear.

This does not happen from an RDP session to the same hosted desktop. I have now seen this issue on 2 different XenDesktop pilot installs, so it does not seem like a specific configuration issue.

The XP desktop VM is running on Xen Server in both pilots. I have tested connecting from a number of different client platforms (Dell laptops, HP Desktops, Wyse thin client), and saw the video issue in all cases.

I tried disabling all hardware acceleration on both the XP VM running the XDS agent (already disabled), along with my laptop (Dell D620) running the Desktop Receiver client. No change, still seeing graphic issues.

ANSWER: Received a fix for this from another Citrix engineer. See below. This fixed all the graphics glitches I was seeing.

"It is possible that these issues you are seeing are related to the multimonitor hook (in particular the XenCenter console).
As a way to try this, first disable the multimonitor hook.
Go to c:\program files\citrix\icaservice and rename mmhook.dll.
Then try out the applications you are having issues with.
If you find this fixes it, then you can make use of the multi monitor exclude list to make sure the hook doesn't attach to the executables causing you issues - while still allowing the hook to take effect for apps that do not interact badly with the multimonitor hook.
Go to HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_DLLs\Multiple Monitor Hook:Exclude
add the name of the executables you don't want the hook to apply to. "

Read the entire thread here.

Click Here to Continue Reading >>

Latest Citrix Product Naming / Acronyms

A colleague of mine shared this Component Naming / Acronym list with me today to help with my confusion! J (Thanks David)

AMC Access Management Console
DDC Desktop Delivery Controller
PVS Provisioning Server
VDA Virtual Desktop Agent
WCF Windows Communication Foundation
XA XenApp
XD XenDesktop
XS XenServer

Please update your Decoder rings accordingly!

Click Here to Continue Reading >>

Citrix Provisioning Server Best Practices

Disabling Spanning Tree or Enabling PortFast

  • With Spanning Tree or Rapid Spanning Tree Protocols the ports are placed into a "blocked" state while the switch transmits Bridged Protocol Data Units (BPDU's) and listens to ensure the BPDU's are not in a loop-back configuration.
  • The time it takes to complete this "convergence" process depends on the size of the switched network, in which case, PXE may time out.
  • To resolve this issue, disable Spanning Tree on edge-ports connected to clients or enable PortFast or Fast Link depending on the managed switch brand.

Large Send Offload

  • The TCP large send offload option allows the AIX® TCP layer to build a TCP message up to 64 KB long and send it in one call down the stack through IP and the Ethernet device driver. The adapter then re-segments the message into multiple TCP frames to transmit on the wire. The TCP packets sent on the wire are either 1500 byte frames for a MTU of 1500 or up to 9000 byte frames for a MTU of 9000 (jumbo frames).
  • This re-segmenting and storing up packets to send in large frames will cause latency and timeouts to the Provisioning Server. This should be disabled on all PVS Servers and clients.
  • To disable Large Send offload go into the Advance Tab of the NIC Properties.
  • For some NICs there is not setting in the NIC Properties and will require a registry key change to disable it. If the option is not there add the following entry to the registry:

    DWORD = EnableOffload
    Value "0"

Auto Negotiation
Auto Negotiation can cause long booting times and PXE timeouts especially when booting multiple Target Device. It is recommend that all PVS Ports (Server and Client) be hard coded both on the NIC and on the switch.

UPDATE : See the KB at http://support.citrix.com/article/ctx117374

Click Here to Continue Reading >>

Wednesday, June 11, 2008

Extending the BARTPE FIX-VMSCSI plugin

Today while doing a V2P today, I ran into a BSOD. Very typical for V2Ps so I booted up BartPE to fix my BSOD as I usually do. Unfortunately my destination hardware was a HP G5 with a newer P400 Smart Array Controller on it. No good for me since the FIX-VMSCSI plugin only supports HP Smart Array 5i/6i controllers or Dell PERC controllers.

Time to extend the plugin to support the P400s! J

Step 1 : Download the P400 Drivers here.

Step 2 : Lotsa Hacking Around! J

Step 3: Boot to new BartPE and Choose the new P400 option!

Here's what I can reconstruct from my hacking around to get this to work.

Looking through the plugin folder for FIXVMSCSI I was able to tell that the files needed for importing the drivers were : Driver.sys, Driver.inf and 2 REG files containing various settings. There is also a FIX.CMD file copies over the driver files and imports the registry.

For my 'hack' I used the 5i/6i files as my guide.

The first thing I did was copy in the HPCISSS2.SYS and HPCISSS2.INF files into the /plugin/fixvmscsi/files directory. I then made a copy of fix5i6i.cmd and called it fixp400.cmd.

I changed all references from the 5i to the P400.

I also did a bunch of change and replaces on the items in red.

Once this was done, I copied smart5i6i1 & 2 over to hpcisss1 & 2.

These files would be my new registry files that would be have the information windows needs to load up the driver.

It's my rough understanding that when windows boots up, it looks at all the hardware and reads unique PCI vendor numbers from them and then matches them up to a database it holds in the registry. From that registry entry, windows is instructed which driver in the file system to use. The FIX-VMSCSI plug in uses these reg files to populate that critical database.

Fortunately, I discovered that in the INF file from the driver was all of the PCI vendor numbers we would need. The INF file can be loaded in notepad as a normal text file and deciphered.

It doesn't appear that all INF files have this information so neatly displayed so I consider myself lucky today! J

Here is a peek inside the INF file :

And a look inside the FIX-VMSCSI reg files :

So basically, for each pci#VEN number I found in the .INF file, I created a HKLM entry in the REG file. Since the one driver file can be good for multiple controllers, there will be more than one pci#VEN number. The hpCISSs2 driver for instance supports not only the P400 but the P400i, P800, P600, p700m, e500, e200 and b400i. Each I assume has its own pci#VEN number. After looking at various sample reg files, it looks like the ClassGUID is ALWAYS 4D36E97B-E325-11CE-BFC1-08002BE10318 which I guess Microsoft translates as the Mass Storage Controller.

Each entry points to a Service which is now labeled hpCISSs2 which brings us to the second reg file.

This creates a Services key called hpcisss2 that holds information that points down to the ACTUAL file path to the driver itself.

I am assuming that as Windows boots up and reads the PCI Vendor ids, it then goes to the CriticalDeviceDatabase to look them up and find out which Service to use. It then looks up the Service in the CurrentControlSet and finds out where the actual driver exists allowing Windows to boot up to the OS. No more Blue Screen of Death!

From here, I modified the menu system to launch my new FixP400.CMD file, Built a new BartPE.iso and burned a new CD. Booted it up on the broken machine and fixed all my troubles! J

Hopefully there is enough coherent information in this post to help others extend the great work of the Ultimate-P2V CD team at RTFM-ED to extend functionality to hardware not currently supported.

Download the package of files here.

Click Here to Continue Reading >>

Friday, June 6, 2008

Citrix XenApp / Edge Sight Anti Virus Recommendations

The following are suggestions from Aaron Silber to help ease the negative affect that standard Anti-virus settings can cause on Citrix servers. As these servers are not used in the normal sense of the word Server, the aggressiveness needs to be adjusted or performance will suffer.

Citrix XenApp settings

  • Change what gets scanned to scan inbound only. Typical settings are to scan on write, read access, etc.
  • Scan local drives only
  • Exclude the pagefile from being scanned.
  • Exclude .dat and .tmp files.
  • Exclude C:\Documents and Settings\*.*
  • Disable the heuristics mode of scanning, this setting can be very intensive on the system
  • For Printing performance issues: Exclude the Spool folder, C:\WINDOWS\system32\spool
  • Exclude the C:\Program Files\Citrix folder and all subfolders
  • Exclude smss.exe, winlogon.exe, userinit.exe, csrss.exe and wfshell.exe
  • For Symantec only: Disable "Tamper Protection".

EdgeSight settings

You must NOT be running McAfee 8.0 with patch 10. If so, you MUST install patch 11 or later before installing the EdgeSight Agent.
Some paths are given in case they were not already excluded (from above)



  • C:\Program Files\Common Files\Citrix\System Monitoring\Server\RSSH
  • C:\Program Files\Citrix\System Monitoring\Server\EdgeSight 4.0\scripts\rssh
  • C:\Program Files\Citrix\System Monitoring\Server\EdgeSight 4.0\Pages
  • C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services
  • C:\Program Files\Microsoft SQL Server\MSSQL\Data


Exclude the following from being scanned:


  • C:\Documents and Settings\All Users\Application Data\Citrix\System Monitoring\Data


  • C:\Program Files\Citrix\System Monitoring\Agent\Core\rscorsvc.exe
  • C:\Program Files\Citrix\System Monitoring\Agent\Core\Firebird\bin\fbserver.exe
Click Here to Continue Reading >>