站点图标 Linux-技术共享

DNS方式解锁Netflix非自制剧详细教程

3542758535

简称术语含义:
终端 : 指你观看Netflix视频的设备,可以是PC/移动端浏览器、Netflix客户端。
解锁鸡 : 指可以解锁Netflix非自制剧的VPS。
代理鸡 : 指个人搭建梯子代理的VPS,通过这台小鸡可以访问油管、奈飞视频。
DNS服务 : 用来将域名解析为真实服务器IP地址的服务,常见的有 dnsmasq/AdGuard Home。
正向代理 : 又称前向代理,就是常说的代理服务器,作用是加速网络、突破网络审查、隐藏真实IP、突破网络区域限制、过滤内容等等。
反向代理 : 又称逆向代理,客户端只需要知道反向代理服务器的IP地址,服务端返回的响应结果由反向代理决策判断,通常假设在服务端,用于负载均衡、CDN功能以及缓存服务等等。
奈飞自制剧: 由奈飞出品的影片资源。
奈飞非自制剧: 即存在地区版权限制的影片资源,目前主要区域有美区、新加坡区、日区、港区热门影片区域,其中新加坡和港区是有中文字幕和中文音轨的。
想要获取非自制剧影片,就需要解锁地区封锁限制,而目前大部分 VPS 提供商的 IP 都被封锁,因此解锁地区变得非常困难。
目前,解锁地区有效的方法:
加密代理 : 即在解锁鸡搭建加密代理通道(SS/SSR/V2ray等),将终端的HTTPS请求通过解锁鸡发出去。但这适合终端与解锁鸡可以直连情况。此时的解锁鸡就是代理鸡。
DNS+SNIPROXY: 即通过在解锁鸡上部署DNS解析服务和SNI反向代理实现地区解锁。
关于加密代理解锁就是搭建个梯子,不过我的解锁鸡无法直连,因此就没有使用此方式。具体搭建梯子各种一键安装脚本请阅读这里。
DNS方式解锁原理
今天介绍解锁奈飞非自制剧的方法就是 DNS+SNIPROXY 实现。简单原理如下图:

DNS奈飞解锁线路选择
DNS 解锁 Net­flix 方案大致如下两类:
线路一: 适合终端可以直接连接解锁鸡情况,个人使用。
线路二: 使用终端无法直接连接解锁鸡,或者共享多台代理鸡解锁奈飞地区限制。
简单总结:无论那种线路,最终访问奈飞的流量必然经过解锁鸡,所以共享越多,流量消耗越多。另外,尽量不要用解锁鸡解析所有 DNS 请求,仅转发奈飞相关域名解析即可。具体规则后面会提供的。
接下来,我们介绍两种线路如何自己搭建与配置。解锁鸡上部署DNS和SNIPROXY方法

代理鸡的DNS配置方法
通常其他教程并没有详细说如何对代理鸡部署,其实也是因为代理鸡的部署方式有很多,每个人使用的代理也是不太一样,这里介绍两种我用过的配置方式。
使用v2ray配置DNS: 部署方法及脚本参考各种一键安装脚本请阅读这里。
使用dnsmasq或AdGuard Home配置DNS: 这里介绍了dnsmasq的配置方法,如果喜欢带Web界面的AdGuard Home可以阅读这里。
通过v2ray服务端实现DNS解析
v2ray 服务端代理的搭建过程不介绍了,仅仅说一下怎么配置。
找到 v2ray 服务端的配置文件:

ps -ef |grep v2ray
找到后(例如: /etc/v2ray/config.json),编辑 /etc/v2ray/config.json 文件,找到 dns 配置位置,添加解锁鸡的 IP 地址,如下:
"dns": {
"servers": [
"解锁鸡IP地址",
"https+local://1.1.1.1/dns-query",
"1.1.1.1",
"1.0.0.1",
"8.8.8.8",
"8.8.4.4",
"localhost"
]
}

保存后,重启 v2ray 服务。接下来只需要通过 v2ray 客户端访问奈飞就可以解锁非自制剧影片了。
通过搭建dnsmasq服务中转奈飞DNS请求
数据的流向为:
“终端” ==》 “代理鸡”(奈飞DNS指向`解锁鸡`DNS服务) ==》 “解锁鸡”(反向代理) ==》 “Netflix服务器”
其中,我们要在代理鸡安装 dnsmasq 服务,以下操作适合 Cen­tOS/​Fe­dora/​Al­ma­L­inux 系统。

yum install dnsmasq
配置 dnsmasq 命令:

cat <<END > /etc/dnsmasq.d/custom.netflix.conf
server=8.8.8.8
server=/fast.com/x.x.x.x
server=/netflix.ca/x.x.x.x
server=/netflix.com/x.x.x.x
server=/netflix.net/x.x.x.x
server=/netflixinvestor.com/x.x.x.x
server=/netflixtechblog.com/x.x.x.x
server=/nflxext.com/x.x.x.x
server=/nflximg.com/x.x.x.x
server=/nflximg.net/x.x.x.x
server=/nflxsearch.net/x.x.x.x
server=/nflxso.net/x.x.x.x
server=/nflxvideo.net/x.x.x.x
END
# 重启Dnsmasq
systemctl restart dnsmasq
其中,x.x.x.x 是解锁鸡的 IP 地址。
为了让代理鸡也使用自己的 DNS服务,需要修改 /etc/resolv.conf 文件,添加使用本地代理:
# 添加本地代理到第一行
sed -i '1 i nameserver 127.0.0.1' /etc/resolv.conf
此时,在代理鸡试试如下命令:
nslookup netflix.com
如果显示内容如下,说明配置成功了:
Server: 127.0.0.1
Address: 127.0.0.1#53

Non-authoritative answer:
Name: netflix.com
Address: x.x.x.x
其中,x.x.x.x 是解锁鸡的 IP 地址。
代理鸡配置总结
上面两种方法配置成功后,在代理鸡 DNS 解析 netflix.com 都会显示唯一的 IP 地址,就是解锁鸡的 IP 地址。
如果显示的不是解锁鸡 IP 地址,那说明代理鸡的配置规则并没配置正确。 还是需要按照上面步骤查看问题所在。
终端的配置方法
如果代理鸡解析 DNS 正确了,可以在终端使用代理客户端访问 netflix.com 试试看。
这时涉及到终端的场景也较多。比如:使用软路由、某些科学上网插件实现的透明代理或者是使用 PC 浏览器以及移动端的代理客户端等等。

这里介绍一种最简单的方式是 浏览器 + switchomegaproxy插件。本地DNS不需要配置,只需要正常启动`代理客户端`并且配置好 switchomegaproxy插件 即可。
假如使用 Clash, 那么可能需要修改 DNS 服务器 IP 地址,怎么修改? 看 Clash 关于 DNS 配置的说明文档吧。

透明代理实现方案是使用 GFW 列表还是绕过本地和国内地址等等,不同方案的修改方法也不太一样。简单办法就是将代理鸡服务端配置添加进去 (怎么添加就没法教了,自己都该会的),直接使用它就可以。

退出移动版