Unblock and watch any Netflix title from anywhere..
Always visit the official netflix-proxy
page on GitHub for the most up-to-date version of this article.
TL;DR
find a Debian or Ubuntu box with root on a clean public IP and run:
apt-get update\
&& apt-get -y install vim dnsutils curl sudo\
&& curl -sSL https://get.docker.com/ | sh\
&& mkdir -p ~/netflix-proxy\
&& cd ~/netflix-proxy\
&& curl -L https://github.com/ab77/netflix-proxy/archive/latest.tar.gz\
| tar xz --strip-components=1\
&& ./build.sh
See the Wiki page(s) for some common troubleshooting ideas.
... or subscribe to Unzoner VPN service to un-block:
about
netflix-proxy
is a smart DNS proxy to stream Netflix
, Hulu
[n2], HBO Now
and others out of region. It is deployed using Docker containers and uses dnsmasq
and sniproxy
[n1] to provide SmartDNS services. It can also be used to bypass[n17] The Great Firewall and works for some blocked sites, such as PornHub. And if you happen to live in Germany and want to watch YouTube like the rest of the world does, just add googlevideo.com
to dnsmasq.conf
file and run docker restart dnsmasq
. Subscribe to the mailing list and be notified of new features, updates, etc.
supported services
The following are supported out of the box, however adding additional services is trivial and is done by updating dnsmasq.conf
file and running docker restart dnsmasq
:
- Netflix
- Hulu[n2]
- HBO Now
- Amazon Instant Video
- Crackle
- Pandora
- Vudu
- blinkbox
- BBC iPlayer[n5]
- NBC Sports and potentially many more
license
This project is free, covered by the MIT License. It is provided without any warranty and can be used for any purpose, including private and commercial. However, if you are planning to use it for commercial purposes (i.e make money off it), please do not expect free support, as it would be unfair. A commercial support model can always be negotiated, if required. Please contact me if this is something that interests you.
instructions
The following paragraphs show how to get this solution up and running with a few different Cloud providers I've tried so far. If you prefer a video tutorial, here is one prapared by one of the users. Note, OpenVZ won't work[n15], make sure to get a proper virtual machine using KVM or Xen.
(Netflix is blocked[n16]) The following is based on a standard Ubuntu Docker image provided by DigitalOcean
, but should in theory work on any Linux distribution with Docker pre-installed.
-
Head over to Digital Ocean to get $10 USD credit
-
Create a Droplet in a geographic location of interest using the latest Docker image (find in under
One-click Apps
tab). -
SSH to your server and run:
mkdir -p ~/netflix-proxy\ && cd ~/netflix-proxy\ && curl -L https://github.com/ab77/netflix-proxy/archive/latest.tar.gz\ | tar xz --strip-components=1\ && ./build.sh
-
Make sure to record the URL and credentials for the
netflix-proxy
admin site. -
Set your DNS server to the IP given at the end of the script, then go to this site to make sure the same IP is displayed.
-
Finally, enjoy
Netflix
and others out of region. -
Enjoy or raise a new issue if something doesn't work quite right (also
#netflix-proxy
on freenode).
Other Cloud Providers
Always visit the official
netflix-proxy
page on GitHub for additional examples.
(Netflix is blocked[n16]) The following is based on a Debian image provided by Vultr
, but should in theory work on any Debian distribution.
- For a limited time, head over to Vultr to create and account and get $20 USD credit.
- Create a compute instance in a geographic location of interest using Debian or Ubuntu image.
- SSH to your server and run:
apt-get update\
&& apt-get -y install vim dnsutils curl sudo\
&& curl -sSL https://get.docker.com/ | sh\
&& mkdir -p ~/netflix-proxy\
&& cd ~/netflix-proxy\
&& curl -L https://github.com/ab77/netflix-proxy/archive/latest.tar.gz\
| tar xz --strip-components=1\
&& ./build.sh
- Make sure to record the credentials for the
netflix-proxy
admin site. - Set your DNS server to the IP given at the end of the script, then go to this site to make sure the same IP is displayed.
- Finally, enjoy
Netflix
and others out of region. - Enjoy or raise a new issue if something doesn't work quite right (also
#netflix-proxy
on freenode).
Contributing
If you have any idea, feel free to fork it and submit your changes back to me.
Donate
If you find this useful, please feel free to make a small donation with PayPal or Bitcoin.
|
|
Footnotes
[n1] https://github.com/dlundquist/sniproxy by Dustin Lundquist dustin@null-ptr.net
[n2] Hulu
is heavily geo-restricted from most non-residential IP ranges and doesn't support IPv6.
[n3] You can now specify your home/office/etc. IP manually using -c <ip>
option to build.sh
.
[n4] See, serverfault post.
[n5] See, this issue.
[n6] If you have a working IPv6 stack, then your device may be preferring it over IPv4, see this issue.
[n7] See, https://en.wikipedia.org/wiki/Server_Name_Indication.
[n8] See, https://www.reddit.com/r/VPN/comments/48v03v/netflix_begins_geo_checks_on_cdn/.
[n9] See, Using NDP proxying. Both the caching resolver and Docker dual-stack support are disabled by default due to differences in IPv6 configurations provided by various hosting providers (i.e. RamNode).
[n10] See, http://www.webhostingtalk.com/showthread.php?t=1262537&p=9157381#post9157381.
[n11] See, https://www.facebook.com/GetflixAU/posts/650132888457824, Netflix Geoblocking - Part 2 and read How Netflix is blocking VPNs and Wiki.