Configuring player information forwarding
Velocity supports forwarding information about your players to your servers, such as IP addresses, UUIDs and skins. Velocity supports three forwarding formats:
- Velocity modern forwarding is a custom forwarding format (modern forwarding) that is more secure.
- BungeeCord forwarding (also known as legacy forwarding) which has better compatibility but is less secure.
- BungeeGuard, which is the same as BungeeCord forwarding but includes a secret key. It is better than BungeeCord forwarding alone, but it is less ideal than Velocity modern forwarding.
You may choose between only one of these forwarding formats. It is not currently possible to "mix and match" forwarding modes or use all the forwarding formats together. In general, if you are supporting clients using Minecraft 1.13 and newer only, use Velocity modern forwarding, else you must use BungeeCord forwarding.
Configuring modern forwarding
modern forwarding is a Velocity-native format. It forwards all player information in an efficient
binary format and employs a MAC code to make it much more difficult to trick the server into
impersonating your Velocity proxy. However, it is only available for Minecraft 1.13 or higher.
Modern forwarding is incompatible with Minecraft versions below 1.13, Minecraft Forge, and the ProtocolSupport plugin. If you use any of these, you will need to use legacy BungeeCord-compatible forwarding instead.
To use modern forwarding with any supported server implementation, set the
modern. Then, you need to ensure your server is properly configured
to use Velocity forwarding.
Configuring modern forwarding for Paper
Paper 1.14+ and above, along with Paper 1.13.1/1.13.2 build 377 and above support Velocity modern forwarding natively.
First, you need to disable the
online-mode setting in the
server.properties file. This prevents
the server from authenticating players, which the proxy will do instead.
You also need to disable BungeeCord forwarding if you had it enabled beforehand. Make sure
settings.bungeecord is set to
false in your
proxies.velocity.enabled to true and
proxies.velocity.secret, to match the secret in your
forwarding.secret file. You must also set
proxies.velocity.online-mode to the
online-mode setting in your
you're done editing
paper-global.yml, reboot your server.
If you are using Paper 1.18.2 or lower, you will find these options as
settings.velocity-support.online-mode in the
Configuring modern forwarding for Fabric
A mod called FabricProxy-Lite allows you to use Velocity modern forwarding with a modded server using Fabric.
Configuring legacy BungeeCord-compatible forwarding
Legacy forwarding is fundamentally insecure. If you must use it, you should understand how to secure your server properly. That page reviews all the possible options to secure your server so that nothing aside from the proxy can connect to your server.
legacy forwarding is the player information forwarding protocol that is used by BungeeCord when
enabling IP forwarding from BungeeCord. Due to this, it is ubiquitous and well-supported by most
server implementations. It has excellent compatibility (supporting versions as old as 1.7.2,
released in 2013) and will work with Forge if you also install SpongeForge on your modded server and
configure it correctly. However, it is not secure.
If you must use BungeeCord-compatible forwarding, simply set your
legacy. You will also need to make sure your server can accept the forwarded
player data sent by Velocity.
To add some security, particularly for proxies hosted on shared hosting, Velocity optionally
supports the BungeeGuard plugin. To use it,
player-info-forwarding setting in
bungeeguard, then add the value in
forwarding.secret file to the token section in the BungeeGuard configuration.
Configuring legacy forwarding for Spigot / Paper
To make Spigot or Paper understand the data forwarded from Velocity, set
true in your
spigot.yml and then reboot your server.
Configuring legacy forwarding for Sponge
To configure Sponge to understand the data forwarded from Velocity, you will need to stop the server
bungeecord.ip-forwarding to true in your
config/sponge/global.conf file, and then restart your Sponge server.
Configuring legacy forwarding for Fabric
There are no longer any actively supported mods that support legacy forwarding. Please use Velocity modern forwarding instead.