2007-11-13»
reachability on the edgeยปI realise that I left everybody on tenterhooks in that last post about why NAT and the unreliability of most consumer-quality endlinks. I’m sorry to have kept you waiting for my poorly-thought-out flailings so long. In my defense, my dreams have become far too weird to document here. Suffice to say they have included a dream that was half about falling in love in your mid-twenties, and half about being a prominent insect collector, and one stormer of a revery in which I dreamt that I was writing one of these blog entries about dreams. How self-referential can you get? As self-referential as this paragraph, is the answer.
Anyway, one of the problems with the edge is that these days it is largely behind NATs and unreachable for incoming connections. Usually we get around this by using ICE, STUN, and other horrendous hacks that you don’t want to stare at too long. But is this a problem these days? I think not for a couple of reasons.
- Broadband routers as servers. You know, it boggles me why the home router folk don’t take more advantage of their prime position to seize the home media center high ground. While everyone else like Microsoft and Apple fusses about trying to plug into the existing domestic media assets (aging TVs, HDTVs that will plug into anything anyway, disposable hi-fis, DRM-ridden content devices), router manufacturers should exploit their powerful monopoly: access to an world-addressable IP address. Really the only problem routers have in being kings of the edge is home geography: they’re usually hidden away somewhere close to the DSL/cable spigot, not in your slinky TV center. Someone who starts selling a two-for-one pack of a) a broadband router with NAS and b) a plug-sized wireless extender with video and audio inputs, and then has the gumption to include BitTorrent, PVR and streaming software would probably be able to seize some high value market before Apple had managed to reverse out of the Apple TV cul-de-sac they’ve maneuvred into.
Oh dear. I do apologise. I appear to have become yet another convergence pundit. Let me come down off the crack a moment, and make the point I was originally aiming for. If you want a edge machine with lots of spare cycles, privacy, and a world-reachable IP address, your standard Linux-powered broadband/wireless router is right in the sweet spot. Plus, such routers are now tipping into that space where they are a bit too powerful for their own good, and are wandering off to find new uses: DD-WRT, OpenWRT.
I suppose come the IPv4 Apocalypse, even ISPs will be handing out private IP space addresses behind their own monster NATs (some already do), so even routers will become inaccessible for incoming connections. Which brings me to:
- IPv6 (DO NOT LAUGH). While IPv6 is still waiting the moment for it to successfully take over from IPv4 (confidentally estimated to be the day after the United States goes metric, and coincidental with monkeys flying out of the IETF Butt-NG Working Group), it is becoming weirdly easy to build stable low-bandwidth, high reachability, IPv6 nodes on the edge. Most every Windows box from XP on can find itself a tunneled Teredo IPv6 address with one command. Miredo will get you the same with scary ease on Mac or Linux (seriously – try it!). Putting 6to4 on the aforementioned broadband routers will suddenly lurch everybody with a modern OS on your local network into the world of IPv6. Give an IPv6 address to a modern OS, and it just works. It’s just the IPv6 addresses that are (ironically) so impossible to obtain.
Miredo tunnels through a third-party like Windows or poor old remlab.net, so it’s no good for insecure or high-volume data. But if you’re just trying to reach the edge using standard protocols and none of that tedious mucking around with NAT traversal, it works well. Remember, we’re not talking about file-sharing here, we’re talking about low-volume access to Web and Web-like services.
Let me intrude here with a single, shocking fact: as Craig notes, a lot (did you say c. 50%, Craig?) of BitTorrent clients are advertising themselves as having IPv6 addresses, even if they don’t use them. It would make total sense if filesharing was what finally bootstrapped the IPv6 world.
Yeah, but what about availability? Aren’t consumer last-mile connections prone to zzzzzzzt NO CARRIER?
Tomorrow! I promise!
(If you enjoy these sorts of discussions, but wish it was a little less one-sided, let me here point you to Zooko’s vintage-yet-riproaring P2P-hackers list, where you can learn from people who actually understand these things.