Nomachine NX Client Times out “Negotiating Link Parameters”

I use NX Client from Nomachine to connect to one of my boxes, or more accurately, to a copy of CentOS 5.2 I’m running in a VirtualBox virtualbox that I run on my Windows box. Its kinda wierd, but cool in some respects as half of my computer is now running CentOS; pretty much literally since half the RAM can be used by it and since I connect via NX client it sits in a window which lives on a second monitor.

This is a cool setup. Its a way to wean myself from Windows, to run a test environment with yet another web browser (ok, so its Firefox, but still), while at the same time playing with VM’s (and X11 as I used to do). It also gives me a great excuse to use NX which is, it must be said, far better than the other free Xserver for Windows, Xming. I think its the compression or something, or maybe that its a dedicated protocol server and client, and Xming is implementing X11 directly. Whatever, Xming is often slow and sometimes iffy (to the point where I never felt comfortable purchasing the latest version). It is particularly bad at handling network issues I’ve found, where it will infrequently just hang the connection, causing you to lose all of your window placements.

Not so with NX which appears to be the equivalent of screen for X. Disconnect? Okay, I’ll just sit here and suspend your session and wait for you to come back. This feature alone is amazingly useful, but combined wtih the built-in compression it works very well. Part of the high quality compression is that they compress the data in the connection protocol, X11, VNC, or Radmin, instead of compressing the stream of data, as happens with say SSH compression. Although I haven’t tried it, you can apparently still use X sessions over a dialup line. I know its considerably easier to bring up my X session at home over a cable modem link with NX that it is with Xming, which crawls on anything but having a text window open.

One issue I do have with NX is that its is really complicated to setup. I spent a good couple of hours installing things and repeated logging into my box, with numerous updates to the local SELinux config to allow NX under SSH to launch various things, including being able to write a log to /var/log. That’s exactly the kinda of crap people won’t deal with in general. If you’re having this problem then I fully recommend running this command:

audit2allow -l -r < /var/log/audit/audit.log

After each failed login. This gets audit2allow to list only the allow rules which are needed for the failures since the last reload of the SELinux policy (-l) and (-r) output them with the corresponding require { } structure.

Beyond that, which I got on my FC8 system, even using FC8 RPM’s (but not on my CentOS 5.2, with both the CentOS and NX RPM’s) the only issue I’ve found with NX is that occassionally it seems to get confused. When you open your client connection it will go through the normal setup, the window will open and it will resume the session, but the final Windows dialog box will sit there saying

“Negotiating Link Parameters”

It will do this for about 30s to a minute, mean while the session is up and running and usable. At the end of what seems to be a timeout period, it seems to give up. At that point it closes both the dialog box and the entire NX client window. Once this happens you can try as many times as you like and it will just repeat.

I’ve found that the only answer to this is to open up task manager with alt-ctrl-delete, and to kill all “NX” processes. Once you do that it works again.

Col.

Advertisements

17 Responses to Nomachine NX Client Times out “Negotiating Link Parameters”

  1. Thomas says:

    Thank you very much for your article! That solved my “connection timeout” error.

  2. Pretzel says:

    Ahhh! Thanks for this post. I’ve been looking all over for an answer to this!

    I see that there are extra “nxssh.exe” processes running in Task Manager. I killed off all these processes and now it connects normally again without the timeout.

    Seems to be a bug in the nxclient. I hope they fix this soon.

  3. azza says:

    Thanks alot for this post, it has cured my problem too, this bug is starting to get very annoying,
    i think that suspending the client makes this error happen in the first place…,

    anyways thanks alot….

  4. Jeroen says:

    Yes! Problem solved.

    Thank you very much!

    – Jeroen

  5. Daniel says:

    Hi!
    Thanks for the great tip you gave!
    But I have a another question. Are you running Nomachine in fullscreen on your second monitor, while using windows on your primary monitor?

    Im trying to solve how to do that. But the fullscreen mode always pop up on my primary monitor.

    • perladmin says:

      I was (I haven’t done so in a little while) and I always found that the NX window opened on the primary monitor too. This is odd since I know it works with other applications – I use Firefox and keep that on the second monitor and when that app opens it now opens on the second monitor.

      I just tested this with v3.3.0-6 and it appears to do the same thing. I believe that there are a few apps out there which can control this sort of thing.

      • Bryan says:

        You can set the second monitor as primary in the windows settings, then open NX and change it back. This works well if you use NX for an extended period of time and you want a task bar on your primary monitor. I have a windows laptop but I like having my NX session on my external/second monitor.

        Bryan

      • mk3 says:

        To get NXClient to launch fullscreen in a second monitor, drag the NXClient login window to your second monitor before you login. Then when you connect the NXClient will launch in your second monitor. More info at http://www.nomachine.com/ar/view.php?ar_id=AR09C00288

  6. Tau says:

    Hi

    Thanks for the post. I wonder if anyone can shed some light.

    I too have been playing with NXClient on Windows XP, but it seems to manifest one of the three following behaviours. The remote machine is Ubuntu 8.10 Ibex running as a Virtualbox guest.

    1. timeouts after awhile. Task Manager shows nxwin only running.

    2. Connects, links, but no remote screen. Task Manager shows nxwin, nxssh running/

    3. Connects successfully and working wonderfully.

    Whenever 1 or 2 happens, I had to kill the nxwin and nxssh processes in Task Manager.

    But the result is not consistent and I cannot seem to diagnose a pattern of working /not working.

    I am also certain that it is not a server-side issue, because using an Ubuntu nxclient (or qtnx) client, I connect every time!

    The Nomachine site faq suggests updating some libstdc++ library on the remote server, which improved the “success” rate a little, but overall, still pretty much hit and miss.

    I am certain that this is the NXclient on Windows problem.

    Anybody care to comment?

    Tau

  7. VChiguru says:

    I had this problem though there are no XN sessions were running. I was trying to connect to my workstation at work place from home.
    All I have to do is click on “configure” and go to “Advanced” tab and enable “Disable Encryption of All Traffic”. Worked

  8. Drew Hoskins says:

    Thanks, this was a big time-saver for me.

  9. dhammadev says:

    Thank you! Solved my problem, have been getting this (connection timed out) error lately.

  10. Sunil says:

    thanks a lot for the solution..it actually worked

  11. Sid says:

    Thanks! Worked for me too :)

  12. Mohit Gupta says:

    Cool Man! worked like a charm!

    Cheers~

  13. Abhimanyu says:

    Awesome stuff… Thanks a lot for sharing this info!

    Cheers!!

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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: