Mac Desktop Sharing (VNC) over Internet

By | June 27, 2010

A while ago I started using VNC (Desktop Sharing) both at work and at the home studio.  In my opinion, this sort of technology is a real game changer.  From my laptop (or any other computer on my LAN) I can access any other computer – just as though I was sitting in front of it.  Here at the home studio  I’ve wired balanced tie-lines from the control room to most of the rest of the house.  *Anywhere* I might need to record I can open my laptop and control Pro Tools or anything else – WAY better than I could with my Tranzport or any other wireless solution I’ve seen.

mac running VNC

G4 Powerbook running JollysFast VNC. Desktop sharing with Pro Tools running on another mac in the control room. Out of frame is a 20 channel snake… I was remotely assigning track inputs.

Even cooler than that, with a little intervention you can do this from anywhere you can get online!  Recently I used a remote desktop connection to make a quick edit on a Full HD video – from across town.  It could have just as easily been around the world.

A while ago helped a friend set up Desktop Sharing over the Internet.  I thought I’d share my instructions here.  He was using a Mac, but (save one great big one) the steps are nearly the same for Windows. I should add: this friend had already set up VNC to run on their local network. I’ll likely write another article on that initial setup. These instructions show how to configure your router to access your desktop over the internet.

Configuring your Router for VNC over the Internet:

You’ll need to log in to your router for a good part of this, so make sure you have the router’s administrator password.  If you don’t have it, a quick Google search will probably find the default login for your specific model of router.

There are 5 steps:

1. Log in to Router, check DHCP range
2. Assign your MacBook a static IP Address
3. Set the Router to forward VNC requests (port 5900) to your MacBook’s IP Address

possibly optional for short-term:
4. Set up free account at DynDNS
5. Install DynDNS client software

1.

Most LANs have the router at 192.168.1.1 or 192.168.0.1. Try entering either of those numbers in the address bar of your web browser – one of them should prompt you for a login.  (If it’s the one ending in .1.1, then your entire local network will be based on 192.168.1.machinenumber. Otherwise it’s 192.168.0.machinenumber.)  Login with as “administrator” or “admin.”  If you haven’t set up a login before, there may be no password, or it might be “password.” Very secure. 🙂

You’ll have to assign your MacBook a static IP – but before you do that, you’ll need to find out what range of addresses the router has reserved for DHCP (a sort of automatic address assignment.)  Look for something like “LAN Setup” or “DHCP Server” the router’s web-based control panel.  Check the starting and ending address. Don’t assign your Mac an address within that range.

2.

In your MacBook System Preferences open Network.  On the left pane select the connection you use for your LAN (Ethernet or Airport.) For “Configure IPv4” select “Manually.”  For the rest:

IP Address: 192.168.1.10 (I’m using 10 as an example, it can be just about anything between 2 and 255, as long as it isn’t within the DHCP range.)

Subnet: 255.255.255.0
Router: 192.168.1.1
DNS Server: 192.168.1.1
Search Domains: (blank)

**If your router is at 192.168.0.1, then all of those would start with 192.168.0.

3.

Next you’ll need tell the router to send all VNC requests (default is port 5900) to the IP Address you just assigned to your MacBook.  Go back to the Router’s control panel and look for something like “Port Forwarding” or “Static Routes.”  Here you’ll select a “Server” (your MacBook) to route all traffic for port 5900 to and from.  I wish I could be more specific here, but just about every router’s control panel is different.  On my router there’s a button to “Add a Custom Service.”  I named the Service “VNC,” set the service type to “TCP,” and set the starting and ending ports to “5900.”  If your router can set the service type to “Both (TCP&UDP)” that should work too.

Still following?  With these things set up you should be able to connect from the outside world – for a while at least.  Somewhere in your Router’s control panel (usually “Router Status” or “WAN Status”) you should be able to find your router’s WAN (Internet) IP Address.  It *won’t* be a number that starts with 192.  If you put that address into your iPhone VNC app from outside your LAN, the connection should go to your router and your router will send it to the MacBook… until your Internet IP changes.

4.

The problem is that your WAN IP Address could change at any time, at the discretion of the servers at Comcast or whoever your ISP is.  To get around that (and to give your LAN an easier address to remember) you’ll want to set up a free account at DynDNS.  Their website is kinda hard to navigate, so here’s a link.

http://www.dyndns.com/services/dns/dyndns/

They’ll give you a list of free top-level domains to choose from, and you choose a sub-domain name.  Like marshal.kicks-ass.net  Once you set that up you’ll need to install the DynDNS client on your Mac:

5.

http://www.dyndns.com/support/clients/mac.html

What this client does is ping the DynDNS servers with your LAN’s current IP every so often.  That way servers at DynDNS can always route traffic for the domain name you’ve chosen to your LAN’s current IP.  You may want to make this client app a Login Item under System Preferences / Accounts so that it’s always running.

Once you do all this I highly recommend setting a strong password for Screen Sharing.  You’ve opened up your desktop to the world.