使用Dnsmasq+SNIproxy一键脚本解决送中机
因为手上有台台湾解锁机送中了,使用起来极其不爽,本想扔掉,但终究不舍,遂研究如何解决。
一、何谓送中机
送中机,是指机器IP被Google判定为中国大陆的俗称,也称:宋仲基。
通常情况下,如果低价机,或者机场多的ISP,很容易开出送中机。
1、送中机的问题:
- Youtube Premium 不能用 (YouTube Premium 和 YouTube Music Premium 不支持中国)
- Google play不能下载软件
- Youtube 不支持后台播放
- 搜索结果也可能不一样 (当然, 可用通过用 google.com/ncr 去搜索)
2、送中的原因:
通常情况下,浏览器或APP开了GPS定位(比如手机/电脑)权限。使用VPS的IP访问谷歌服务时, Google可能把GPS定位和IP关联起来, 导致IP被标记为中国。
3、如何检测是否送中:
只需要运行如下多媒体解锁检测脚本即可:
bash <(curl -L -s https://raw.githubusercontent.com/lmc999/RegionRestrictionCheck/main/check.sh)
如图即送中
4、常规解决送中的办法:
- 关闭浏览器或手机APP的定位(GPS)权限
电脑移除定位权限: Chrome - 设置 - 隐私设置和安全性, 网站设置 - 位置信息, 移除谷歌的相关站点.
手机关闭APP的定位权限: 应用的权限管理, 定位服務/位置信息
的权限.
- 去Google的帮助中心, 报告 IP 问题
一般提交后, 可能1周以上才会有效果(当然也不一定被采纳), 可以间隔1周提交一次.
- 电脑端的谷歌浏览器, 通过Location Guard插件, 强制标记GPS定位.
安装后, Fixed Location
菜单, 标记需要模拟GPS定位的位置, 根据自己VPS IP, 在地图上找到对应的国家/城市。
Options
菜单, Default level: 改成 Use fixed location
。
经常使用Google搜索/油管等服务, 长期给谷歌推送定位。
但是,即便用这种方式,IP恢复也很困难,即便能恢复到机器所在国,但仍然需要时间。
有办法马上就解决送中问题么?
有的。
二、使用Dnsmasq+SNIproxy解决送中
1、概述
原理:使用Dnsmasq的DNS将网站解析劫持到SNI proxy反向代理的页面上。
借鉴原作者myxuchangbin在Github上的一键脚本,我修改了部分代码。
https://github.com/codionx/dnsmasq_sniproxy_install
原作者的脚本主要用来解决如Netflix解锁的问题,而实际上,劫持方式解锁Netflix,和劫持方式突破送中,是同一原理,无非是把DNS的分流规则修改成Youtube就好。
2、技术逻辑
- 在不送中的机器上运行Dnsmasq+SNIproxy服务;
- 设置不送中机器的IP为送中机器的DNS;
即可
3、安装
在不送中机上运行
wget --no-check-certificate -O dnsmasq_sniproxy_youtube.sh https://raw.githubusercontent.com/codionx/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy_youtube.sh && bash dnsmasq_sniproxy_youtube.sh -f
4、修改DNS
在送中机上
nano /etc/resolv.conf
删除全部内容,并添加
nameserver 不送中机IP
5、检测
使用多媒体解锁检测脚本即可
bash <(curl -L -s https://raw.githubusercontent.com/lmc999/RegionRestrictionCheck/main/check.sh)
如图即正常
6、卸载
wget --no-check-certificate -O dnsmasq_sniproxy_youtube.sh https://raw.githubusercontent.com/codionx/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy_youtube.sh && bash dnsmasq_sniproxy_youtube.sh -u
至此,已经基本解决送中问题。
但,如果你恰好碰上NF、D+解锁机送中,又要怎么处理呢?
三、解决NF解锁机送中问题
1、只解决NF解锁机送中问题
这个比较简单,只需要把不送中机的IP设定为NF解锁机的DNS即可。
2、同时解决NF解锁机送中及NF机给其他机解锁的问题
这个标题有点绕,实际上就是,
- 解决NF解锁机的Youtube访问
- 在NF解锁机上跑Dnsmasq+SNIproxy脚本,并作为其他不解锁NF且送中的机的DNS使用
(1)在NF解锁机上运行完整版脚本
wget --no-check-certificate -O dnsmasq_sniproxy_all.sh https://raw.githubusercontent.com/codionx/dnsmasq_sniproxy_install/master/dnsmasq_sniproxy_all.sh && bash dnsmasq_sniproxy_all.sh -f
(2)修改/etc/dnsmasq.d/custom_netflix.conf
文件
nano /etc/dnsmasq.d/custom_netflix.conf
在interface=*
后插入如下内容,请把不送中机IP
修改为你的不送中机IP!!
address=/youtubei.googleapis.com/不送中机IP
address=/yt3.ggpht.com/不送中机IP
address=/ggpht.cn/不送中机IP
address=/ggpht.com/不送中机IP
address=/googlevideo.com/不送中机IP
address=/gvt2.com/不送中机IP
address=/withyoutube.com/不送中机IP
address=/youtu.be/不送中机IP
address=/youtube-nocookie.com/不送中机IP
address=/youtube.ae/不送中机IP
address=/youtube.al/不送中机IP
address=/youtube.am/不送中机IP
address=/youtube.at/不送中机IP
address=/youtube.az/不送中机IP
address=/youtube.ba/不送中机IP
address=/youtube.be/不送中机IP
address=/youtube.bg/不送中机IP
address=/youtube.bh/不送中机IP
address=/youtube.bo/不送中机IP
address=/youtube.by/不送中机IP
address=/youtube.ca/不送中机IP
address=/youtube.cat/不送中机IP
address=/youtube.ch/不送中机IP
address=/youtube.cl/不送中机IP
address=/youtube.co/不送中机IP
address=/youtube.co.ae/不送中机IP
address=/youtube.co.at/不送中机IP
address=/youtube.co.cr/不送中机IP
address=/youtube.co.hu/不送中机IP
address=/youtube.co.id/不送中机IP
address=/youtube.co.il/不送中机IP
address=/youtube.co.in/不送中机IP
address=/youtube.co.jp/不送中机IP
address=/youtube.co.ke/不送中机IP
address=/youtube.co.kr/不送中机IP
address=/youtube.co.ma/不送中机IP
address=/youtube.co.nz/不送中机IP
address=/youtube.co.th/不送中机IP
address=/youtube.co.tz/不送中机IP
address=/youtube.co.ug/不送中机IP
address=/youtube.co.uk/不送中机IP
address=/youtube.co.ve/不送中机IP
address=/youtube.co.za/不送中机IP
address=/youtube.co.zw/不送中机IP
address=/youtube.com/不送中机IP
address=/youtube.com.ar/不送中机IP
address=/youtube.com.au/不送中机IP
address=/youtube.com.az/不送中机IP
address=/youtube.com.bd/不送中机IP
address=/youtube.com.bh/不送中机IP
address=/youtube.com.bo/不送中机IP
address=/youtube.com.br/不送中机IP
address=/youtube.com.by/不送中机IP
address=/youtube.com.co/不送中机IP
address=/youtube.com.do/不送中机IP
address=/youtube.com.ec/不送中机IP
address=/youtube.com.ee/不送中机IP
address=/youtube.com.eg/不送中机IP
address=/youtube.com.es/不送中机IP
address=/youtube.com.gh/不送中机IP
address=/youtube.com.gr/不送中机IP
address=/youtube.com.gt/不送中机IP
address=/youtube.com.hk/不送中机IP
address=/youtube.com.hn/不送中机IP
address=/youtube.com.hr/不送中机IP
address=/youtube.com.jm/不送中机IP
address=/youtube.com.jo/不送中机IP
address=/youtube.com.kw/不送中机IP
address=/youtube.com.lb/不送中机IP
address=/youtube.com.lv/不送中机IP
address=/youtube.com.ly/不送中机IP
address=/youtube.com.mk/不送中机IP
address=/youtube.com.mt/不送中机IP
address=/youtube.com.mx/不送中机IP
address=/youtube.com.my/不送中机IP
address=/youtube.com.ng/不送中机IP
address=/youtube.com.ni/不送中机IP
address=/youtube.com.om/不送中机IP
address=/youtube.com.pa/不送中机IP
address=/youtube.com.pe/不送中机IP
address=/youtube.com.ph/不送中机IP
address=/youtube.com.pk/不送中机IP
address=/youtube.com.pt/不送中机IP
address=/youtube.com.py/不送中机IP
address=/youtube.com.qa/不送中机IP
address=/youtube.com.ro/不送中机IP
address=/youtube.com.sa/不送中机IP
address=/youtube.com.sg/不送中机IP
address=/youtube.com.sv/不送中机IP
address=/youtube.com.tn/不送中机IP
address=/youtube.com.tr/不送中机IP
address=/youtube.com.tw/不送中机IP
address=/youtube.com.ua/不送中机IP
address=/youtube.com.uy/不送中机IP
address=/youtube.com.ve/不送中机IP
address=/youtube.cr/不送中机IP
address=/youtube.cz/不送中机IP
address=/youtube.de/不送中机IP
address=/youtube.dk/不送中机IP
address=/youtube.ee/不送中机IP
address=/youtube.es/不送中机IP
address=/youtube.fi/不送中机IP
address=/youtube.fr/不送中机IP
address=/youtube.ge/不送中机IP
address=/youtube.gr/不送中机IP
address=/youtube.gt/不送中机IP
address=/youtube.hk/不送中机IP
address=/youtube.hr/不送中机IP
address=/youtube.hu/不送中机IP
address=/youtube.ie/不送中机IP
address=/youtube.in/不送中机IP
address=/youtube.iq/不送中机IP
address=/youtube.is/不送中机IP
address=/youtube.it/不送中机IP
address=/youtube.jo/不送中机IP
address=/youtube.jp/不送中机IP
address=/youtube.kr/不送中机IP
address=/youtube.kz/不送中机IP
address=/youtube.la/不送中机IP
address=/youtube.lk/不送中机IP
address=/youtube.lt/不送中机IP
address=/youtube.lu/不送中机IP
address=/youtube.lv/不送中机IP
address=/youtube.ly/不送中机IP
address=/youtube.ma/不送中机IP
address=/youtube.md/不送中机IP
address=/youtube.me/不送中机IP
address=/youtube.mk/不送中机IP
address=/youtube.mn/不送中机IP
address=/youtube.mx/不送中机IP
address=/youtube.my/不送中机IP
address=/youtube.ng/不送中机IP
address=/youtube.ni/不送中机IP
address=/youtube.nl/不送中机IP
address=/youtube.no/不送中机IP
address=/youtube.pa/不送中机IP
address=/youtube.pe/不送中机IP
address=/youtube.ph/不送中机IP
address=/youtube.pk/不送中机IP
address=/youtube.pl/不送中机IP
address=/youtube.pr/不送中机IP
address=/youtube.pt/不送中机IP
address=/youtube.qa/不送中机IP
address=/youtube.ro/不送中机IP
address=/youtube.rs/不送中机IP
address=/youtube.ru/不送中机IP
address=/youtube.sa/不送中机IP
address=/youtube.se/不送中机IP
address=/youtube.sg/不送中机IP
address=/youtube.si/不送中机IP
address=/youtube.sk/不送中机IP
address=/youtube.sn/不送中机IP
address=/youtube.soy/不送中机IP
address=/youtube.sv/不送中机IP
address=/youtube.tn/不送中机IP
address=/youtube.tv/不送中机IP
address=/youtube.ua/不送中机IP
address=/youtube.ug/不送中机IP
address=/youtube.uy/不送中机IP
address=/youtube.vn/不送中机IP
address=/youtubeeducation.com/不送中机IP
address=/youtubefanfest.com/不送中机IP
address=/youtubegaming.com/不送中机IP
address=/youtubego.co.id/不送中机IP
address=/youtubego.co.in/不送中机IP
address=/youtubego.com/不送中机IP
address=/youtubego.com.br/不送中机IP
address=/youtubego.id/不送中机IP
address=/youtubego.in/不送中机IP
address=/youtubei.googleapis.com/不送中机IP
address=/youtubekids.com/不送中机IP
address=/youtubemobilesupport.com/不送中机IP
address=/yt.be/不送中机IP
address=/ytimg.com/不送中机IP
(3)修改/etc/sniproxy.conf
文件
nano /etc/sniproxy.conf
在table {
后插入如下内容:
.*youtubei\.googleapis\.com$ *
.*yt3\.ggpht.com$ *
.*ggpht\.cn$ *
.*ggpht\.com$ *
.*googlevideo\.com$ *
.*gvt2\.com$ *
.*withyoutube\.com$ *
.*youtu\.be$ *
.*youtube-nocookie\.com$ *
.*youtube\.ae$ *
.*youtube\.al$ *
.*youtube\.am$ *
.*youtube\.at$ *
.*youtube\.az$ *
.*youtube\.ba$ *
.*youtube\.be$ *
.*youtube\.bg$ *
.*youtube\.bh$ *
.*youtube\.bo$ *
.*youtube\.by$ *
.*youtube\.ca$ *
.*youtube\.cat$ *
.*youtube\.ch$ *
.*youtube\.cl$ *
.*youtube\.co$ *
.*youtube\.co\.ae$ *
.*youtube\.co\.at$ *
.*youtube\.co\.cr$ *
.*youtube\.co\.hu$ *
.*youtube\.co\.id$ *
.*youtube\.co\.il$ *
.*youtube\.co\.in$ *
.*youtube\.co\.jp$ *
.*youtube\.co\.ke$ *
.*youtube\.co\.kr$ *
.*youtube\.co\.ma$ *
.*youtube\.co\.nz$ *
.*youtube\.co\.th$ *
.*youtube\.co\.tz$ *
.*youtube\.co\.ug$ *
.*youtube\.co\.uk$ *
.*youtube\.co\.ve$ *
.*youtube\.co\.za$ *
.*youtube\.co\.zw$ *
.*youtube\.com$ *
.*youtube\.com\.ar$ *
.*youtube\.com\.au$ *
.*youtube\.com\.az$ *
.*youtube\.com\.bd$ *
.*youtube\.com\.bh$ *
.*youtube\.com\.bo$ *
.*youtube\.com\.br$ *
.*youtube\.com\.by$ *
.*youtube\.com\.co$ *
.*youtube\.com\.do$ *
.*youtube\.com\.ec$ *
.*youtube\.com\.ee$ *
.*youtube\.com\.eg$ *
.*youtube\.com\.es$ *
.*youtube\.com\.gh$ *
.*youtube\.com\.gr$ *
.*youtube\.com\.gt$ *
.*youtube\.com\.hk$ *
.*youtube\.com\.hn$ *
.*youtube\.com\.hr$ *
.*youtube\.com\.jm$ *
.*youtube\.com\.jo$ *
.*youtube\.com\.kw$ *
.*youtube\.com\.lb$ *
.*youtube\.com\.lv$ *
.*youtube\.com\.ly$ *
.*youtube\.com\.mk$ *
.*youtube\.com\.mt$ *
.*youtube\.com\.mx$ *
.*youtube\.com\.my$ *
.*youtube\.com\.ng$ *
.*youtube\.com\.ni$ *
.*youtube\.com\.om$ *
.*youtube\.com\.pa$ *
.*youtube\.com\.pe$ *
.*youtube\.com\.ph$ *
.*youtube\.com\.pk$ *
.*youtube\.com\.pt$ *
.*youtube\.com\.py$ *
.*youtube\.com\.qa$ *
.*youtube\.com\.ro$ *
.*youtube\.com\.sa$ *
.*youtube\.com\.sg$ *
.*youtube\.com\.sv$ *
.*youtube\.com\.tn$ *
.*youtube\.com\.tr$ *
.*youtube\.com\.tw$ *
.*youtube\.com\.ua$ *
.*youtube\.com\.uy$ *
.*youtube\.com\.ve$ *
.*youtube\.cr$ *
.*youtube\.cz$ *
.*youtube\.de$ *
.*youtube\.dk$ *
.*youtube\.ee$ *
.*youtube\.es$ *
.*youtube\.fi$ *
.*youtube\.fr$ *
.*youtube\.ge$ *
.*youtube\.gr$ *
.*youtube\.gt$ *
.*youtube\.hk$ *
.*youtube\.hr$ *
.*youtube\.hu$ *
.*youtube\.ie$ *
.*youtube\.in$ *
.*youtube\.iq$ *
.*youtube\.is$ *
.*youtube\.it$ *
.*youtube\.jo$ *
.*youtube\.jp$ *
.*youtube\.kr$ *
.*youtube\.kz$ *
.*youtube\.la$ *
.*youtube\.lk$ *
.*youtube\.lt$ *
.*youtube\.lu$ *
.*youtube\.lv$ *
.*youtube\.ly$ *
.*youtube\.ma$ *
.*youtube\.md$ *
.*youtube\.me$ *
.*youtube\.mk$ *
.*youtube\.mn$ *
.*youtube\.mx$ *
.*youtube\.my$ *
.*youtube\.ng$ *
.*youtube\.ni$ *
.*youtube\.nl$ *
.*youtube\.no$ *
.*youtube\.pa$ *
.*youtube\.pe$ *
.*youtube\.ph$ *
.*youtube\.pk$ *
.*youtube\.pl$ *
.*youtube\.pr$ *
.*youtube\.pt$ *
.*youtube\.qa$ *
.*youtube\.ro$ *
.*youtube\.rs$ *
.*youtube\.ru$ *
.*youtube\.sa$ *
.*youtube\.se$ *
.*youtube\.sg$ *
.*youtube\.si$ *
.*youtube\.sk$ *
.*youtube\.sn$ *
.*youtube\.soy$ *
.*youtube\.sv$ *
.*youtube\.tn$ *
.*youtube\.tv$ *
.*youtube\.ua$ *
.*youtube\.ug$ *
.*youtube\.uy$ *
.*youtube\.vn$ *
.*youtubeeducation\.com$ *
.*youtubefanfest\.com$ *
.*youtubegaming\.com$ *
.*youtubego\.co\.id$ *
.*youtubego\.co\.in$ *
.*youtubego\.com$ *
.*youtubego\.com\.br$ *
.*youtubego\.id$ *
.*youtubego\.in$ *
.*youtubei\.googleapis\.com$ *
.*youtubekids\.com$ *
.*youtubemobilesupport\.com$ *
.*yt\.be$ *
.*ytimg\.com$ *
至此,问题就全部解决了!
如果除了Youtube,还想解锁其他服务,比如Porn类,你就可以参考这个分流规则的格式,按照/etc/dnsmasq.d/custom_netflix.conf
和/etc/sniproxy.conf
的格式修改一下,即可!
https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/Ruleset/Porn.list
欢迎衍生应用!
如果碰到问题,还可以参考这一篇。