In Part I of this two-part tutorial we discovered options on remoting between Linux and Windows machines. Plus we setup the VNC solution on each platform. Now we'll continue by configuring our router for connections over the Internet. Additionally, we'll see how to encrypt the connections and how to remote into the native display. Let's get started!
Telling your router to forward
Before you can remotely connect to your computer from another location over the Internet you must properly configure your router. The router acts as an distributor for your network traffic. If you don't tell your router where to forward the remote desktop traffic, it won't do anything and your remote connections won't work. Thus you must create a port forward or virtual server entry for the appropriate ports to the IP address of the desired computer. Then when incoming traffic on those ports comes from the Internet, your router will forward it onto the computer and the remote desktop server will response.
Depending upon the protocol, use one of the following ports (or port ranges):
You want to bring up the web-based configuration page for your router, by typing it's IP address into a web browser. Then go to the Virtual Server or Port Forwarding page. You'll probably have to name the entry, use a combo box to select the desired computer or manually enter the computer's IP address, type in the public and private (both are the same) port or port range, and click Save.
You need to make sure the computer keeps the same IP address on the network. If available, use the DHCP reservation feature to force the current IP address to the particular computer. Otherwise you'll have to set your computer's network adapter with a static IP address.
If you have multiple computers you want to remotely connect to over the Internet using VNC, you'll need to a create a separate entry for each computer. Make sure each computer is on a different port, which is represented by the tunnel or display number shown when you run the vncserver command in Linux, for example. Also make sure each entry forwards to different IP addresses.