How to check and test if your server’s ICA listener is working properly and how to recreate the listener

As you probably know, in order for your Citrix environment to function properly you must have your ICA protocol communications working fine between your client and your XenApp server. The ICA protocol allows client devices to send requests to the XenApp server. The XenApp server contains an ICA listener. It is located under Admin Tools – Remote Desktop Services – Remote Desktop Services Configuration (or Terminal Services Configuration in Windows 2003 servers)
The listener can get corrupted for a variety of reasons. An easy way to test if your ICA listener is corrupted is to issue a telnet command to the server from a client device or from the server itself. See the two examples below:
From a Windows client device (running Windows XP, vista or Windows 7) type on a CLI prompt the command:
telnet [servername] 1494. If the ICA listener is working you will get a black screen with the word ICA echoing on it (ICAICAICA…)
from the server itself just type: telnet localhost 1494

If you don’t get the ICA echoing on the screen, then you will get an error message. That means you ICA listener is corrupted (or the port 1494 is blocked). To fix the corruption there are two different methods to correct it:
For Windows Server 2003 you need to delete the ICA listener and recreate it. See this CTX video article or this CTX article with screenshots on how to do it.
It is very easy, but make sure you make sure you know the permissions level for each one of the accounts listed in the permission tab of the listener before deleting it(Right click on the ICA listener, click on Properties and click on the Permissions tab; make sure to screenshot the permissions for each one of the accounts listed there; Once you know that information right click on it delete and re-create following the CTX article. Make sure to add the citrix account with the proper privileges according to the article
For Windows server 2008 is even easier. All you need to do is to go to another XenApp server and export the ICA-tcp listener registry key and import it into the registry of the server which has the bad ICA listener. It is that simple. On the bad server I like to export the ICA-tcp reg key and then delete it from the registry. Then I just import the reg key exported from the other server. This way I know for sure the reg key was imported without leaving any traces of the old key in the registry.
If for some reason you only have one server in your farm and you don’t have access to another server that contains a good ICA-tcp reg key you can run XenApp repair (Control Panel – Add Remove Programs or Programs and Features – Uninstall a program) This will recreate the listener for you as well (works for both 2003 and 2008 servers). A good Plan B tactic is to backup the ICA listener reg key (Windows server 2008 only) as soon as you finish installing XenApp server. Save it on a Citrix toolkit folder and use when you need it.

Registry location to export, import or delete the reg key for the ICA-Tcp listener

HKEY_ LOCAL _ MACHINE\SYSTEM \Control Set\Control\Terminal Server\WinStations\ICA-tcp

More about ICA listener here and how it relates to IMA and network card bindings

This is a great site to troubleshoot ICA listener issues as well as ICA client installs

Another good site to troubleshoot ICA listener


One Response to “How to check and test if your server’s ICA listener is working properly and how to recreate the listener”

  1. Mirza Says:

    Great information

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: