网易云音乐解锁无版权与vip,get了
为什么选择网易云做解锁?
网易云音乐可以说是国内存量歌曲最多的音乐客户端了,口碑也是一流。但由于音乐版权归属问题,原有的大量歌曲被官方封禁,不能播放。这篇教程就是教你如何解锁所有网易云歌曲。(技术测试请勿商用)
技术特性
- 使用网易云旧链 / QQ / 虾米 / 百度 / 酷狗 / 酷我 / 咕咪 / JOOX 音源替换变灰歌曲链接 (默认仅启用前四)。
- 为请求增加 X-Real-IP 参数解锁海外限制,支持指定网易云服务器 IP,支持设置上游 HTTP / HTTPS 代理。
- 完整的流量代理功能 (HTTP / HTTPS),可直接作为系统代理 (同时支持 PAC)。
感谢nondanee大神的项目
项目地址:https://github.com/nondanee/UnblockNeteaseMusic
自己本地使用,可在本地电脑搭建,无延迟问题
一、window下的搭建
1、下载源码
UnblockNeteaseMusic1
下载后解压zip文件,建议放到 C 盘的目录,不要放到平时安装程序的目录,以免命令行没权限进去导致使用失败。
本教程是放在了C盘根目录:C:\UnblockNeteaseMusic-master
。
请记住这个安装路径,下面会用到。
2、下载Node.js,并安装(Node.js作为执行程序的环境)
按系统类型选择对应的Node.js安装包:
下载 Node.js
下载后,双击默认安装即可。
3、查看获取本机访问网易云音乐的IP地址
win + R
组合键打开“运行”,输入cmd
,打开命令行窗口;
在命令行窗口输入ping music.163.com
上图所示,记录下红框处的IP地址,后面会用到。
4、制作bat批处理启动脚本,用来启动解锁程序
用记事本新建一个文档,将下面3行代码复制进去,保存在C:\UnblockNeteaseMusic-master
(上面记录的路径)下,文档名随便取,后缀改成.bat
,教程这里是保存为FinghinMusic.bat了。1
2
3@echo off
cd C:\UnblockNeteaseMusic-master
node app.js -p 2333 -f 59.111.160.197
第二行 cd 后面的路径,修改为 UnblockNeteaseMusic 的路径(看上面步骤1);
第三行代码里“2333”为代理端口,可以自定义(建议端口范围2001-65535);
第三行结尾的 IP 地址(-f 后),改为自己 ping 到的本机访问网易云音乐IP地址(看步骤3)。
5、运行.bat启动脚本
右键用管理员运行FinghinMusic.bat脚本,启动解锁程序。如下图所示:
命令窗口不能关闭,关闭了解锁服务就停止了。若需要开机即运行在后台看下面步骤7。
6、打开网易云音乐客户端,进行代理设置
下图所示,打开网易云音乐客户端的“设置”页面,在“工具”里,点选自定义代理
,在下拉框里选择Http代理
,在服务器里填127.0.0.1
,端口填步骤4里自己定义的代理端口(教程这里是2333)。
7、将bat启动脚本隐藏在后台并开机启动
用记事本新建一个文档,把下面两条代码复制进去,保存路径与.bat文件一致,在C:\UnblockNeteaseMusic-master
下。文档名随意取,后缀改成.vbs
,本教程保存为FinghinMusic.vbs了。1
2Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c FinghinMusic.bat",vbhide
上面第二行代码中的FinghinMusic.bat是需要启动的.bat文件,文件名请改成自己的。
开机启动
在C:\UnblockNeteaseMusic-master
目录下右键FinghinMusic.vbs
文件,选择创建快捷方式
,然后将创建的快捷方式复制或者剪切到自启文件夹里。(该文件夹路径为C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
)
打开自启文件夹: win + R
组合键打开“运行”,输入shell:startup
,即可打开系统自启动文件夹。
二、在mac下的搭建
1、安装git、node.js
解锁脚本通过git拉取,mac下安装git是基础,不会的请自行google。
到node.js官网首页下载LTS版本:https://nodejs.org/zh-cn/,默认安装即可。安装完后在终端窗口输入node -v
可验证node.js版本。
2、通过git拉取解锁脚本代码到本地
git拉取解锁脚本代码到本地:1
git clone https://github.com/nondanee/UnblockNeteaseMusic.git
3、查看获取本机访问网易云音乐的IP地址
在终端窗口输入ping music.163.com
,记录下本地访问网易云音乐的节点IP,下面会用到。
4、配置本机hosts
在终端窗口输入sudo vi /etc/hosts
,在hosts文件最底部加入下面两行代码:1
2127.0.0.1 music.163.com
127.0.0.1 interface.music.163.com
5、自签CA证书代理https流量
由于mac新版网易云音乐需要用https请求流量,可以进行自签CA证书来代理https。项目脚本根目录里自带了一个CA证书,若不自己签发,则可以直接将CA证书文件 ca.crt 安装到mac系统。
安装证书添加本机信任步骤:
- 打开启动台-其他-钥匙串访问;
- 将ca.crt文件拉拽到钥匙串访问窗口;
- 标记对应的证书文件受此帐户信任。
成功后如下图所示:
若选择自己签发证书,可借助OpenSSL签发:1
2
3
4
5
6
7
8
9
10
11
12
13
14# 生成 CA 私钥
openssl genrsa -out ca.key 2048
# 生成 CA 证书 ("YOURNAME" 处填上你自己的名字)
openssl req -x509 -new -nodes -key ca.key -sha256 -days 1825 -out ca.crt -subj "/C=CN/CN=UnblockNeteaseMusic Root CA/O=YOURNAME"
# 生成服务器私钥
openssl genrsa -out server.key 2048
# 生成证书签发请求
openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/L=Hangzhou/O=NetEase (Hangzhou) Network Co., Ltd/OU=IT Dept./CN=*.music.163.com"
# 使用 CA 签发服务器证书
openssl x509 -req -extfile <(printf "subjectAltName=DNS:music.163.com,DNS:*.music.163.com") -days 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt
上述步骤完成后
将服务器私钥 (server.key) 和服务器证书 (server.crt) 拷贝到仓库中覆盖原有文件,再将 CA 证书 (ca.crt) 安装到mac系统。
6、启动脚本
打开终端,cd进入UnblockNeteaseMusic脚本目录,执行下面命令,开始启动解锁脚本。1
sudo node app.js -p 80:443 -f 59.111.181.xx
- 注意:在启动命令中增加 https 监听端口,格式为
-p <http port>:<https port>
,这里是使用本机的hosts模式的,所以为-p 80:443
。-f
后是上面第3步的本地访问网易云音乐的节点IP
7、打开网易云音乐客户端
重新启动网易云音乐客户端(若后台已经打开客户端需要先退出)即可,这时发现原来的无版权音乐歌曲已经可以播放了,独家vip资源也可以播放。
若要给其他人使用或者在移动客户端使用,则需要搭建解锁代理服务器
部署解锁代理服务器,并用守护进程开机启动服务
1、安装Node.js、git
linux服务器安装Node.js,执行下面命令。1
2
3
4
5
6
7#Debian/Ubuntu系统
curl -sL https://deb.nodesource.com/setup_10.x | bash -
apt install -y nodejs git
#CentOS系统
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum install nodejs git -y
2、下载UnblockNeteaseMusic脚本并启动
先用git拉取UnblockNeteaseMusic网易云音乐解锁脚本,再启动脚本解锁。1
2
3git clone https://github.com/nondanee/UnblockNeteaseMusic.git
cd UnblockNeteaseMusic
node app.js -p 16666:28888
- 上面第三行代码中
-p 16666:28888
的格式是增加了 https 监听端口,一般格式为-p <http port>:<https port>
,主要监听的是<http port>
,请改为自己的端口,后面的<https port>
随便设置另一个不同的端口即可。 - 因为解锁脚本访问的流量是http协议的,所以
<http port>
对应的端口一定要记得在服务器防火墙放行,而<https port>
端口可以不放行。
3、用systemd守护进程启动脚本并设置脚本开机自启动
可以用systemd守护进程来启动脚本,脚本放后台运行。适用于 CentOS 7、Debian 8+、Ubuntu 16+。1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18cat > /etc/systemd/system/UnblockNeteaseMusic.service <<EOF
#!/bin/sh
[Unit]
Description=UnblockNeteaseMusic
After=network.target
Wants=network.target
[Service]
Type=simple
PIDFile=/var/run/UnblockNeteaseMusic.pid
WorkingDirectory=/root/UnblockNeteaseMusic
ExecStart=/usr/bin/node /root/UnblockNeteaseMusic/app.js -p 16666:28888
RestartPreventExitStatus=23
Restart=always
[Install]
WantedBy=multi-user.target
EOF
- 注意:
- ‘ExecStart=’这行代码里
/usr/bin/node
是自己服务器系统node的安装路径,可以通过which node
命令来找到。而root/UnblockNeteaseMusic/app.js
则是启动脚本的绝对路径
这里是用systemd来运行进程,运行在后台。如果需要修改启动进程的参数,通过vi编辑UnblockNeteaseMusic.service
配置文件。编辑后需要重载所有修改过的配置文件,再重新启动服务进程即可。1
2
3
4
5
6# 重载所有修改过的配置文件
$ sudo systemctl daemon-reload
# 重启一个服务
$ sudo systemctl restart UnblockNeteaseMusic.service
# 显示单个服务的状态
$ sysystemctl status UnblockNeteaseMusic.service
设置开机自启:1
2sudo systemctl start UnblockNeteaseMusic
sudo systemctl enable UnblockNeteaseMusic
3+、不支持systemd的系统,可以直接使用rc.local
有些系统不支持systemd,例如CentOS 6,Debian 7等,要使用守护进程将进程放在后台运行,可以使用系统自带的rc.local
命令:1
2
3#路径和命令自行修改
sed -i '/exit/d' /etc/rc.local
echo "cd /root/UnblockNeteaseMusic && node app.js -p 16666:28888" >> /etc/rc.local
各端设置使用服务器的解锁代理服务
Android:
连接wlan下:1
2
3
4
5
6#设置方法
手机设置 > WLAN > 网络设置 > 高级选项 > 代理
一般安卓手机设置代理类型的时候分2种,手动代理和自动代理,有的手机可能只有手动代理,大致设置如下:
手动代理 > 只需要填上你的服务器IP和端口就可以了。
自动代理 > 填上你的PAC地址就行了,地址:http://<Server Name:PORT>/proxy.pac,修改为你的ip、运行端口。
建议优先使用手动代理
使用数据流量下:
配合 Xndroid 等工具来使用。
app下载地址:
Xndroid
大致设置如下:1
打开Xndroid > 点击左侧Fqrouter > 添加个人代理(只需要填服务器ip和端口即可) > 代理列表配置项(将高级设置里面全部关掉) > 软件右上角代理设置(只代理网易云音乐)
- 设置完成后你还可以在右上角启动设置中,关掉xx-net和fqrouter里面的所有启动项,这样开启软件速度也会快很多。
IOS:
需要借助 Shadowrocket 这类的代理工具,就 shadowrocket 举例说明。按下面的步骤图来进行设置。1
2#设置方法
打开小火箭 > 添加节点(类型选择HTTP,输入你的ip和端口,随便备注下,右上角完成即可) > 编辑配置 > 添加规则(类型选择USER-AGENT,选项选择网易云,用户代理输入NeteaseMusic*),保存即可。
Windows:1
2
3
4#设置方法
网易云客户端设置 > 工具 > 自定义代理 > HTTP代理
这里只需要填上你的服务器ip和端口,保存即可。
macOS:
需要自签CA证书代理https流量来降级成http流量,具体方法上文中的“在mac下的搭建”步骤。1
2#设置方法
系统偏好设置 > 网络 > 高级 > 代理