标题起的有点混乱,现在奈飞封IP封的厉害,导致好多VPS就算科学上网也看不了,买到能看的IP吧,速度又欠佳,所以才有了这篇文章。
脚本说明:
- 原理简述:使用Dnsmasq的DNS将网站解析劫持到SNI proxy反向代理的页面上。
- 用途:让无法观看流媒体的VPS可以观看(前提:VPS中要有一个是能观看流媒体的)。
- 特性:脚本默认解锁
Netflix Hulu HBO
等,如需增删流媒体域名请编辑文件/etc/dnsmasq.d/custom_netflix.conf
和/etc/sniproxy.conf
脚本支持系统:CentOS6+, Debian8+, Ubuntu16+
- CentOS6/7/8, Debian8/9/10, Ubuntu16/18 已测试成功
- 理论上不限虚拟化类型,如有问题请反馈
- 如果脚本最后显示的IP和实际公网IP不相符,请修改一下文件
/etc/sniproxy.conf
中的IP地址
脚本用法:
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/myxuchangbin/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -f
卸载方法
wget --no-check-certificate -O dnsmasq_sniproxy.sh https://github.com/myxuchangbin/dnsmasq_sniproxy_install/raw/master/dnsmasq_sniproxy.sh && bash dnsmasq_sniproxy.sh -u
使用方法
- 先在能看的机器上执行安装代码,然后将其他小鸡的的DNS地址修改为这个主机的IP即可,如果不能用,只保留一个DNS试一下。
- 为防止滥用,建议不要随意公布IP地址;或者使用防火墙来限制外部IP访问。
- 本脚本只用作解锁流媒体使用,不能用来FQ。
调试排错:
确认sniproxy有效运行
- 查看sni状态:systemctl status sniproxy
- 如果sni不在运行,检查一下是否有其他服务占用80,443端口,以防端口冲突,先将其他服务更改一下监听端口,查看端口监听:netstat -tlunp|grep 443
确认防火墙放行80,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
One comment
感谢分享,有办法让sni proxy中转所有的流量吗?
感谢