Better than Virtual PC

I frequently telecommute (or would ethercommute be more appropriate? WOIP - work over IP) and have no windows machines on my person or at my abode. However, much of my work work involves (nay, requires) the use of Windows boxxen.

While VNC as a remote interface to a computer desktop is very nice and all (yay Bell Labs), it is not fast enough for most work. It also really bogs the server machine down (which is especially important when doing remote compiles and running intensive processes).

Instead, I have been incredibly impressed with Microsoft's Remote Desktop Connection is a desktop viewing service that is built into Windows XP with clients available for all versions of Windows (post '95) as well as a client for Mac OS X.

What RDC lets me do is sit on my G5 at home, connect to my internal work network and view the Windows desktop of any of my work machines in a window on my G5 within Mac OS X. What is really suprising is the speed of RDC. It is only slightly more sluggish than working directly at the keyboard of the remote Windows machine.

Due to security, our only open connection at work is via SSH. Therefore, I have to 'tunnel' my RDC connection through SSH, which doesn't slow the connection down much at all (and that's without using compression on the SSH connection - need to try that out)

To remotely connect up an RDC session via ssh, perform the following from your client machine (assuming you have SSH installed, which most decent OS's do - Windows of course does not by default, get yourself WinSSH)

ssh -L 3389:remotemachinename:3389 -p 12345 username@remoteserver

This command does the following:

  1. Connect to the remote server, remoteserver with the username username
  2. Connects to the SSH service on the remote server at port 12345 (you don't have your ssh running on port 22 do you? tsk-tsk)
  3. Forwards port 3389 (which is what RDC uses) to the targeted remote machine on the work internal network. 'Forwarding' means that any data that heads to port 3389 from your machine will be transported - tunneled - to that remote machine instead

Then you need to start Remote Desktop Connection and choose localhost as the remote machine to connect to. Soon you will be greeted by the necessary, if blueish, Windows XP login screen.


About this article

written on
posted in TechnologyAppleMobile Back to Top

About the Author

Andrew Turner is an advocate of open standards and open data. He is actively involved in many organizations developing and supporting open standards, including OpenStreetMap, Open Geospatial Consortium, Open Web Foundation, OSGeo, and the World Wide Web Consortium. He co-founded CrisisCommons, a community of volunteers that, in coordination with government agencies and disaster response groups, build technology tools to help people in need during and after a crisis such as an earthquake, tsunami, tornado, hurricane, flood, or wildfire.