Rat's

使用UnblockNeteaseMusic播放网易云音乐客户端无版权歌曲
说明:UnblockNeteaseMusic是一款可以给你解除网易云音乐海外限制并解锁变灰(无版权)歌曲的工具,让...
扫描右侧二维码阅读全文
29
2019/04

使用UnblockNeteaseMusic播放网易云音乐客户端无版权歌曲

说明:UnblockNeteaseMusic是一款可以给你解除网易云音乐海外限制并解锁变灰(无版权)歌曲的工具,让你可以听取客户端任何的歌曲,而不受到限制,此前该类似工具挺多的,不过貌似都不维护或者失效了,这里提到的项目更新很频繁,支持WindowsMacOS、安卓、IOS等设备,所以就分享一下使用方法。

截图

请输入图片描述
请输入图片描述

特性

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

安装

Github地址:https://github.com/nondanee/UnblockNeteaseMusic

1、安装Nodejs

#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 clone https://github.com/nondanee/UnblockNeteaseMusic.git
cd UnblockNeteaseMusic
node app.js

运行端口默认为8080,需要想修改可以编辑app.js文件的config.port对应的数值,或者使用命令:

#这里默认修改4567,自行调整
node app.js -p 4567

这里还可以加一个-s参数限制代理范围防止被滥用,也就是仅放行网易云音乐所属域名的请求,不过使用起来的话就受限了,仅支持PACHosts

node app.js -s

3、开机自启
这里使用Systemd进程守护,只适用于CentOS 7Debian 8+Ubuntu 16+等。

#修改下ExecStartPre源码路径即可,然后一起复制到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
WorkingDirectory=/root/UnblockNeteaseMusic
ExecStart=$(command -v 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 -p 4567" >> /etc/rc.local

Docker安装

1、安装Docker

#CentOS 6
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on

#CentOS 7、Debian、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

2、运行镜像

docker run --restart=always --name unmusic -d -p 4567:8080 nondanee/unblockneteasemusic

运行端口4567,自行修改。

使用

提示:使用方法可以选择修改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、设置代理
安卓系统:

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

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

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

Windows系统:

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

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

IOS系统:
这里很久前有人要博主详细说下IOS使用方法,对于不会设置的是挺复杂的,所以就截图说下,需要借助Shadowrocket工具。

#设置方法
打开小火箭 > 添加节点(类型选择HTTP,输入你的ip和端口,随便备注下,右上角完成即可) > 编辑配置 > 添加规则(类型选择USER-AGENT,选项选择网易云,用户代理输入NeteaseMusic*),保存即可。

请输入图片描述
macOS啥的,没设备就不测试了,直接列举下作者提供方法。

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

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

问题补充

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

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

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

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

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

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

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

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

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

Vultr新用户注册送100美元/16个机房按小时计费,支持支付宝,【点击查看】。
最后修改:2019 年 09 月 04 日 11 : 30 PM

发表评论

233 条评论

  1. hi

    Hi,这个挺好用的,我主要是翻墙回国听网易云音乐的,但是现在有个小问题,就是重启vps后,连接速度非常快,一首歌1-2秒就缓冲完成,基本都是跑满本地宽带,但是用了大约10多个小时之后,连接速度就变得很慢了,大约只有200-300KB/S,有时候甚至要缓冲加载一下。这时候再去重启vps,连接速度又变得非常快了。想问一下对于这样问题,有没有解决办法,谢谢了。

    1. Rat's
      @hi

      还有这种事,方法么有,没遇到过

      1. hi
        @Rat's

        有没有好的翻Q回国内的方法推荐,我目前只有美国的vps,我看你这里面有“为请求增加X-Real-IP参数解锁海外限制”,想问问这个能用来翻Q回国吗?翻Q回国也就主要听听歌和看国内网站的视频。

        1. Rat's
          @hi

          回国的话,试试用国内的服务器搭建个55R

          1. hi
            @Rat's

            国内服务器的带宽太小了,有的只是1mbps,4mbps这些,而且带宽费很贵

            1. Garasu
              @hi

              我可以把家里服务器分给你10mbps上行,当然价格好商量。

            2. xilailai
              @hi

              租一个国内代理

  2. zj

    部署完成后,灰色歌曲变成可点击状态,然后显示加载失败,把服务器打印的歌曲的http地址复制,在浏览器上可以播放。请问下这是什么原因了

    1. hdchieh
      @zj

      我也是这样的不知道你有没有解决,我在github上开了一个issue问这个问题

    2. Rat's
      @zj

      一直是失败?

  3. cilone

    才明白过来,原来帖子里是两种运行方法。用docker真方便,拉取代码—安装docker—用docker命令就好了。
    不过近期在ios客户端上使用挂了,mac上没问题。

    1. 月神夜
      @cilone

      老哥你mac怎么设置的,我mac上怎么不行

    2. Rat's
      @cilone

      要是真挂了,作者应该有办法补救,貌似经常在更新代码。

  4. silencial

    你好,请问这个可以直接在本地电脑搭建然后同一台电脑听歌吗?

    使用的 Ubuntu 系统,不清楚应该如何对应更改。

    1. Rat's
      @silencial

      可以在本地电脑。

      1. silencial
        @Rat's

        请问本地使用的话 host 文件中的服务器 ip 需要如何填写呢?
        使用的 Ubuntu 系统,目前无法正常使用。

        1. Rat's
          @silencial

          本地的话可以直接127.0.0.1

  5. 求解

    都配置好了 是我我自己的ip 但是收费的歌曲还是不能听. 这是为啥

  6. 走之

    docker真方便

  7. 热心市民、张生

    博主你好,我的/usr/bin/下没有'node',不知道是不是因为这个原因,没有成功,我也找不到其他地方有'node'

    1. Rat's
      @热心市民、张生

      安装nodejs的时候,有报错吗?检查的话,使用which node命令

      1. 热心市民、张生
        @Rat's

        谢谢博主的回复,我找到原因了,是因为看了其他的教程先,那个教程用的npm安装的,后来,自己找到了路径,现在可以了,两次谢谢博主

        1. Rat's
          @热心市民、张生

          最好只以一个教程为主,有些路径啥都不一样。顺便我改下Systemd配置文件吧,让node自己获取路径。

          1. 热心市民、张生
            @Rat's

            我之前都是看你的教程搞rclone、BT,这次搜索的时候那往篇排在前面就先看了那篇,然后悲剧了

            1. Rat's
              @热心市民、张生

              首先站内搜索,没有的再去百度。

  8. hjt

    感谢,转载下文章

    1. Rat's
      @hjt

      好的,留个出处就行了。

  9. Allen

    这个错误导致我轻量应用服务卡死了,求救Error: connect ETIMEDOUT 223.252.199.66:443

    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1106:14}
    1. Rat's
      @Allen

      这好像是连接超时啥的,具体解决可以参考这个:https://github.com/nondanee/UnblockNeteaseMusic/issues/110。

  10. bill

    我的为什么在Windows、安卓、ios上代理成功,到了Linux代理失败

    1. MenheraChan
      @bill

      Linux。作者说要自签证书,具体的GitHub都有写

    2. Rat's
      @bill

      Linux我到没试过,基本都是win和手机