Direct answer

A Minecraft proxy is a separate server process that sits in front of one or more backend Minecraft servers. Players connect to the proxy first; the proxy can then route them to a lobby, survival server, minigame server, modded server, or another backend without making players reconnect to a different public address.

You usually do not need a proxy for one normal Minecraft server. Add one when you actually need multiple backends, centralized connection handling, or network-level routing.

What a proxy actually does

A proxy such as Velocity or BungeeCord accepts the player's network connection and then opens a separate connection to a backend server on the player's behalf. It can provide one public entry point for an entire network and decide which backend each player should join.

A proxy is not a replacement for Paper, Purpur, Fabric, Forge, or another game server. Those backends still run the worlds and gameplay. The proxy handles connections between the player and those servers.

When a proxy makes sense

  • Multiple servers: you have a lobby plus survival, minigames, creative, events, or other separate backends.
  • One public address: players should connect to one hostname and move between backends without manually changing server addresses.
  • Network-wide routing: you want forced hosts, fallback servers, or a central place to control where players connect.
  • Network-level plugins: some features need to operate at the proxy layer rather than inside one backend server.
  • Scaling or isolation: different workloads can run on separate JVMs or machines instead of one server process.

When you probably do not need one

If you run one Paper, Purpur, Fabric, Forge, or Vanilla server and players only need to join that one world/server process, a proxy normally adds complexity without solving a real problem. You now have another process, another port, another configuration, player forwarding, firewall rules, and another place where a connection can fail.

Do not add Velocity or BungeeCord simply because a setup guide calls it an optimization. A proxy does not automatically make one backend server faster.

Authentication and player forwarding

Important security pointIn a typical proxy network, backend servers may use online-mode=false because the proxy authenticates players. That does not mean the backends should be exposed directly to the internet.

With Velocity modern forwarding, the proxy forwards player information such as UUIDs, addresses, and skins using a shared secret. Paper's documentation recommends modern forwarding for Minecraft 1.13+ when possible. Legacy BungeeCord-style forwarding has wider old-version compatibility but is fundamentally less secure.

After placing a backend in offline mode, secure it so players cannot bypass the proxy and connect directly. Use the proxy's documented forwarding method and appropriate firewall/network isolation.

Velocity vs BungeeCord

Velocity is PaperMC's modern proxy and supports modern player information forwarding. BungeeCord is the older SpigotMC proxy with a large historical ecosystem. Which one fits depends on your plugins, versions, and network requirements, but new networks should compare their current documentation instead of assuming old BungeeCord tutorials apply to Velocity.

A simple network layout

Players
   |
   v
Velocity / BungeeCord  <-- public address
   |        |        |
   v        v        v
Lobby    Survival   Minigames
backend   backend    backend

Only the proxy needs to be the normal public entry point. Backend servers should be reachable by the proxy but protected from untrusted direct connections.

References

These sources were checked while preparing this article. Version-specific behavior can change, so use the documentation for your exact server and client versions when details differ.

Was this article helpful?
Help us improve this article

Tell us what is missing, unclear, outdated, or incorrect. You can also suggest something we should add.

What could we improve?
Do not include passwords, server IPs, or other private information.0 / 1000