解锁网易云音乐客户端变灰歌曲

作者: maofun 分类: 代码 发布时间: 2020-08-26 11:27

成品

#2020/3/21 20点06分补充:鉴于都是伸手党,暂不提供服务,自己搭建不懂可以问。
IP:47.102.***.***
端口:8080
PAC:http://47.102.***.***:8080/proxy.pac

特性

使用 QQ / 虾米 / 百度 / 酷狗 / 酷我 / 咪咕 / JOOX 音源替换变灰歌曲链接 (默认仅启用一、五、六)
为请求增加 X-Real-IP 参数解锁海外限制,支持指定网易云服务器 IP,支持设置上游 HTTP / HTTPS 代理
完整的流量代理功能 (HTTP / HTTPS),可直接作为系统代理 (同时支持 PAC)

安装

1.安装Nodejs

curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum install nodejs git -y

2.运行UnblockNeteaseMusic

git clone https://github.com/nondanee/UnblockNeteaseMusic.git
cd UnblockNeteaseMusic
node app.js

3.开机自启

这里使用Systemd进程守护,只适用于CentOS 7Debian 8+Ubuntu 16+等。

#修改下ExecStartPre和ExecStart参数的源码路径和执行命令即可,然后一起复制到SSH运行
cat > /etc/systemd/system/UnblockNeteaseMusic.service <<EOF
[Unit]
Description=UnblockNeteaseMusic
After=network.target
Wants=network.target

[Service]
Type=simple
PIDFile=/var/run/UnblockNeteaseMusic.pid
ExecStartPre=cd /root/UnblockNeteaseMusic
ExecStart=/bin/bash -c "cd /root/UnblockNeteaseMusic && /usr/bin/node app.js -p 4567"
RestartPreventExitStatus=23
Restart=always

[Install]
WantedBy=multi-user.target
EOF

启动并开机自启:

systemctl start UnblockNeteaseMusic
systemctl enable UnblockNeteaseMusic

如果没有Systemd的,比如CentOS 6Debian 7等,直接使用rc.local,使用命令:

#路径和命令自行修改
sed -i '/exit/d' /etc/rc.local
echo "cd /root/UnblockNeteaseMusic && node app.js" >> /etc/rc.local

使用

提示:使用方法可以选择修改Hosts或者设置代理的方式,自己挑选一种比较会的吧。

1.修改Hosts

找到Hosts路径,大致位置:

Windows系统:位于C:\Windows\System32\drivers\etc\hosts
Android系统:位于/system/etc/hosts
Mac系统:位于/etc/hosts
IOS系统:位于/etc/hosts
Linux系统:位于/etc/hosts

hosts文件添加两条规则

#将前面参数修改为服务器IP
<Server IP> music.163.com
<Server IP> interface.music.163.com

使用此方法必须监听 80 端口,也就是使用 -p 80 参数指定 80 端口运行。

2.设置代理
Android系统:

#设置方法
手机设置 > WLAN > 网络设置 > 高级选项 > 代理

一般安卓手机设置代理类型的时候分2种,手动代理和自动代理,有的手机可能只有手动代理,大致设置如下:
手动代理 > 只需要填上你的服务器IP和端口就可以了。
自动代理 > 填上你的PAC地址就行了,地址:http://<Server Name:PORT>/proxy.pac,修改为你的ip、运行端口。

如果你发现设置后不能使用或者出现其它网络问题,带了-s参数的不妨去掉后再试试。

Windows系统:

#设置方法
网易云客户端设置 > 工具 > 自定义代理 > HTTP代理

这里只需要填上你的服务器ip和端口,保存即可。

IOS系统:

#设置方法
手机设置 > 无线局域网 > 高级 > HTTP代理 > 自动

填上你的PAC地址就行了,地址:http://<Server Name:PORT>/proxy.pac,修改为你的ip、运行端口。

macOS啥的,没设备就不测试了,直接列举下作者提供方法。

UWP    Windows设置 > 网络和Internet > 代理
Linux    系统设置 > 网络 > 网络代理
macOS    系统偏好设置 > 网络 > 高级 > 代理

设置好了后,你会发现客户端之前因为版权问题不能听的都可以听了,然后建议搭建的时候,选择的服务器网络延迟尽量好点,不然播放会很慢。

问题补充

1.如果设置好了后,打开客户端提示网络问题的话,稍等片刻就好了,如果过会还是不行,就检查下操作啥的,比如防火墙。

一般情况下CentOS防火墙还需要开启运行端口,比如博主用的8080,使用命令:

#CentOS 6
iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload

宝塔的话可以直接面板左侧-安全-开启对应的端口即可。

2.上面只提到了安卓WLAN下的使用方法,这里再补充个手机数据下的使用方法,建议配合Xndroid工具,最新版APP下载地址→传送门,大致设置如下:

打开Xndroid > 点击左侧Fqrouter > 添加个人代理(只需要填服务器ip和端口即可) > 代理列表配置项(将高级设置里面全部关掉) > 软件右上角代理设置(只代理网易云音乐)

设置完成后你还可以在右上角启动设置中,关掉xx-netfqrouter里面的所有启动项,这样开启软件速度也会快很多。

最后貌似很多妹子都喜欢用网易云,小伙伴们可以去喜欢的妹子面前装个逼,自己搭建好了,然后教她们点亮下灰色无版权歌曲。

配置参数

$ unblockneteasemusic -h
usage: unblockneteasemusic [-v] [-p port] [-a address] [-u url] [-f host]
                           [-o source [source ...]] [-t token] [-e url] [-s]
                           [-h]

optional arguments:
  -v, --version                   output the version number
  -p port, --port port            specify server port
  -a address, --address address   specify server host
  -u url, --proxy-url url         request through upstream proxy
  -f host, --force-host host      force the netease server ip
  -o source [source ...], --match-order source [source ...]
                                  set priority of sources
  -t token, --token token         set up proxy authentication
  -e url, --endpoint url          replace virtual endpoint with public host
  -s, --strict                    enable proxy limitation
  -h, --help                      output usage information

参考链接:
https://github.com/nondanee/UnblockNeteaseMusic
https://www.c0smx.com/archives/834/

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注