Setting Up a Minecraft Network With a Proxy (BungeeCord/Velocity)
Explains how to use Velocity or BungeeCord to link multiple Minecraft servers into one network with a central lobby.
Want to link multiple Minecraft servers (such as a lobby, a survival server, and a minigame server) into one network where players can seamlessly switch between them? This can be done with a proxy such as Velocity or BungeeCord.
Velocity or BungeeCord?
We recommend Velocity for new networks: it is faster, more modern, and actively maintained. BungeeCord is still used because of older plugins that don't support Velocity.
Step 1. Set up a separate proxy server
See our article How Do I Install Velocity on My Minecraft Server? for installing Velocity.
Step 2. Put your existing servers behind the proxy
- On each backend server (for example your lobby and survival server), open the
server.propertiesfile. - Set
online-modetofalseon these servers, because the proxy handles player authentication. - Note down the internal IP and port of each server.
Step 3. Link the servers in the proxy configuration
- On the proxy server, open the configuration file (
velocity.tomlfor Velocity,config.ymlfor BungeeCord). - Add each backend server with a name and the internal address.
- Set which server players first arrive on (usually the lobby).
Note: Never set
online-modetofalseon a server that is directly reachable (without a proxy) by players, this makes the server unsafe for name spoofing.
Troubleshooting
- Players don't get through the proxy: check whether the backend servers have
online-mode: falseand whether the addresses in the proxy configuration are correct. - "Modern forwarding" error: check whether the forwarding secret/mode matches on both the proxy and the backend server(s) (especially relevant with Velocity).
Still stuck, or would you like help setting up your network? Feel free to reach out via Discord or create a support ticket.
