The VNC protocol gives you remote control of another computer's screen. You can see and interact with the computer as if you were sitting right in front of it.
In this blog post, I'm going to describe how to set up your computer so that you can connect to it anywhere in the world through the Internet. If your home computer is connected to a router (which it probably is), then the process is a little tricky, which is why I thought it would be helpful to write this blog post.
1. Install a VNC Server
First, you must install a VNC Server on the computer you want to control.
Mac OS X already comes with the necessary software, so you don't have to install anything. To enable Mac's VNC Server, do the following:
a. In System Preferences, click on "Sharing".
b. Check the "Screen Sharing" checkbox to enable it.
c. Click the "Computer Settings..." button.
d. Check the box that says "VNC viewers may control screen with password". Type in a password, then click OK.
Remember that your computer will be visible to the world, so make sure the password is secure!
If you are running Windows, can you use
TightVNC Server as a VNC Server.
2. Configure your router
Your home computer is probably connected to a router, either through a wired, ethernet connection or a wireless connection. A router connects all of your computers together to form a home network and acts as the gate keeper to the Internet. But if your computer is connected to a router, then it doesn't have its own IP address, which is what you need in order for VNC to connect to your computer.
To get around this, you must tell your router to forward VNC traffic to the computer you want to control. VNC communicates over port
5900, so you must tell your router to forward all data it receives from this port to the
5900 port on your computer. Here is how I did this with my Belkin router:
First, open the router's configuration web page by typing its private IP address in a web browser. My router's private IP is
192.168.2.1. (Private IP addresses are only visible within your home network--they are not visible from the Internet.)
Then, click on the "Virtual Servers" menu option under the "Firewall" category. It will ask you for a password. If you haven't configured the router with a password, then just click "Submit". This page lists all the data that the router will forward to other computers on the network. Pick an empty row and enter
5900 for the Inbound and Private port fields. Then, enter the private IP address of the computer you want to control. Finally, click on the "Enable" checkbox, then click "Apply Changes". As you can see in the screenshot, you can do this for other services too like SSH, FTP, or HTTP.
3. Test it out
You'll need a VNC Viewer in order to connect to the computer.
Chicken of the VNC is a good VNC Viewer for Mac. For Windows, you can use
TightVNC Viewer.
You'll also need the IP address of your router. An easy way to get the IP address of your router is to visit
whatismyip.com from one of the computers that are connected to the router.
If the VNC Viewer asks for a display number, enter "0". Display "0" maps to port
5900, display "1" maps to port
5901, display "2" maps to port
5902, etc.
4. Get a free domain name (optional)
DynDNS is a free service that maps your IP address to a domain name like
foobar.dyndns.com. Check to see if your router supports this service. My router will automatically update my DynDNS account whenever the router's IP address changes (which can happen often). Using DynDNS means you don't have to memorize your IP address or worry about it changing.