Skip to content

Instantly share code, notes, and snippets.

@tisba
Forked from rkh/a.md
Created June 29, 2012 08:09
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save tisba/3016593 to your computer and use it in GitHub Desktop.
Save tisba/3016593 to your computer and use it in GitHub Desktop.

This allows you to use the following video streaming services outside of the US from your Mac without having to use a proxy or VPN, so no big bandwidth issues:

  • Netflix
  • Hulu / HuluPlus
  • CBS
  • ABC
  • MTV
  • theWB
  • CW TV
  • Crackle
  • NBC
  • FOX
  • TV.com
  • PBS
  • Vevo
  • History
  • Lifetime TV
  • Pandora
  • Last.fm
  • Turntable.fm
  • MOG.com
  • iHeartRadio

And it also adds access to the following Non-US services:

  • BBC iPlayer
  • Channel4 4oD
  • iTV Player
  • Zattoo

It's basically routing all DNS requests for these services to tunlr, but any other requests to a local DNS (tries 192.168.0.1 and 192.168.178.1) or a global one (4.2.2.2 and 4.2.2.3) - adding more should be trivial, just check out the config. That way you won't get hit by tunlr's traffic shaping but don't have to switch your DNS settings all the time.

Tested on Lion in Germany. The dnsmasq.conf should also be usable on a router.

# See /usr/local/Cellar/dnsmasq/2.61/dnsmasq.conf.example for more
address=/dev/127.0.0.1
listen-address=127.0.0.1
server=/mtv.com/mtvnservices.com/fwmrm.net/google-analytics.com/imrworldwide.com/demdex.net/scorecardresearch.com/quantserve.com/doubleclick.net/chartbeat.com/149.154.158.186
server=/fox.com/theplatform.com/akamaihd.net/chartbeat.com/149.154.158.186
server=/tunlr.net/149.154.158.186
server=/pandora.com/149.154.158.186
server=/hulu.com/149.154.158.186
server=/cbs.com/149.154.158.186
server=/netflix.com/149.154.158.186
server=/abc.com/go.com/149.154.158.186
server=/tv.com/149.154.158.186
server=/pbs.com/149.154.158.186
server=/vevo.com/fwmrm.net/149.154.158.186
server=/thewb.com/149.154.158.186
server=/cwtv.com/149.154.158.186
server=/mylifetime.com/scorecardresearch.com/doubleclick.net/rubiconproject.com/cpxinteractive.com/adnxs.com/brightcove.com/cpxadroit.com/atdmt.com/serving-sys.com/149.154.158.186
server=/crackle.com/149.154.158.186
server=/last.fm/149.154.158.186
server=/turntable.fm/149.154.158.186
server=/mog.com/149.154.158.186
server=/iheart.com/149.154.158.186
server=/bbc.co.uk/149.154.158.186
server=/channel4.com/149.154.158.186
server=/itv.com/149.154.158.186
server=/zattoo.com/149.154.158.186
server=/mtv.com/mtvnservices.com/fwmrm.net/google-analytics.com/imrworldwide.com/demdex.net/scorecardresearch.com/quantserve.com/doubleclick.net/chartbeat.com/199.167.30.144
server=/fox.com/theplatform.com/akamaihd.net/chartbeat.com/199.167.30.144
server=/tunlr.net/199.167.30.144
server=/pandora.com/199.167.30.144
server=/hulu.com/199.167.30.144
server=/cbs.com/199.167.30.144
server=/netflix.com/199.167.30.144
server=/abc.com/go.com/199.167.30.144
server=/tv.com/199.167.30.144
server=/pbs.com/199.167.30.144
server=/vevo.com/fwmrm.net/199.167.30.144
server=/thewb.com/199.167.30.144
server=/cwtv.com/199.167.30.144
server=/mylifetime.com/scorecardresearch.com/doubleclick.net/rubiconproject.com/cpxinteractive.com/adnxs.com/brightcove.com/cpxadroit.com/atdmt.com/serving-sys.com/199.167.30.144
server=/crackle.com/199.167.30.144
server=/last.fm/199.167.30.144
server=/turntable.fm/199.167.30.144
server=/mog.com/199.167.30.144
server=/iheart.com/199.167.30.144
server=/bbc.co.uk/199.167.30.144
server=/channel4.com/199.167.30.144
server=/itv.com/199.167.30.144
server=/zattoo.com/199.167.30.144
server=192.168.0.1
server=192.168.178.1
server=4.2.2.2
server=4.2.2.3
#!/bin/bash -ex
brew install dnsmasq
curl -o /usr/local/etc/dnsmasq.conf https://raw.github.com/gist/3016464/dnsmasq.conf
# see `brew info dnsmasq` if you run into issues here
sudo cp /usr/local/Cellar/dnsmasq/2.61/homebrew.mxcl.dnsmasq.plist /Library/LaunchDaemons
sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist
# try if it works, should resolve to 127.0.0.1
nslookup local.dev 127.0.0.1
# set up for Wi-Fi, Ethernet and Display Ethernet (Thunderbolt display)
# if you have a different device, either use Network Settings or check
# `networksetup -listallnetworkservices`
sudo networksetup -setdnsservers "Wi-Fi" 127.0.0.1 || true
sudo networksetup -setdnsservers "Ethernet" 127.0.0.1 || true
sudo networksetup -setdnsservers "Display Ethernet" 127.0.0.1 || true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment