Bill Shupp Software engineer, photographer, musician, space geek

31Dec/101

Using a dnscache proxy to get faster AppleTV movie downloads and still use OpenDNS

Since buying the new AppleTV a few months ago, I've been disappointed in how long you have to wait for your movie download to be ready for viewing. I get about 10Mbps download speeds through Comcast, and use OpenDNS, so shouldn't it be faster than 15-20 hours? Changing from HD to Standard definition has helped a bit, but you still have to come back later to watch your movie.

Today I came across this story on Slashdot that identifies the problem: Akamai, the CDN that Apple uses to distribute its content, does geolocation on the DNS request to determine the IP of the server you should download your movie from.  By using a 3rd party like OpenDNS or Google for your DNS service, you'll get the IP of the server closest to that DNS server, not the closest one to you.  Makes sense, this is how many CDNs work.

Since I have a home linux server doing NAT, DHCP, and some file serving, I figured I would just just proxy my DNS through dnscache to solve this problem.  The idea is to send only any Akamai related DNS requests through my ISP's servers, and send everything else to go through OpenDNS.  And it works!  I'm watching Inception, in HD, minutes after downloading it.  Here's what I did to get it working.

Filed under: AppleTV, DNS Continue reading