2004-06-30

VNC is OK by me

What is VNC? VNC stands for Virtual Network Computing. It was developed by researchers at University of Cambridge in the UK for AT&T, and while your mind might runneth over with ideas about what virtual networks are or do, the end result is quite pedestrian. Simply put, VNC lets you manipulate a remote machine's desktop from another machine over TCP/IP.

I would have killed to have this in 1998.

VNC is your basic client-server model. You run the server on host1, you run the client on any Windows-based PC, let's call it host2, and voilà, you're looking at host1's desktop from a window open on host2.

VNC is a self-sufficient protocol that comes with its own implementation. All you have to do is make your involved firewalls happy with TCP port 5900. And if you run VNC through an OpenSSH tunnel? Even better.

I fell in love with VNC back when it was still a research product at AT&T. It's since then moved on to be its own little business. You can download RealVNC from their website. But wait!

There's also another implementation. I use TightVNC, a completely free software package that does pretty much the exact same thing. Why would I waste this much space blathering about VNC if I didn't have something interesting to say about it? TightVNC has been at version 1.2.9 for over a year now. They're very slowly working on the next version, and last night I grew the courage to test out their latest development snapshot.

It lets you transfer files. That's an extraordinarily big deal for me, because it obsoletes my previous attempts at pushing files from workstation to home PC (or vice versa):

  • Docking files at an intermediate OpenBSD server with scp or rsync. (downside: have to remove files by hand when done with them)
  • Running an Apache HTTP server on my home machine and connecting to it with an SSH tunnel to port 8080. (downside: transfers only work in one direction)
  • Carrying a handy dandy USB memory drive and physically transporting it to and from home and work (downside: memory drives are usually made with a plastic housing, which breaks quite easily)

VNC can be tunneled, and thus encrypted. Files transferred by it can be encrypted as well then. So transferring files with VNC is a secure means of pushing files from client to server or from server to client. Brilliant. I should not have waited as long as I did to try this. So now, the new hotness is TightVNC 1.3dev5. Get it. Got it? Good.

No comments: