As remote protocols go VNC is usually considered the standard because it is open, popular and relatively easy to work with. There are dozens of free and commercial implementations of the protocol, and even products like my favorite CrossLoop use it. But, truth be told, VNC is not great. If you want speed and quality, you ought to look somewhere else.
In the past I mentioned that the RDP protocol (also known as the Remote Desktop) for Windows just can’t be beat. When given a choice between VNC and RDP to work on a remote windows box, I will always choose the later. Yes, it is proprietary, but it is just serves my needs better. VNC is more geared towards remote support because both the local and remote users usually share the same desktop session. RDP on the other hand utilizes Windows Terminal Services letting you work in your private instance. And on top of that it’s much faster, and even over a slow internet link you can use the machine without huge delays or visual artifacts.
What about linux? If you want this type of service and performance, you have to look at another proprietary product. I’m talking about nx protocol by NoMachine. However unlike RDP, the core libraries for NX are released under GPL and NoMachine does distribute free binaries for most modern systems.
How do you set up a NX server? It’s as easy as downloading and installing 3 deb packages. Note that you need all three. The node depends on the client, and the server depends on the node. Go figure. Here is how I got it working under Feisty:
wget http://126.96.36.199/download/3.0.0/Linux/nxclient_3.0.0-78_i386.deb wget http://188.8.131.52/download/3.0.0/Linux/nxnode_3.0.0-83_i386.deb wget http://184.108.40.206/download/3.0.0/Linux/FE/nxserver_3.0.0-69_i386.deb sudo dpkg -i nxclient_3.0.0-78_i386.deb sudo dpkg -i nxnode_3.0.0-83_i386.deb sudo dpkg -i nxserver_3.0.0-69_i386.deb
I had no major issues installing the 3.0 release, although it did complain about my CUPS configuration, or rather lack of thereof. I didn’t really care. :) Results? Here is a screeshot of my Ubuntulite inside a NXClient running on Windows XP:
And yes, it is the same Ubuntulite installation I put on my poor “senior citizen” rickety old spare laptop few days ago. Which just goes to show that the NXServer works great even on a tad flaky, 0.5 beta release of Ubuntulite.
The speed is comparable to what you get when using with RDP on windows, and so is the quality of the image. It’s crisp and refreshes very fast. It also beats normal X-forwarding when you are connecting from windows because the NX client much smaller than installing full blown X under cygwin, and free as opposed to something like XWin32. It also lets you view the whole desktop as if you were sitting at it as opposed to launching all your apps from withing xterms
Caveat emptor: by default the NX protocol uses ssh for routing it’s connections. Thus you have to make sure you have openssh-server package installed on your system. The NoMachie binaries will install just fine without it, but you won’t be able to establish a remote connection unless you install it. The upside of this is that all your communication between you and your remote machine is encrypted “out-of-the-box”. This is usually not the case with VNC, and never the case with RDP.
Definitely give it a whirl especially if you have a headless linux box somewhere and you would like to have an easier way of interacting with it than just plain ssh, without trading off security.
[tags]nx, nx protocol, nomachine, nxclient, nxserver, nxnode, x, xwin32, rdp, remote destkop, remote access[/tags]