Tutorials
Configuring and managing your server

How to setup a BungeeCord server ?

If you're running multiple Minecraft servers, you may have run into the challenge of connecting them in a way that allows players to easily move between them. That's where BungeeCord comes in. BungeeCord is a powerful Minecraft server proxy that allows you to connect multiple servers together and create a network of servers that players can seamlessly move between.

BungeeCord works by acting as a middleman between your Minecraft servers and your players. When a player connects to your network, they connect to the BungeeCord server first. From there, BungeeCord routes the player to the appropriate Minecraft server based on the player's choice or the server load.

One of the biggest benefits of using BungeeCord is the ability to create a network of servers that share player data. This means that players can move between servers without losing their inventory, experience, or other important data. BungeeCord also allows you to set up a shared chat between servers, so players can communicate with each other no matter which server they're on.

Another benefit of BungeeCord is the ability to balance server load. BungeeCord can automatically distribute players across your servers based on how busy each server is. This means that if one server is overloaded with players, BungeeCord can automatically route new players to a less busy server.

In terms of compatibility, BungeeCord is designed to work with most Bukkit plugins and can be easily integrated into your existing server setup. The plugin is also regularly updated, so you can expect it to work well with the latest version of Minecraft.

Overall, if you're running multiple Minecraft servers and want to create a seamless network for your players, BungeeCord is an excellent option to take your Minecraft server to the next level.


Requirements

You must have at least 3 Minecraft servers :
- One for the main proxy that run
BungeeCord, the players will use this server address to connect.
- One for the
Lobby, under Spigot or PaperMC, this will welcome your players, and allow them to navigat to each server.
- One at least for the first
world that you want to host.


Installing Bungeecord on proxy server

To install Bungeecord on your first proxy server, go under the "Version" page, search for Bungee, then select "Bungeecord", here we install the 1.17.



Wait for the installation, then start the server to create the server files.

To configure BungeeCord, you need to simply edit the file named "config.yml", that is found under your root server folder.

Go on the webftp to edit the file "config.yml"



Then search for this part :

Edit the default address section "localhost:25565", to your lobby server addresse:port, for me here it's lobby1.mchost.pro:27668,
So your file should now look like
(put your server address and port, not this one)

Now, that we added our lobby server, we also need to add our first game server to the list.
For this, simply copy/past the lobby, and edit name and the
adresse:port the same way you did for the lobby, but this time put the first game server addresse:port.
Note that you can also change the motd at the same time here.

So your file should now look like :

If you want to add more server, just proceed in the same way.

Once you add your servers to the list, you need to set a server priorities, go a bit down in the config.yml file, you will find this line :

You need to add the server names that you previously entered, classed by importance, generally you let the lobby first, so for us it's looking like :



Now, you need to set to True the ip_forward, bellow the priorities that you just configured, to allow you to IP Ban players, otherwise all players will share the same IP address, and you won't be able to ban them this way.

So you will have this :


Now save your modifications, and then restart your BungeeCord server.


Installing Bungeecord on game servers


To Install Spigot or PaperMC or each game server, you must install the same version that on the bungeecord proxy, here the 1.17.

You need to change the online-mode to false on each game server, /!\ exept the Bungeecord server.
For this, simply switch off the online mode from each game server panel page, and then restart them.

To secure your bungeecord network, and avoid players to directly connect to your games server without passing by the Bungeecord server, you need allow only the ip address of the BungeeCord server to connect to them.


For this, we will install the plugin IPWhitelist on each game server, exept the Bungeecord server.
https://www.spigotmc.org/resources/ipwhitelist.61

This plugins is smart, if you configured correctly, he will detect and automatically whitelist the first IP address to connect, so from your Bungeecord connection, and reject all other.
If not, you can manually amange the whitelisted IP with the commands to add the
Bungeecord server IP Address.
/ipwl addip <ip> - Adds the IP to the whitelist
/ipwl remip <ip> - Removes the IP of the whitelist
/ipwl list - Lists all whitelisted IPs

On each game server, beside the Bungeecord server, you need to configure bungeecord to true to allow you them to accept connections from the bungeecord server.
So, on each game server, start them to generate the server files, open the file named
"spigot.yml"

and set to true the bungeecord setting, like this :

Then restart each game server.


You configued your first Bungeecord server, and you can now connect to.
If you have issues, check the bungeecord server logs to understand the reason, and recheck each configurations part.


For advanced users

You can also check the other configuration parameters :
https://www.spigotmc.org/wiki/bungeecord-configuration-guide/

The plugins for Bungeecord here, as you will need to configure your lobby
https://www.spigotmc.org/resources/categories/bungee-proxy.3/