How to Add Sub-Servers to BungeeCord
Learn how to register backend servers on a BungeeCord or Waterfall proxy, configure connections, and manage player routing.
Growing Your BungeeCord Network
BungeeCord and its fork Waterfall let you connect multiple Minecraft servers under a single IP address. To add sub servers bungeecord networks require you to register each backend in the proxy's config, set up IP forwarding, and make sure each server runs on a unique port.
Preparing the Backend Server
Install your new server (Spigot, Paper, or Purpur) and configure server.properties:
server-port=25567
online-mode=false
Then enable BungeeCord IP forwarding in spigot.yml:
settings:
bungeecord: true
We strongly recommend also installing BungeeGuard to authenticate proxy connections. Without it, players can spoof identities by connecting directly.
Registering the Server in BungeeCord
Open config.yml in your BungeeCord directory. Find the servers section:
servers:
lobby:
motd: '&aLobby Server'
address: 127.0.0.1:25566
restricted: false
survival:
motd: '&aSurvival World'
address: 127.0.0.1:25567
restricted: false
creative:
motd: '&aCreative Plots'
address: 127.0.0.1:25568
restricted: false
Each server needs a unique name, the correct IP and port, and a MOTD. The restricted flag controls whether players need a permission to access that server.
Setting the Default Server
In config.yml, find the listeners section and set default_server and fallback_server:
listeners:
- host: 0.0.0.0:25565
default_server: lobby
fallback_server: lobby
forced_hosts:
survival.example.com: survival
creative.example.com: creative
When players first connect, they land on the default_server. If their current server crashes, they go to fallback_server.
Moving Players Between Servers
BungeeCord provides a built-in /server command. For a better player experience, use a hub plugin with NPC selectors or menu-based navigation. See our server hub guide for setup details.
Forced Hosts
Forced hosts let players join a specific sub-server via a subdomain. Create DNS records for each subdomain pointing to your proxy IP, then list them in the forced_hosts section. This is useful when you want to add sub servers bungeecord players can reach directly without going through the lobby first.
Common Mistakes
- Port conflicts: Each server must use a different port. Two servers on the same port will fail to start.
- Forgetting online-mode=false: Backends must not verify players against Mojang, since the proxy handles authentication.
- Not restarting BungeeCord: Config changes require a proxy restart to take effect. Hot-reloading is unreliable.
When you add sub servers bungeecord setups become full networks. Combine this with shared data linking to keep inventories and economies synchronized across all your servers.
See a polished network in action: Astroworld MC, IP play.astroworldmc.com, Java + Bedrock.