脚本说明:
- 原理简述:使用Dnsmasq的DNS将网站解析劫持到SNI proxy反向代理的页面上。
- 用途:让不能看流媒体的VPS看上流媒体(前提:VPS中要有一个是能看流媒体的)。
- 特性:脚本默认解锁Netflix Hulu HBO等,如需增删流媒体域名请编辑文件/etc/dnsmasq.d/custom_netflix.conf和/etc/sniproxy.conf
-
脚本支持系统:CentOS6+, Debian8+, Ubuntu16+
- CentOS6/7, Debian8/9/10, Ubuntu16/18 已测试成功
- 理论上不限虚拟化类型,如有问题请反馈
- 如果脚本最后显示的IP和实际公网IP不相符,请修改一下文件/etc/sniproxy.conf中的IP地址
有问题可以博客留言或者加入TG群组:萌精灵Telegram群组
安装方法:
wget --no-check-certificate -O dnsmasq_sniproxy.sh https://raw.githubusercontent.com/myxuchangbin/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -f
注:sniproxys 要使用80端口,请忽占用此端口。
卸载方法:
wget --no-check-certificate -O dnsmasq_sniproxy.sh https://raw.githubusercontent.com/myxuchangbin/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -u
使用方法:
将代理VPS的DNS地址修改为这个主机的IP就可以了,如果不能用,记得只保留一个DNS地址试一下。
vi /etc/resolv.conf
防止滥用,建议不要随意公布IP地址,或使用防火墙做好限制工作。
调试排错:
- 确认sniproxy有效运行
重启sni命令:systemctl restart sniproxy
如果sni不在运行,可检查配置/etc/sniproxy.conf,避免ss、nginx或者其他程序监听80,443,可将其配置文件的80更改为801等。 443端口必须给sni监听放行,查看:netstat -tlunp|grep 443
- 确认防火墙放行443,53
调试可直接关闭防火墙 systemctl stop firewalld.service
阿里云/谷歌云/AWS等外部防火墙放行 可通过其他服务器 telnet vpsip 53 以及 telnet vpsip 443 进行测试
- 解析域名
尝试用其他服务器配置完毕dns后,解析域名:nslookup netflix.com 判断IP是否是NETFLIX代理机器IP 如果不存在nslookup命令,CENTOS安装:yum install -y bind-utils,DEBIAN安装:apt-get -y install dnsutils
Github地址:https://github.com/myxuchangbin/dnsmasq_sniproxy_install
解锁机(能看netflix的机)排错方法:
运行下面两条命令确保服务正常运行。
netstat -tlunp|grep 443
netstat -tlunp|grep 53
被解锁机(不能看netflix的机)排错方法:
1、运行下面两条命令确保能正常链接到解锁机。
telnet 解锁机IP 53
telnet 解锁机IP 443
2、如果上面运行命令运行后显示可以正常链接到解锁机,再运行下面命令看是不是显示为被解锁机的IP。
nslookup netflix.com
3、如果上面都没有问题,那就看一下你是不是用了一键脚本吧。一键脚本很多都会自带dns服务,会影响流媒体的dns解锁。
如果提示53端口被占用,可以参考下面文章。
systemd-resolve占用53端口的解决方法
请问本文是针对v#2才能解锁的吗?S*和T*可以做到吗?谢谢
@Jason 不是呀。都可以。
哇,居然发现了一个知识库。
我想请问一下:
1.所有解锁Netflix的方案之中,这个方法是否是最优的?
2. 您有条回复是”不要用233的脚本,不要开路由器的dns”, 请问不要开路由器DNS是什么意思?我家里用的是软路由。这样会影响吗?多谢。盼复。
@JASON 没有最优,只有合适不合适而已。使用dns 解锁,用233的脚本和开路由器的dns会解锁失败(改是可以改,但是不同的系统会有点不一样)。
20200417刚试过,可用。在GCP香港上部署了DNS,其它VPS通过它,可netflix。
有个问题,GCP上也是走流量了,那我直接用GCP就好了,这个有什么意义啊?
还是说有什么其它方案?
@ewsnake 现在我能想到的一个应用,就是GCP对大陆流量0.23刀,对其它地区VPS只要0.12刀。
@ewsnake 这个的意思在于,你有一个线路很不好的小鸡可以看,线路很好的不能看时可以用。小鸡比较多时也可以省的切线路。
想问问这个被解锁机只有看NETFLIX时才走解锁机流量吗
@123 是的。
问下博主有没有办法让这个代理和v#2*+ws+TLS共存。因为v#2*会占用80端口。或者说有没有社么彼得办法可以让翻Q和Netflix代理两个功能同时存在.谢谢~
@隔壁老李头儿 可以,你把v#2*的端口改为其他的就行。
@萌精灵 谢谢,我尝试更改v#2* 的80和443端口以及nginx占用的80端口,现在已经可以正常使用了。顺便我想写一篇博客记录一下这个搭建过程,请问可以引用您博客内的代码么
@隔壁老李头儿 我也碰到这个问题,作为一个没有编程基础的人只会用一键脚本 – -。能请问下怎么更改v#2*占用80端口吗。。
@atie 修改nginx监听端口就行了,如果用的一键脚本。配置文件目录是/etc/nginx/conf/nginx.conf 修改玩nginx默认端口之后到/etc/nginx/conf/conf.d/v#2*.conf 把http默认80端口修改为其他端口。保存修改之后 systemctl stop nginx && systemctl start nginx && systemctl status nginx或者你直接重启vps就行了,搞完这个再装dnsmasq
@隔壁老李头儿 谢谢~
@atie 对了,除了80端口,v#2*.conf里面https的443端口也要改,假如改成4433,那你客户端也要把端口改成4433
亲测可行,感谢大佬!
但是不是所有的VPS都行,我手里只有几台可以,但还是很牛逼了
@Eric 能帮到你们就行了。
请问大佬出现53端口被占用Ubuntu18.04系统,占用的系统为systemd-resolve,希望能有教程知道一下,想用甲骨文机器当奈飞解锁机器来用,双手合十!
@kaka 好,有时间我写一个吧。OωO
@kaka 已经写了教程,你可以看一下。
@萌精灵 感谢 大佬 !!! 已经用上了 完美教程 ~~ 膜拜!!!
@kaka 客气了,常来看看就行。
nslookup查询设置成功 但依然不能看NF 这是什么情况?
@echo 不要用233的脚本,不要开路由器的dns。
@萌精灵 两台机器都没有用233的脚本…
@echo 加TG群看看?
特性:脚本默认解锁Netflix Hulu HBO等,如需增删流媒体域名请编辑文件/etc/dnsmasq.d/custom_netflix.conf和/etc/sniproxy.conf
debian9没有这两个文件
@Leeds 有了,不过两个文件都修改过后还是不能成功观看动画疯,也f12看过所有的域名了,也去搜了下动画疯的域名。
如果解锁服务器是动态nat应该如何配置呢?
好像真的失效了
@浩瀚星辰 没有,一直在用。上次有人说不能用了,后来发现是用233的原因。请仔细检查一下吧。
@萌精灵 的确是233的原因,同一台机子上v#2*就用不了,另外开一个shadowsocks就可以用,尝试修改
v#2*配置文件中的dns部分,重启后仍不能用,不知道博主有什么解决方法没有。
貌似失效了
@nihao 没失效呀,正常使用。
搭建好了,看不了的vps上nslookup Netflix也显示代理的ip了,但是还是会被检测出来怎么破
@nonuou 我今天再次测试了一下,没有问题呀。我在文章中更新了作者写的调试排错,你看一下对你有没有用。
建议大佬自己试下~~~ ::aru:knife:: 我觉得都不行~~~大佬自己试下好交流~
@女装大佬 大佬,没试我就不会发了。我都是自己试了的。
您好,我是一个小白,问一个挺白痴的问题。。。假如我已经有一个可以解锁港区netflix的DNS,使用脚本后应该修改哪里呢?我按照教程安装了脚本,然后vi /etc/resolv.conf,将DNS改成了我的VPS的IP地址,可是打开netflix是印度的。P.S.我的VPS是谷歌云的香港服务器。
@qsmxcc 看的懂,你直接用能看的看是什么地区的?这个不会影响你的地区的。另外,谷歌云的香港服务器不一定给你的就是香港的原生ip的。OωO