Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

食用指南 #22

Open
nondanee opened this issue Oct 13, 2018 · 445 comments
Open

食用指南 #22

nondanee opened this issue Oct 13, 2018 · 445 comments
Labels
pinned Something is important

Comments

@nondanee
Copy link
Owner

nondanee commented Oct 13, 2018

应课代表 @theandychung 的 PR #21 增加详细使用教程
若仍有部署安装上的问题请在下方评论
改进意见、bug 反馈等请新开 issue

P.S. 参与讨论并解决了疑问之后,可以点右侧 Unsubscribe 取消提醒,以防邮箱爆满
P.P.S. clone 了旧代码的同学请定期 git pull 更新, fork 了旧代码的同学请定期 New pull request 同步

在 follow 下面的步骤之前,希望你已仔细阅读过 README 中的 "使用" 部分,对配置过程也有初步了解

本篇为基础配置,所有平台通用
README 中提到对部分平台客户端有额外要求,相关教程参考其它带有紫色 "pinned" 标签的 issue

@nondanee
Copy link
Owner Author

nondanee commented Oct 13, 2018

安装 Node.js

使用 Docker 的同学请忽略

Windows

Download | Node.js
下载 .msi 安装包并安装

macOS

Download | Node.js
下载 .pkg 安装包并安装

Linux

Installing Node.js via package manager | Node.js
参照教程安装 nodejs

当然用 macOS 的 Homebrew,Windows 的 Scoop 等包管理器安装也可以,根据个人喜好选择即可

Android 平台的终端模拟器如 Termux,NeoTerm 等也可以安装 Node.js,教程非常多,请善用搜索

@nondanee
Copy link
Owner Author

nondanee commented Oct 13, 2018

下载项目

使用 Docker,npx,npm 全局安装的同学请忽略

方法❶ 使用 Git 克隆

git clone https://github.com/nondanee/UnblockNeteaseMusic.git #克隆项目仓库
cd UnblockNeteaseMusic #进入项目根目录

方法❷ 下载源码压缩包

项目首页点击 Clone or download 绿色按钮,选择 Download ZIP 并解压
或在 Release 页面下载 Assets 中的 Source code (zip)Source code (tar.gz) 压缩包并解压

打开项目目录后

Windows 用户请按住 Shift 后点击右键,选择 "在此处打开 PowerShell 窗口(S)"
macOS 用户可以借助 OpenInTerminal,Go2Shell 等工具快捷打开终端窗口

@nondanee
Copy link
Owner Author

nondanee commented Oct 13, 2018

安装依赖

不需要

启动方式

下述启动命令 node app.js 可以等效替换为

npx @nondanee/unblockneteasemusic
# npm i -g @nondanee/unblockneteasemusic
unblockneteasemusic
docker run [OPTIONS] nondanee/unblockneteasemusic

如果看不懂请直接忽略

@nondanee
Copy link
Owner Author

nondanee commented Oct 13, 2018

使用方法① (代理模式)

1. 直接启动

node app.js

2. 配置代理

各系统下的基础配置参见 README

  • PAC 模式

填写脚本地址 http://127.0.0.1:8080/proxy.pac

  • 全局代理模式

填写服务器地址 127.0.0.1 和端口号 8080

由于网易云 Windows 客户端的 Bug,测试代理会报错 "该代理不可使用",实际并不影响
看到 Server running @ http://0.0.0.0:8080 之后出现如 MITM > ... 的请求日志即配置成功

@nondanee
Copy link
Owner Author

nondanee commented Oct 13, 2018

使用方法② (hosts 模式)

1. 寻找网易云服务器的IP

ping music.163.com

得到类似 223.252.199.66 的IP

2. 向hosts文件添加记录

127.0.0.1 music.163.com
127.0.0.1 interface.music.163.com

Windows hosts C:\Windows\System32\drivers\etc\hosts
Linux/macOS hosts /etc/hosts

3. 设置参数启动

node app.js -p 80 -f 223.252.199.66

若在 linux/macOS下报错 Error: listen EACCES 0.0.0.0:80 请加 sudo

@nondanee
Copy link
Owner Author

nondanee commented Oct 13, 2018

其它配置

参数可叠加

开启严格模式

node app.js -s ...

设置搜索的音源 (有序)

默认为 qq kuwo migu,排在越前优先级越高,启用越多网络开销越大

node app.js -o joox qq ...

使用自定义端口

node app.js -p 5000 ...

使用 jixun 的反代服务器

node app.js -f 79.137.38.20 ...

使用上游 http / https 代理

node app.js -u http://127.0.0.1:1080 ...

@nondanee nondanee added the pinned Something is important label Oct 13, 2018
@johoney
Copy link

johoney commented Oct 14, 2018

这对于没有基础的人来说太难了,我用node.js里面的command通过 CD 进入目录来安装commander,然后输入 node app.js 它提示 Server running @ http://0.0.0.0:8080,可是通过客户端设置代理却说代理不可用

@johoney
Copy link

johoney commented Oct 14, 2018

能出个简易的视频教程吗?@nondanee,windows下真的不会弄

@nondanee
Copy link
Owner Author

@johoney 抱歉啊忘记说明了,Windows客户端设置代理报不可用是正常的😂,网易云自己的bug,只要running提示底下有新的代理请求日志就是成功了

@johoney
Copy link

johoney commented Oct 20, 2018

@nondanee 好的谢谢,已经成功解决了,不过我有个问题可以设置类似快捷启动的东西,然后打开这个就能迅速启动代理吗,我希望可以把它加入到shell:startup,这样就不用那么麻烦的启动了。记得之前这个项目是有exe的,不过最近失效了所以我才使用了这个最新的程序了。

@nondanee
Copy link
Owner Author

@johoney
因为 release 麻烦啊,所以不发可执行文件了😂
项目根目录里新建一个 .bat 文件,写入 node app,之后双击就可以启动了
或者在项目根目录执行 npm link,之后在命令行或者 win +r 里直接输入 unblockneteasemusic 就能启动

@johoney
Copy link

johoney commented Oct 20, 2018

@nondanee 太谢谢你了,开发者真棒!

@johoney
Copy link

johoney commented Oct 20, 2018

bat比较实用

@shugo-chara
Copy link

shugo-chara commented Oct 21, 2018

@nondanee 居然贴心的出了这么详细的图文教程拉过来猛抱抱~
最近好像用之前打包好的文件不太稳定,新版不提供打包好的文件有点点不便。。
顺便问一下有办法在路由器里做启动么,省的每台设备都要启动一下。。

@nondanee
Copy link
Owner Author

@shugo-chara
只有文没有图😂
更新很频繁,打包太累了,有 node 环境的话你可以自己打包

npm install pkg
npm run pkg

额路由器上运行的话估计不太现实。。。局域网里找一台常开的电脑跑着就行了

@spencerwooo
Copy link

建议把这里的说明添加到 Wiki 里面,感觉大家不会来 Issue 里面找教程的。(逃走 ε=ε=ε=┏(゜ロ゜;)┛

@nondanee
Copy link
Owner Author

@spencerwoo98 因为写wiki里不好回复啊😥

@shugo-chara

This comment has been minimized.

@nondanee

This comment has been minimized.

@shugo-chara

This comment has been minimized.

@nondanee

This comment has been minimized.

@gqbre
Copy link

gqbre commented Nov 7, 2018

----------------------------- 19.12.16 更新-----------------------------
网易云音乐 Mac 客户端更新
目标代理域名更新为:*.music.163.com;*.music.126.net;*.netease.com;

----------------------------- 19.06.28 更新-----------------------------

mac 搭配 Proxifier 配置参考

mac 需要使用 **https 代理 两个程序:NeteaseMusic;com.apple.WebKit.Networking
目标代理域名只需要写:*.music.163.com;*.music.126.net;*.netease.com;
image

需要在所有客户端(mac, iPhone 等)安装仓库里的证书并设置信任(参考#65 (comment)
有人反映使用仓库的证书 iOS 不能正常使用,我使用的是自签证书 暂时没有问题。
服务端启动命令为 node app.js -p port1:port2,客户端需要使用的是 port1 端口(port2 是用来内部转发的 https 端口,随便写一个就行)
放在 VPS 上跑也一样,客户端安装并信任了证书就可以了

iOS 使用配置参考

iOS 上我使用的是 Shadowrocket (参考:#65 (comment)

  1. 右上角加号添加节点,填一个备注名比如 UnblockNetease
  2. 类型选择 HTTP (注意不是HTTPS)
  3. 服务器填写你搭建服务的 IP 地址
  4. 端口填写你启动服务的端口号 (就是 port1)
  5. 然后底部找到配置 点击本地文件 -> default.conf(你当前使用的配置) -> 编辑配置 -> 添加规则
  6. 添加下面三条规则,选项都选择刚添加的 UnblockNetease 节点,类型和用户代理/域名如下
  • USER-AGENT: NeteaseMusic*
  • DOMAIN-SUFFIX: music.163.com
  • DOMAIN-SUFFIX: music.126.net

PS. 记得安装证书并信任,添加了之后不行的话重置一下 Shadowrocket 再试

丢个链接,详细教程 https://www.sheyilin.com/2019/06/unblockneteasemusic/

@PLUSLEE
Copy link

PLUSLEE commented Nov 7, 2018

Windows碰到这种情况该怎么办呢?小白一个,只看得懂第二种方法,然而会直接报错...

G:\NeteaseMusic\UnblockNeteaseMusic-master>node app.js -p 80 -f 59.111.160.197
Server running @ http://0.0.0.0:80
events.js:167
      throw er; // Unhandled 'error' event
      ^

Error: listen EACCES 0.0.0.0:80
    at Server.setupListenHandle [as _listen2] (net.js:1269:19)
    at listenInCluster (net.js:1334:12)
    at Server.listen (net.js:1421:7)
    at Promise.all.then.result (G:\NeteaseMusic\UnblockNeteaseMusic-master\app.js:58:9)
    at process._tickCallback (internal/process/next_tick.js:68:7)
Emitted 'error' event at:
    at emitErrorNT (net.js:1313:8)
    at process._tickCallback (internal/process/next_tick.js:63:19)

@nondanee
Copy link
Owner Author

nondanee commented Nov 7, 2018

@PLUSLEE 管理员身份启动命令行试一下,也检查一下80端口是否被其它程序使用

netstat -ano | find "80"

@PLUSLEE
Copy link

PLUSLEE commented Nov 7, 2018

@nondanee 谢谢,跑通了...客户端少了一步。万分感谢!从即刻App关注的“网路冷眼”微博上发现这个好东西

@daorren
Copy link

daorren commented Nov 15, 2018

我的使用情况是,
服务想安装在公网服务器上,但不能运行在80端口。——修改hosts文件方式不可用
本机运行一个SS客户端,系统代理已经被它的pac地址占据了——修改系统代理也不可用

SS的pac文件是工具生成的,所以还不好做修改
感觉需要一个工具串联不同代理了,不知道有没有这样的软件

@gqbre
Copy link

gqbre commented Nov 15, 2018

@daorren

  1. 好像无解
  2. SS 客户端,代理设置,编辑 pac 用户自定规则,试试看

@daorren
Copy link

daorren commented Nov 15, 2018

@gqbre
这个理论上没用的,SS的pac文件是用gfwlist2pac生成的,自定义规则那里只是配置了需要代理的数据项

@nondanee

This comment has been minimized.

@jiyu-sheng
Copy link

想问一下为什么我windows下用host方法失败了0_0
用pac和在网易云里面手动代理都可以正常工作
参考了使用方法2
启动:node app.js -p 80 -f 59.111.181.38
host改了也flush过了
打开网易云还是灰的 music.163.com访问不了
全程无报错 log也毫无反应
然后安卓下改host也是一样的问题 pac正常
谢谢

@cryyin
Copy link

cryyin commented Jul 5, 2020

问一下怎么部署到winserver给安卓用啊?还是说要搭配v2ray
ipad已经可以用了但三星不行
没事了升级了就好了

@sean908
Copy link

sean908 commented Jul 11, 2020

mac下有没有一个比较完整的教程啊?
issue套issue, 照着 自签了证书、改了hosts文件、用了代理软件,最后还是用不起来的表示很着急。。。

@MagicofD
Copy link

亲测好用,已star。但是我发现windows上host模式不咋好使?用代理模式成功了

@Aqua-Dream
Copy link

请问下以后是否可能支持服务器端的登录,如果服务器端登录VIP账号用来获取url则客户端账号无需VIP,更加方便

@lemonchan1
Copy link

lemonchan1 commented Sep 14, 2020

每次都要开powershell好麻烦啊,能不能直接用全局pac代理呢
我之前看过有另一个github里面的pac文件的代理,好像可以用,但是不知道会不会有问题
批注 2020-09-14 203103
纯小白,想问问用这个文件本地设置全局代理的话,会不会有安全问题@nondanee 求解答

@saltfishh
Copy link

saltfishh commented Nov 13, 2020

使用方法② (hosts 模式)

1. 寻找网易云服务器的IP

ping music.163.com

得到类似 223.252.199.66 的IP

2. 向hosts文件添加记录

127.0.0.1 music.163.com
127.0.0.1 interface.music.163.com

Windows hosts C:\Windows\System32\drivers\etc\hosts
Linux/macOS hosts /etc/hosts

3. 设置参数启动

node app.js -p 80 -f 223.252.199.66

若在 linux/macOS下报错 Error: listen EACCES 0.0.0.0:80 请加 sudo

你好,我是改host的模式,已经自签了证书并将server.crt和server.key覆盖到unblock项目下,
接着启动项目 node app.js -p 80 -f 59.111.181.60 报了个错

> Error: unable to verify the first certificate
at TLSSocket.onConnectSecure (node:_tls_wrap:1498:34)
at TLSSocket.emit (node:events:329:20)
at TLSSocket._finishInit (node:_tls_wrap:933:8)
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:707:12) {
code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
}

请问这种情况是否遇到过 QAQ

已经成功解决了,谢谢大佬~

@saltfishh
Copy link

mac下有没有一个比较完整的教程啊?
issue套issue, 照着 自签了证书、改了hosts文件、用了代理软件,最后还是用不起来的表示很着急。。。

https://www.sheyilin.com/2019/06/unblockneteasemusic
可以参考一下

@SethLee
Copy link

SethLee commented Nov 20, 2020

iOS弄了一下可以听了,可是没办法下载歌曲,一直在获取文件大小,有办法解决吗?

njzydark pushed a commit to njzydark/UnblockNeteaseMusic that referenced this issue Dec 3, 2020
@4285f4
Copy link

4285f4 commented Dec 14, 2020

请问安卓使用 http://ip:port/proxy.pac 的代理自动配置方式,会导致微信无法打开部分网页(目前发现金山的在线文档和问卷星的问卷网页)和京东部分页面无法正常加载如何解决?

@L-Ryland
Copy link

Mac要怎么食用呢?
研究了一下没有找到mac 网易云的代理设置选项

@llllcccjjj
Copy link

Mac要怎么食用呢?
研究了一下没有找到mac 网易云的代理设置选项

油管有一个教程的,一个视频一会就可以搭好了

@L-Ryland
Copy link

喵喵?求link? 有搜到的都是關於Proxifier代理network, 這樣和pac代理就沒有區別了

@cabalistljt
Copy link

windows运行node app.js后,使用全局代理模式之后,在网易云代理测试会显示MITM>music163.com
但是打开客户端却提示网络不给力哦,这是什么情况呢?

@ymg0827965
Copy link

这对于没有基础的人来说太难了,我用node.js里面的command通过 CD 进入目录来安装commander,然后输入 node app.js 它提示 Server running @ http://0.0.0.0:8080,可是通过客户端设置代理却说代理不可用

我用termux也是这样,怎么解决的呀,我的是Android端

@ghost
Copy link

ghost commented Jan 22, 2021

关于UWP问题,其实还可以用一个程序:Fiddler 4

@myfreax
Copy link

myfreax commented Apr 16, 2021

Hello every one,我编写一个一键配置脚本,欢迎使用
huangyanxiong01/auto-unlock-netease-music

@DoveBoy
Copy link

DoveBoy commented Apr 17, 2021

有没有适配兼容clash可以用的配置单?

@ixmu
Copy link

ixmu commented Jul 12, 2021

使用方法② (hosts 模式)

1. 寻找网易云服务器的IP

ping music.163.com

得到类似 223.252.199.66 的IP

2. 向hosts文件添加记录

127.0.0.1 music.163.com
127.0.0.1 interface.music.163.com

Windows hosts C:\Windows\System32\drivers\etc\hosts
Linux/macOS hosts /etc/hosts

3. 设置参数启动

node app.js -p 80 -f 223.252.199.66

若在 linux/macOS下报错 Error: listen EACCES 0.0.0.0:80 请加 sudo

mac v700,修改了hosts,node启动-p 80 -f ping网易得到的地址 客户端启动网络有问题,无响应?有什么办法吗?多谢,是否我有遗漏的操作.

Hosts的方式貌似用不了
root@10-23-129-163:~/UnblockNeteaseMusic# node app.js -p 80 -f 59.111.160.197
HTTP Server running @ http://0.0.0.0:80
MITM > interface.music.163.com
MITM > interface.music.163.com
MITM > interface.music.163.com
MITM > interface.music.163.com
MITM > music.163.com

music.163.com 无法访问

@SunOfHomeBoy
Copy link

直接 执行 npx @nondanee/unblockneteasemusic
npx: installed 1 in 3.086s
HTTP Server running @ http://0.0.0.0:8080

但是 配置到 网易云 Http代理,重启 提示没有网络

@ghostning
Copy link

ghostning commented Jun 2, 2022

网易云填入代理后测试可用,实际没用。我在琢磨琢磨其他方式

@Beigu911
Copy link

感谢开发者

@felix-git-hub
Copy link

win也需要自签证书么,我装了推荐的docker一开始win正常解锁,第二天就不行了,网页访问提示证书问题

@hosts765614407
Copy link

hosts765614407 commented May 29, 2024

使用 node-windows 将项目注册为 Windows 服务
步骤一:安装 node-windows
以管理员身份运行命令提示符
按下 Win 键,输入 cmd。
右键点击“命令提示符”应用,然后选择“以管理员身份运行”。
打开命令提示符,
1、导航到你的项目目录
如:项目文件你放在e盘的根目录,即为:cd /d E:\server-enhanced
image

2、成功导航过去后,开始安装node服务:npm install node-windows

步骤二:创建服务脚本
在项目的根目录里面创建一个名为 service.js 的文件,内容如下:
const Service = require('node-windows').Service;

// 创建一个新的服务对象
const svc = new Service({
name: 'UnblockNeteaseMusicServer',
description: 'Unblock Netease Music Server',
script: 'E:\server-enhanced\nw.js', // 确保这个路径是正确的
nodeOptions: [
'--harmony',
'--max_old_space_size=4096'
]
});

// 监听 "install" 事件,让服务安装后启动
svc.on('install', function() {
svc.start();
console.log('Service installed and started');
});

// 安装服务
svc.install();
image

粘贴以上内容,注意script配置的路径是否正确,这里script配置的路径是我自己的,搞定后保存文件

3、在刚才的命令窗口运行刚刚创建的service.js脚本:node service.js
image

4、启动服务:net start UnblockNeteaseMusicServer
image

这样子就搞定了
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pinned Something is important
Projects
None yet
Development

No branches or pull requests