本文最后更新于 281 天前,如有失效请评论区留言。
准备工作
两台VPS(一台中转,一台落地),中转机需要线路好速度快,落地机需要解锁奈飞
我用的中转是绿云的大阪IIJ,落地用的是甲骨文的东京
大家准备好VPS后最好用中转机ping下落地机的延迟
我的毕竟是一个国家的,不算快,但还可以
正式开始
1、落地机设置
参考这位大佬的脚本通过fineshell连接落地机
Dnsmasq SNIproxy One-click Install
脚本说明:
- 原理简述:使用Dnsmasq的DNS将网站解析劫持到SNI proxy反向代理的页面上。
- 用途:让无法观看流媒体的VPS可以观看(前提:VPS中要有一个是能观看流媒体的)。
- 特性:脚本默认解锁
Netflix Hulu HBO
等,如需增删流媒体域名请编辑文件/etc/dnsmasq.d/custom_netflix.conf
和/etc/sniproxy.conf
- 脚本支持系统:CentOS6+, Debian8+, Ubuntu16+
- 如果您的linux发行版删除了 SysV 初始化脚本以支持 systemd 单元文件,请勿使用此脚本,否则会产生不兼容问题。
- 如果脚本最后显示的IP和实际公网IP不相符,请修改一下文件
/etc/sniproxy.conf
中的IP地址 - 如果您的系统镜像为Ubuntu ,由于Ubuntu默认在端口 53 上有 systemd-resolved 监听。如果您想运行自己的 DNS 服务器,则无法运行,因为端口 53 已在使用中。
- 本分支针对aarch64架构服务器进行了优化,其他ARM架构服务器需选择编译安装,而不是快速安装。
脚本用法:
bash dnsmasq_sniproxy.sh [-h] [-i] [-f] [-id] [-is] [-fs] [-u] [-ud] [-us]
-h , --help 显示帮助信息
-i , --install 编译安装 Dnsmasq + SNI Proxy
-f , --fastinstall 快速安装 Dnsmasq + SNI Proxy
-id, --installdnsmasq 仅安装 Dnsmasq
-is, --installsniproxy 仅编译安装 SNI Proxy
-fs, --fastinstallsniproxy 仅快速安装 SNI Proxy
-u , --uninstall 卸载 Dnsmasq + SNI Proxy
-ud, --undnsmasq 卸载 Dnsmasq
-us, --unsniproxy 卸载 SNI Proxy
快速安装(推荐):
wget --no-check-certificate -O dnsmasq_sniproxy.sh https://raw.githubusercontent.com/zhouh047/dnsmasq_sniproxy_install/dnsmasq_sniproxy_aarch64/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -f
如果你的vps是arm结构aarch64内核请选择编译安装:
wget --no-check-certificate -O dnsmasq_sniproxy.sh https://raw.githubusercontent.com/zhouh047/dnsmasq_sniproxy_install/dnsmasq_sniproxy_aarch64/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -i
到这里直接回车
卸载方法:
bash dnsmasq_sniproxy.sh -u
重启
systemctl status sniproxy
至此落地机设置完成
2、中转机设置
通过fineshell连接进入中转机
apt update && apt install dnsmasq -y
然后etc文件夹里,打开dnsmasq.conf,在最后加入以下内容
server=8.8.4.4
server=/fast.com/你的落地机的IP
server=/netflix.ca/你的落地机的IP
server=/netflix.com/你的落地机的IP
server=/netflix.net/你的落地机的IP
server=/netflixinvestor.com/你的落地机的IP
server=/netflixtechblog.com/你的落地机的IP
server=/nflxext.com/你的落地机的IP
server=/nflximg.com/你的落地机的IP
server=/nflximg.net/你的落地机的IP
server=/nflxsearch.net/你的落地机的IP
server=/nflxso.net/你的落地机的IP
server=/nflxvideo.net/你的落地机的IP
重启dnsmasq
systemctl restart dnsmasq.service
删除,然后重建
rm -rf /etc/resolv.conf && echo 'nameserver 127.0.0.1'>/etc/resolv.conf
查看VPS的IPv6信息
输入命令: ip -6 addr show scope global
或者 curl ipv6.ip.sb
禁用VPS的IPv6命令(方法一):
sysctl -w net.ipv6.conf.all.disable_ipv6=1; sysctl -w net.ipv6.conf.default.disable_ipv6=1
以后想要IPv6,启用VPS的IPv6命令:
sysctl -w net.ipv6.conf.all.disable_ipv6=0; sysctl -w net.ipv6.conf.default.disable_ipv6=0
重新载入sysctl配置
sysctl --system # reload sysctl
如果重载, 还无效果, 可能要 reboot
重启下。
禁用VPS的IPv6命令(方法二):
以root权限编辑/etc/sysctl.conf 文件,在文件末尾加入
net.ipv6.conf.all.disable_ipv6 = 1
保存,退出。此命令关闭所有网卡的IPV6。
让命令即时生效,执行
sysctl -p
测试
感谢@Caster Woo老哥对我的技术指导及后续的测试工作
可以愉快的看奈飞啦~~
后续
落地机脚本占用了80和443端口,因奈飞只需要443,所以我们可以把监听的80端口改掉,这样80端口可以用作其他用途(比如ws回流等)
进入落地机,打开etc文件夹里的sniproxy.conf
保存,然后重启服务,或者直接reboot。