目前网易云上越来越多的音乐因为版权原因被下架,而且很多音乐也变成了vip才能播放(甚至包括大悲咒、国际歌这种音乐)。
在这里我们可以使用 UnblockNeteaseMusic 来搭建一个网易云代理服务,从而解锁因下架变成灰色的音乐或是需要vip才能播放的音乐。
安装与配置
docker部署
拉取镜像
1 | docker pull nondanee/unblockneteasemusic |
运行docker
1 | docker run --restart=always --name 163 -d -p 8999:8080 nondanee/unblockneteasemusic |
其中 --name 163
是自定义的名字8999:8080
是映射端口,表示本地的8999端口映射到docker的8080端口
使用npx运行
1 | $ npx @nondanee/unblockneteasemusic |
每次使用npx时会自动安装在临时目录,退出后会自动删除
源码部署
目前我使用的是这个方法。
首先在Github上下载最新的源码,并安装node js环境。
执行以下内容
1 | cd ~\UnblockNeteaseMusic |
也可写成bat脚本方便启动服务
对于设置endpoint音源,对于不同设备需使用不同方式
PC版由于不信任用户添加的证书需使用-e http://music.163.com
,IOS版由于无法降级为http必须-e https://music.163.com
参数配置
1 | $ unblockneteasemusic -h |
其他配置问题可参考Github Issue中的说明
使用代理模式解锁音乐
若将服务部署到公网,强烈建议使用严格模式 (此模式下仅放行网易云音乐所属域名的请求) -s 限制代理范围 (需使用 PAC 或 hosts),以防代理被他人滥用
Windows
在网易云客户端的设置-工具选项中设置自定义代理,模式选择HTTP代理,服务器和端口分别填写对应的ip(或域名)与端口号
UWP
在 Windows 设置 > 网络和 Internet > 代理
中设置代理,建议使用自动模式并使用pac
脚本地址为http://yoururl:port/proxy.pac
由于UWP应用存在网络隔离,需手动开启loopback才能使用,类似问题: Windows10下Edge浏览器等UWP应用无法连接到代理服务器的解决方案
请以管理员身份执行命令:
1 | checknetisolation loopbackexempt -a -n="1F8B0F94.122165AE053F_j2p0p5q0044a6" |
Android
PAC
在WLAN > 修改网络 > 高级选项 > 代理
中进行设置,建议使用自动模式并使用pac
由于网易云app的原因Android下无法通过修改hosts使用
部分安卓设备存在运行一定时间后不走pac的情况,可以使用下面的方法配合Clash for Android进行使用
Clash
使用Clash可以无视wifi或者流量使得网易云走代理,在这里列举一下一些配置文件的要点:
1 | mode: Rule |
配置好的文件可以放在服务器上方便通过URL添加使用
Linux / macOS
Ubuntu下使用系统设置 > 网络 > 网络代理
,macOS下使用系统偏好设置 > 网络 > 高级 > 代理
来设置代理
自签证书
由于Linux客户端1.2以上版本及macOS客户端700以上版本无法通过握手后返回空数据的方式降级https请求使用http接口,需要进行自签证书。自签证书过程参考这里,现ubuntu为例进行信任证书添加:
1 | $ ~/Downloads$ sudo cp ca.crt /usr/local/share/ca-certificates/ |
增加默认启动参数
自签完成后,启动客户端需要增加--ignore-certificate-errors
参数
1 | $ /usr/share/applications$ ls | grep netease |
在Exec这行末尾增加--ignore-certificate-errors
参数
IOS
IOS下的配置方式我并未试过,在此仅搬运issue中的一些总结
- 在ios设备上点击安装CA证书
- 在设置 > 通用 > 关于本机 > 证书信任设置,手动开启证书。官方教程
- 在
无线局域网 > HTTP 代理 > 配置代理
里开启 http 代理,手动填IP、端口号,也可以配合代理软件使用,详见 配合 Surge 或 Clash 食用、Shadowrocket
另外可以采用配置 https endpoint 转发音源的方法免除安装证书的过程,具体详见: