If you're using wireguard please refer to v2ray+wireguard to bypass GFW and netflix/spotify/hulu
Two things need to be paid
- vps(such as bandwagonhost)
- If you are using China Telecom, a CN2 network is required, or you may get stuck when streaming video
- For bandwagonhost, you need to login, click Client Area -> Services -> Order New Services to get CN2 server
- vpn vendor to unblock netflix(a openvpn connection that can unblock netflix)
The basic idea is setup a socks5 proxy to forawrd all network traffic from the socks5 to a specific openvpn, in v2ray, forward all the netflix traffic to the socks5 proxy
The openvpn connection is highly unstable or slow due to GFW
You can easily get a fast VPS(CN2) from various provider, but most of them can't combined the fast and stable connection from China && unblock from the netflix
So, I decide to do it myself
-
install v2ray
bash <(curl -s -L https://git.io/v2ray.sh)
-
config openvpn connection inside a docker container
In most case the following command can't set up properly, please read the Notice part to change the configuration if there's something wrong
git clone https://github.com/zpoint/openvpn_socks5_docker.git
cd openvpn_socks5_docker
./build.sh
./start.sh
launch *.ovpn
-
exit the docker container, change your v2ray configure file to forward the netflix traffic to the openvpn connection inside the container, this is part of my configure file located in
/etc/v2ray/config.json
"inbounds": [ { "port": 8888, "protocol": "vmess", "settings": { "clients": [ { // private config } ] }, "streamSettings": { "network": "ws" }, "sniffing": { "enabled": true, "destOverride": [ "http", "tls" ] } } ] "outbounds": [ { "protocol": "socks", "settings": { "servers": [{ "port": 9050, "address": "localhost" }] }, "streamSettings": { "tcpSettings": { "header": { "type": "none" } }, "network": "tcp", "security": "none" }, "tag": "streaming" } ] "routing": { "domainStrategy": "IPOnDemand", "rules": [ { "type": "field", "domain": [ "domain:btstatic.com", "domain:netflix.com", "domain:netflix.net", "domain:nflxext.com", "domain:nflximg.com", "domain:nflximg.net", "domain:nflxsearch.net", "domain:nflxso.net", "domain:nflxvideo.net", "domain:ipaddress.com" ], "outboundTag": "streaming" } ] }
I believe v2ray already supports the use of trojan (https://github.com/v2fly/v2ray-core/tree/master/proxy/trojan), so you can still follow the original guide on this gist, but use trojan instead of vmess protocol on the inbound config block for your server. And on your client v2ray, use trojan on the outbound config. https://www.v2fly.org/en_US/v5/config/proxy/trojan.html