Skip to main content
← All Guides
Networking · 9 min read

How to Set Up BungeeCord / Velocity

Build a Minecraft network with BungeeCord or Velocity, proxy install, server connection, IP forwarding and choosing between them.

A proxy lets players join one IP and switch between multiple Minecraft servers (lobby, survival, PvP, creative). BungeeCord and Velocity are the two main options. This guide covers the setup for both and which one to choose.

BungeeCord vs Velocity

BungeeCordVelocity
PerformanceOlder, single-thread for many tasksModern, async, faster
Plugin ecosystemHuge, matureGrowing fast, all the modern ones
Modded supportLimited (FMLForge etc.)Stronger, native support for newer protocols
Forwarding modesLegacy (insecure) + BungeeGuardModern signed forwarding (secure by default)

For new networks in 2026: pick Velocity. BungeeCord still works but Velocity is faster, more secure, and the active community has moved.

1. Velocity setup

Download Velocity from papermc.io. Put on its own machine or its own folder. Start once to generate velocity.toml and forwarding.secret.

2. Configure proxy port and servers

In velocity.toml:

bind = "0.0.0.0:25565"
motd = "&6My Network"
player-info-forwarding-mode = "modern"

[servers]
lobby = "127.0.0.1:25566"
survival = "127.0.0.1:25567"
pvp = "127.0.0.1:25568"

try = ["lobby"]
[forced-hosts]
"survival.example.com" = ["survival"]

3. Wire up the backend Paper servers

On each Paper server, in server.properties:

online-mode=false
server-port=25566   # match what's in velocity.toml

In config/paper-global.yml:

proxies:
  velocity:
    enabled: true
    online-mode: true
    secret: "PASTE_FROM_FORWARDING_SECRET_FILE"

Restart. Players now join via the proxy and get authenticated properly.

4. Firewall

Block port 25566/25567/25568 from the internet. Only the proxy machine should reach them. Otherwise an attacker can connect directly to a backend with online-mode=false and impersonate anyone.

5. BungeeCord setup (if you must)

Same shape: download BungeeCord, edit config.yml:

listeners:
- query_port: 25577
  host: 0.0.0.0:25565
  motd: '&6My Network'
servers:
  lobby:
    motd: 'lobby'
    address: 127.0.0.1:25566
    restricted: false
ip_forward: true

Backend Paper: online-mode=false and bungeecord: true in spigot.yml. Always also install BungeeGuard on every backend to prevent the well-known Bungee exploit.

6. Plugins that span the network

Use plugins designed for proxies for these features:

  • Chat across servers: PlasmaVoice, RedisChat, BungeeChat, Velocity AdvancedChat.
  • Bans across servers: LiteBans.
  • Permissions: LuckPerms with MySQL backend.
  • Player connection: /server <name> built-in to both proxies.

7. Crossplay (Java + Bedrock)

Install Geyser + Floodgate on the proxy. Bedrock players connect to the same IP/port (with optional secondary port) and join as auth-bypassed Java accounts.

8. Common pitfalls

  • Backend exposed to the internet with online-mode=false , instant compromise.
  • Forgetting BungeeGuard on BungeeCord setups.
  • Mismatched forwarding mode , players join as offline UUIDs and lose all data.
  • Using legacy forwarding in 2026 , switch to modern Velocity forwarding.

Want to see all this in action? Astroworld MC runs a custom-built economy survival server with custom bosses, eternal enchants, crates and an auction house. Join at astroworldmc.com , IP play.astroworldmc.com, Java + Bedrock crossplay.

Related Tools & Resources

🔧

Minecraft Tools

Calculators, generators & server tools

🧱

Item Database

Browse all Minecraft items, stats & recipes

⚒️

Crafting Recipes

Visual crafting guides for every recipe