Coder Social home page Coder Social logo

netproxy's Introduction

netproxy

netproxy is a Netflix/Hulu/Pandora/etc proxy in a box. Simply build the Docker image on a US server, set your computer's DNS IP to it, and enjoy your favorite US-only sites.

netproxy uses the excellent tunlr-style-dns-unblocking script to do the heavy lifting, calling it behind the scenes to set up a Docker container:

https://github.com/trick77/tunlr-style-dns-unblocking/

Running

Running netproxy is easy. If you have Docker installed, just clone the repository on your server, run the preprocess.py script:

python preprocess.py

What this will do is download TSDU's config.json file, change a few entries and write it out, for the Dockerfile to use. It will also autodetect your server's IP and write it in the config file, so make sure you double-check that and change it if it's wrong, before building the image with:

docker build -t skorokithakis/netproxy .

Once building is done, run:

docker run -p 53:53/udp -p 80:80 -p 443:443 -d skorokithakis/netproxy

and that's pretty much it! You are now ready to connect to it. Set your computer's primary DNS server to your server's IP, and you can watch all the Netflix you want.

Caveats

There are two problems with this setup:

  1. Running a DNS server exposed to the entire internet is a very bad idea.
  2. Setting your primary DNS to a server in the US will slow your internet down significantly.

To avoid these problems, you can change your hosts file to point everything to your netproxy IP, and you can omit forwarding port 53. That means you should run docker like so:

docker run -p 80:80 -p 443:443 -d skorokithakis/netproxy

which should be much safer and faster. The hosts file entries will be generated when you run preprocess.py in the directory of the script, so just append them to your normal hosts file on your local machine (the one you want to watch on) like so:

sudo cat hosts >> /etc/hosts

And everything should now go through the proxy.

netproxy's People

Contributors

skorokithakis avatar thorrr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

netproxy's Issues

heroku

please provide a demo on heroku

Netflix iPad app

Looks like netflix iPad app still detects location. Any ideas? Maybe you have a way to sniff iOS traffic?

DockerFlix

This is a question and not an issue. Can this be run along DockerFlix on the same VPS? Will I experience port conflicts? Thanx...

Commands not working

I've followed the instructions, and the commands aren't working for me. I've managed to get to the last step by changing a few of them, but this one particular isn't working:

docker run -p 53:53/udp -p 80:80 -p 443:443 -d skorokithakis/netproxy

I can VPN to the box, and see US Netflix, but get a proxy error when I try to watch

Any way to manually add support for a site?

I'd like to add support for www.slacker.com. I understand that this is based on haproxy but I guess that there isn't a general match to resolve the SNI hostname or the host header and there are specific rules for the hostnames provided in the hosts file, is this correct?

If I use a non-supported hostname, I get this:

$ curl -v -k -D - -so /dev/null -H "Host: www.slacker.com" https://x.x.x.x/

  • Hostname was NOT found in DNS cache
  • Trying x.x.x.x...
  • Connected to x.x.x.x (x.x.x.x) port 443 (#0)
  • Server aborted the SSL handshake
  • Closing connection 0

$ curl -D - -so /dev/null -H "Host: www.slacker.com" http://x.x.x.x/
HTTP/1.0 503 Service Unavailable
Cache-Control: no-cache
Connection: close
Content-Type: text/html

I can edit the haproxy config to account for this hostname if necessary but since this is dockerized and due to my limited experience with this I ask: can I edit configs inside of the docker or does that need a new release of the container?

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.