Remote Desktop Connections allow you to control remote host machines via the magic of the Internet and RDP (Remote Desktop Protocol).
For the purposes of this article we will assume you are connecting from your home PC or laptop to a remote office (remote host). This means that we will need access to the router at the office.
Hypothetical Remote Host:
FQDN - mymail.somecollege.edu
default port for RDP 3389
no VPN (Virtual Private Network)
connect to a host on the WAN (WAN – Wide Area Network)
Typically we would ping the FQDN to make sure the IP is valid. Since this is a non-existent machine that won’t work so we’ll pretend it translates to a usable IP.
If we wanted to control our PC from work then our PC at home would be the remote host and we would need to access the router at home.
If your PC or laptop is connected to the host's LAN then you could possibly access host via a private IP on your (e.g., 192.168.x.x or 10.x.x.x,). Private IPs are not routable so only work on the LAN.
Setup PC or Laptop
When we setup Remote Desktop Connections we need the IP address or fully qualified domain name (FQDN) of the host. You can usually find your public ip by visiting a site like WhatsMyIp.
You can get to the Remote Desktop Connection (RDC) program by clicking Start and typing "Remote Desktop Connection". You won't have to type more than a few letters before you will see the program.
Once you have the RDC window open you can enter the FQDN or the public ip of the PC in the Computer field.
I prefer to save my connections for future use by clicking Show Options. This will allow you to save the User Name and credentials. If this is a shared machine then you should click "Always ask for credentials".
Setup Remote Host Machine
The host has to be prepared for this remote connection so we have to enable remote control. You get to Remote Settings by right clicking My Computer and selecting Properties. Allowing Remote Control of your PC opens the RDP port in the Windows Firewall for you.
We will give our host machine a static ip of 192.168.1.100 so it can be found by our router when we connect via RDP. Typically machines use DHCP to get the private IP gateway, DNS and other network information. If you run ipconfig from a CMD prompt you will see the information you need to setup a static IP.
If you have a software firewall like Zone Alarm you will have to allow the incoming IP or block of IPs. This can be a problem if you connect from many places or your IP changes often. If that’s the case a remote control application like TeamViewer will be much easier to setup.
Setup Router on Host's LAN
OK the host is setup and you have a RDC connection. The final piece of the puzzle is to add the router NAT (Network Address Translation). The router is the gateway to the Internet at large. The public IP of our entity mymail.somecollege.edu is probably the same IP as the gateway.
When the RDC connection connects to the public IP it’s up to the router or a VPN to find the host machine. In our case, it’s the router that will determine where this host is. The location of the settings vary but it usually something like “Port Forwarding”. The router will also determine if only your home IP is allowed to make this connection or if it's open to the the public. Strong passwords will help secure the connection if the host is open to the public.
For RDP, the protocol used by Remote Desktop Connections, we need to forward traffic to the private IP of our host using port 3389. If we specified a port in our connection then this port would have to be forwarded to the private IP of our host and change the port to 3389.
RDC using default port 3389
mymail.somecollege.edu --> forwards traffic to port 3389 to port 3389 on the host machine
RDC using port 3390
mymail.somecollege.edu:3390 --> forwards traffic to port 3390 to port 3389 on the host machine
It’s also possible to hack the registry port for the specific machine for RDP but most routers handle this for you.