Tuesday, January 01, 2013

Dual Internet gateways and Apple TimeCapsule

I had a splendid New Years at a friends house but as ever it became a tech support visit! He has BT provided aDSL which is a long way from the exchange and consequently very poor throughput (typ. 250kBits/sec down and maybe 100 up). He'd invested in a satellite Internet service which although fast (typ. 20mBits/sec down) has terrible latency; typ. 2000mS which makes loading webpages very slow BUT means you can stream media (even the HD samples files from GoPro).
As an aside the satellite modem is just that; it has no NAT functionality or firewall; it exposes a proper, routable IP address (in the 37.x.y.z range).
So - his question to me was could he combine the two; use the aDSL for most things but force streamed media to come via the satellite modem? He has an AppleTV under his tele and so I thought it should be easily do'able. I think I've figured out a solution using only what he has, but I came across a few interesting things on the way. There "..oh, can you have a quick look" always turn into an afternoon's fun!
So, recap of the parts on the network;
  • Current model BT aDSL2 HomeHub
  • Current model Apple TimeCapsule (the 3TByte one)
  • Netgear GigE switch
  • Sitecom DVB-S satellite modem
  • iMac, various wireless devices, AppleTV, couple of PCs, network printer

I was worried about exposing the satelite's IP address to the network; that has to go behind a firewall or NAT router and the TimeCapsule has NAT built in - great; I imagined I'd just have a network with two internet gateways and for the AppleTV I'd point it at the TimeCapsule and the iMac (which is used to download films, TV etc) have two network configurations which you swap over manually; it's very easy in OS-X.

My first problem was when you turn on NAT in TimeCapsule it assumes it is the only DHCP server on your network and it tends to answer DHCP requests faster than the BT aDSL router; bit of a problem as the BT was meant to be the default gateway. The answer is brutally simple, actually. Just leave DHCP enabled on the Airport, but restrict the available IP range to just a single IP. Then use a DHCP Reservation to bind that IP to a MAC address that doesn't actually exist. The Airport will silently refuse to respond to DHCP requests since it thinks that it is out of addresses that can be assigned.
 The next problem is that the BT router's ARP table is tied to it's DHCP table; if the router gets requests from an IP address that it didn't serve then it refuses to route them to the outside world. You can switch the iMac's networking from DHCP assigned to manual and enter the same network details the router provided and no traffic will flow. 
I guess both of these issues are because the gadgets are aimed at non-technical people who (if they ever get into the remote interface) don't want to be worried by DHCP, NAT etc.
So, the final solution was the allow the TimeCapsule to share the satellite modem's connection via wireless and the BT to share the aDSL via wireless and wired. The iMac and the AppleTV choose which connection they need by the wireless network they attach to.

1 comment:

Unknown said...

Phil! Your excellent New Years tech support service has forgone the need for my birthday tech support visit! Excellent!
Interesting stuff about the TC not answering route requests from outside its DHCP clients! I'd never have assumed that. After my Antiguan technical support consulation, it seemed like dual gateways was the logical option...
Hope you guys are well.