If you're using Windows XP Professional and you do work on both your home and your
office computers, Remote Desktop can be a lifesaver - it's not unknown for me to be
working on documentation at home and forget to connect to work to save the file on
my office computer, for example. Remote Desktop to the rescue - since I leave
my primary home machine on 24x7 and it's connected via DSL, I just remote into the
home box and grab the necessary files. No fuss, no muss, and I have it here
in time to hand off to the team for review.
However, what if, like my household, you have multiple machines, all of which need
to be directly accessible via Remote Desktop from an external location, and you only
have one IP address that points to your router? Since Remote Desktop by default looks
at port 3389, you can't exactly set up port forwarding to point that single port to
all of your machines.
There is an answer, or rather, two answers. Both of them are detailed in Microsoft
Knowledge Base articles.
The first one is this:
the Remote Desktop Client to Connect to a Specific Port - this tells you
how to get your client machine (in this case, the one you're on at work) to talk to
a different Remote Desktop port than the default. In some cases, this plus a
little configuration on your home router may be all you need. If your
router's port forwarding option allows you to configure a public port plus a private
port for each computer, all you need to do is set a different public port for each
of the computers you want to access, and set the private port for each to 3389.
But what if your router doesn't expose a private port as well as a public port? No
problem. That's where this article comes into play: How
to Change the Listening Port for Remote Desktop (caution! This involves registry
editing, and is only recommended for experienced users!). What you'll be doing
is changing each of your home machines to listen to a different port for Remote Desktop
connection requests. Then configure your home router with the same port numbers
forwarded to the appropriate machine (So if Machine X is listening for Remote Desktop
connections on port 2222, port 2222 is forwarded to Machine X on the router).