NOTE: This software is probably no longer sufficient for its original purpose. However I am keeping the repository around as this might be still useful for proxying connections to some other service or as a reference. I do not intend to maintain it any more. Feel free to fork it if you want to update it.
Flixproxy implements DNS, HTTP and HTTPS/TLS proxies needed for proxying Netflix connections:
-
DNS proxy with spoofing capability.
-
HTTP proxy which uses the "Host:" header to determine the backend.
-
TLS (HTTPS) proxy which uses the Server Name Indication (SNI) extension in the ClientHello TLS packet to determine the backend.
You may be able to use this software to circumvent geoblocking:
-
Setup this proxy in a virtual machine in the desired location. You will to adjust the configuration to suit your needs.
-
Specify the proxy IP address as the DNS server address in your Smart TV, computer, router, DHCP or somewhere else.
This software does not work with devices which do not support Server Name Indication (SNI) extension in their SSL/TLS client implementation.
The Git repository is located at: https://github.com/snabb/flixproxy
Flixproxy requires the following external Go libraries:
- Miek Gieben, github.com/miekg/dns
- Gustavo Niemeyer, gopkg.in/yaml.v2
- Alex Ogier, github.com/ogier/pflag
- Alan Shreve, gopkg.in/inconshreveable/log15.v2
- Ryan Uber, github.com/ryanuber/go-glob
Thanks!
Copyright © 2015 Janne Snabb
Flixproxy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Flixproxy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Flixproxy. If not, see http://www.gnu.org/licenses/.