Skip to content

Guide · Open source

How to use UnblockNeteaseMusic: run the proxy and set hosts or system proxy

Updated · written with AI from the project's own documentation and checked against our catalogue data

UnblockNeteaseMusic is an open-source MIT-licensed tool, written in JavaScript, that tries to revive songs the Netease Cloud Music client shows as greyed out. It runs a local proxy that swaps those song requests for matching tracks from other platforms such as QQ, Kuwo, Kugou and Migu. This guide shows you how to start it, point your client at it, and understand the limits before you rely on it.

UnblockNeteaseMusicnondanee/UnblockNeteaseMusic · ★ 17.3k · MIT

Quick start

  1. 1Start the proxy. Run the program with npx or Docker. Use -p 80 if you plan to use the hosts file method.
  2. 2Pick a routing method. Choose the hosts file method or the system proxy method, depending on your client and platform.
  3. 3Configure hosts or proxy. Add the two hosts lines pointing to your server, or set the PAC address or server address and port in your system network settings.
  4. 4Handle local-machine loops. If the program runs on the same machine, set the Netease IP with -f or use an upstream proxy with -u.
  5. 5Restrict access. If the server is reachable beyond your own machine, enable strict mode with -s and avoid the password option.
  6. 6Test a greyed-out song. Open the Netease client and play a track that was previously greyed out to confirm the proxy works.

What UnblockNeteaseMusic does and who it suits

Netease Cloud Music sometimes marks songs as unavailable, often because of licensing or region. UnblockNeteaseMusic runs a local proxy server that redirects those song requests to matching tracks from other platforms, and it can also act as a full HTTP/HTTPS system proxy.

The project is a fit for people who use the Netease Cloud Music desktop or mobile client and hit greyed-out tracks, and who are comfortable editing a hosts file or setting a system proxy. It is not an official service: the README calls it a reverse-engineering workaround and says there is no public demo.

Install UnblockNeteaseMusic with npx or Docker

The README gives two quick ways to start the program. You need Node.js for the npx route; the README excerpt does not state a required Node.js version. Docker is an optional alternative.

  • Run with npx (Node.js required)
  • Run with Docker
$ npx @nondanee/unblockneteasemusic

Choose a method to route the client through the proxy

Method 1 edits your hosts file so that music.163.com and interface.music.163.com point to your server IP. The README says this method requires listening on port 80, so you must start the server with -p 80. If you run the program on the same machine, you must also set the Netease server IP with -f or use an upstream proxy with -u, otherwise requests can loop. The README notes that hosts editing does not work directly on the Android client.

Method 2 sets a proxy instead. Use the PAC script at http://<Server Name:PORT>/proxy.pac, or enter the server address and port as a global proxy. The README lists where to find this setting on Windows, UWP, Linux, macOS, Android and iOS.

  • Hosts file: add the two lines music.163.com and interface.music.163.com pointing to <Server IP>, with the server on port 80
  • System proxy: use the PAC address or the server address and port in your OS network settings
<Server IP> music.163.com <Server IP> interface.music.163.com

Use the command-line options

The program accepts flags that control the port, address, upstream proxy, forced Netease IP, source priority, authentication and strict mode. Run the help flag to see the full list on your installed version.

  • -p port: server port
  • -a address: server host
  • -u url: request through an upstream proxy
  • -f host: force the Netease server IP
  • -o source: set priority of music sources
  • -t token: proxy authentication (the README says it does not currently work)
  • -e url: replace the virtual endpoint with a public host
  • -s: strict mode, which only allows Netease domains
$ unblockneteasemusic -h

Secure the proxy before exposing it

Do not run the proxy on the public internet without protection. The README strongly recommends strict mode (-s), which only passes requests for Netease domains, and says this needs PAC or hosts. The README also says the password option does not currently work on the Windows client or macOS system settings, so do not rely on it.

Do not use public proxy services run by other people, because the README warns of security risks.

Use it as a Node.js library

Developers can install the package with npm and call the matching function directly. The function takes a Netease song ID and an optional list of sources, and returns a promise. The README example shows optional global proxy and hosts settings.

$ npm install @nondanee/unblockneteasemusic

What people use it for

  • Playing a greyed-out track in the Netease Cloud Music desktop client on Windows or Linux
  • Routing a macOS or Windows client through a PAC script instead of editing hosts files
  • Running the proxy in Docker on a home server for devices on your local network, with strict mode enabled
  • Calling the matching function from a Node.js script to find a song on QQ, Kuwo or Migu by Netease song ID

Frequently asked questions

Is UnblockNeteaseMusic free to use?

The project is released under the MIT License, as stated in the README. The license covers the code; the README does not describe any paid tier.

How do I install UnblockNeteaseMusic?

The README gives two commands: npx @nondanee/unblockneteasemusic to run it through Node.js, or docker run nondanee/unblockneteasemusic with Docker. The npm package can also be installed as a library with npm install @nondanee/unblockneteasemusic.

What do I need to run UnblockNeteaseMusic?

You need Node.js for the npx or npm route. Docker is optional. The README excerpt does not state a minimum Node.js version, so check the project page for that.

Why does the proxy need port 80 for the hosts method?

The README says the hosts file method must listen on port 80, so the server must be started with -p 80. For the system proxy method, you enter the port you chose.

Is it safe to expose the proxy to the internet?

The README strongly warns against it. If you must, use strict mode (-s) to limit traffic to Netease domains, and note that the password option does not currently work.

What are alternatives to UnblockNeteaseMusic?

The README credits similar projects, including ITJesse/UnblockNeteaseMusic, yi-ji/NeteaseMusicAbroad, EraserKing/CloudMusicGear and YiuChoi/Unlock163Music. Compare their setup and platform support before choosing one.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

UnblockNeteaseMusic suits people who already use the Netease client, hit greyed-out songs, and are comfortable editing a hosts file or system proxy settings. It is a reverse-engineering workaround with no official support, and several clients need self-signed certificates or extra steps. If you want a supported, no-setup service, pick a different option.

Install options & downloads