What is a proxy server like Velocity used for
Building a sprawling Minecraft network capable of hosting hundreds or even thousands of players across diverse game modes often hits a wall: the inherent limitations of a single Minecraft server. This is precisely where a proxy server like Velocity becomes not just useful, but indispensable. Velocity acts as the sophisticated traffic controller for your entire Minecraft ecosystem, allowing you to seamlessly connect multiple individual servers into one cohesive, high-performance network.
![]()
Understanding Velocity: The Minecraft Network Hub
Velocity is a modern, high-performance proxy server specifically designed for Minecraft Java Edition. Its primary purpose is to integrate various Minecraft servers-such as a lobby, a survival world, a creative server, and a minigame arena-into a unified network. Players connect to a single IP address, that of the Velocity proxy, and are then intelligently routed to the appropriate backend server. This setup provides a vastly improved experience compared to older proxy solutions, offering enhanced performance, robust security, and unparalleled scalability for server owners.
Why Your Minecraft Network Needs Velocity
The benefits of implementing Velocity are extensive, transforming a collection of disparate servers into a professional, player-friendly experience. Here’s a breakdown of its core functionalities and advantages:
- Centralized Entry Point: Players connect to one single IP address, the Velocity proxy. From there, Velocity efficiently directs them to various backend Minecraft servers, whether it’s a bustling lobby, a challenging survival world, or a competitive minigames server. This simplifies player access and provides a consistent brand identity for your network.
- Seamless Server Switching: Velocity empowers players to move effortlessly between different servers within your network. Using simple in-game commands like
/server <name>or interactive portals, players can transition from one game mode to another without the frustration of disconnecting and reconnecting, maintaining a fluid and immersive experience. - Exceptional Performance Optimization: Designed with efficiency in mind, Velocity boasts significantly better throughput and CPU efficiency-up to 8x better than older alternatives like BungeeCord. This superior performance is achieved through highly optimized packet handling, the integration of a native compression library (libdeflate on Linux), and the elimination of costly entity ID rewriting, ensuring a smoother experience even under heavy load.
- Enhanced Security Measures: Velocity incorporates modern player information forwarding, which is inherently more secure. It often requires a pre-arranged secret key shared between the proxy and its backend servers, preventing malicious players from bypassing the proxy and directly connecting to backend servers. Furthermore, Velocity is built with proactive defenses against denial-of-service (DoS) attacks, safeguarding your network’s uptime.
- Unmatched Scalability: One of Minecraft’s core limitations is its single-threaded game engine. Proxies like Velocity bypass this by allowing server owners to distribute players and processing power across multiple physical machines. This distributed architecture overcomes the single-thread bottleneck, enabling the creation of massive networks capable of supporting thousands of concurrent players.
- Centralized Network Management: Velocity facilitates the centralization of critical network functions. This includes player authentication, global permissions systems, network-wide chat, and even monetization efforts, streamlining administration and ensuring consistency across all servers.
- Robust Mod and Forge Support: For those embracing the modding community, Velocity offers native Forge support across various Minecraft versions, ensuring compatibility and flexibility for server owners who wish to integrate modded gameplay into their networks.
- Vibrant Plugin Ecosystem: While Velocity has its own distinct plugin API, separate from BungeeCord, the good news is that most major proxy plugins have been updated to support Velocity natively. Additionally, a dedicated repository called Hangar exists specifically for Velocity-compatible plugins, ensuring you have access to a rich array of tools for customization and network functionality.
Setting Up Your Velocity-Powered Minecraft Network
Implementing Velocity involves a structured process to ensure all components communicate correctly. Here’s a general step-by-step guide:
- Obtain Your Servers: You’ll need at least three separate server instances: one dedicated to running the Velocity proxy itself, and two or more backend Minecraft servers (e.g., Paper-based servers) that will host your game modes.
- Install Velocity Software: Download and install the Velocity server software onto the machine designated for your proxy. This will be the public-facing entry point for your players.
- Initial Configuration Generation: Run Velocity once. This action will automatically generate its essential configuration files, most notably
velocity.toml, which you will then customize. - Configure Velocity: Edit the
velocity.tomlfile. Here, you’ll define each of your backend servers by specifying their unique names, internal IP addresses, and ports. You’ll also set thebindaddress and port where Velocity will listen for incoming player connections. Crucially, configure theplayer-info-forwarding-modeto “modern” for Minecraft 1.13+ for enhanced security. Finally, establish atrylist, which dictates the order in which players should attempt to connect to backend servers (e.g., always starting in the lobby). - Secure Your Backend Servers: Locate the
forwarding.secretkey generated by Velocity. On each of your backend Minecraft servers, you must setonline-modetofalsein their respectiveserver.propertiesfiles. This ensures that Velocity, not the individual backend server, handles player authentication. Then, enable Velocity support within your backend server’s configuration (e.g., inpaper-global.ymlfor Paper servers) and paste the exactforwarding.secretkey. - Restart All Servers: For all your configuration changes to take effect, it is essential to restart both the Velocity proxy server and every one of your backend Minecraft servers.
- Connect Players: Once all servers are online and configured correctly, players can connect to your network by using the IP address of your Velocity proxy.
Essential Tips for a Smooth Velocity Experience
To maximize the performance, security, and stability of your Velocity network, consider these best practices:
- Prioritize Velocity for New Networks: If you’re starting a new Minecraft network, Velocity is the unequivocally recommended choice. Its modern architecture, superior performance, and active development outclass older proxy solutions.
- Always Use Modern Forwarding: Configure “modern” player information forwarding. This is a critical security feature, especially vital for servers running Minecraft 1.13 and newer versions, ensuring player data is transmitted securely.
- Ensure Secret Key Consistency: The
forwarding.secretkey is your network’s handshake. Make absolutely certain that the key in your Velocity configuration matches precisely with the key configured on all your backend servers. Any mismatch will prevent secure connections. - Firewall Backend Servers Effectively: For the highest level of security, configure your server’s firewall to block direct public access to your backend Minecraft servers. They should only be accessible internally by the Velocity proxy, preventing players from bypassing the proxy and potentially exploiting vulnerabilities.
- Consider a Dedicated Proxy Server: For optimal performance, especially for larger networks, it’s highly beneficial to run Velocity on its own dedicated server. This prevents resource contention with game servers and ensures the proxy can handle high volumes of traffic efficiently.
- Explore Velocity Plugins: Leverage the rich ecosystem of Velocity plugins. These can provide essential network-wide functionalities such as global chat, centralized permissions management, economy systems, and much more, enhancing the overall player experience and administrative control.
Avoiding Common Velocity Configuration Mistakes
Even with the best intentions, certain missteps can lead to connection issues or security vulnerabilities. Be aware of these common pitfalls:
- Mismatching Forwarding Secrets: This is a frequent cause of connection problems. If the
forwarding.secretkey is incorrect or doesn’t match between Velocity and your backend servers, players will either fail to connect or their authentication details won’t be properly verified. - Direct Connection to Backend Servers: Failing to adequately firewall your backend servers is a significant security flaw. It allows players to bypass Velocity, potentially exposing your backend servers to direct attacks or unauthorized access, circumventing your proxy’s security measures.
- Incorrect
online-modeSetting: Remember that backend servers must haveonline-mode=falseset in theirserver.propertiesfile. If this is not done, the backend server will attempt to authenticate players itself, leading to conflicts and connection failures as Velocity expects to handle authentication. - Using Incompatible Plugins: Velocity has its own plugin API. Attempting to use plugins designed solely for BungeeCord or Waterfall will generally result in errors or non-functionality, unless they specifically state Velocity compatibility or you are using an experimental adapter. Always seek out Velocity-specific plugins.
- Improper IP/Port Configuration: Errors in specifying the IP addresses and ports of your backend servers within
velocity.tomlwill prevent the proxy from correctly routing players. Double-check these details meticulously. - Neglecting to Restart Servers: Any changes made to configuration files, whether for Velocity or your backend servers, require a full restart of the affected server(s) to take effect. Forgetting this step can lead to hours of troubleshooting for changes that simply haven’t loaded yet.
In conclusion, Velocity is an indispensable tool for any serious Minecraft server owner looking to build a robust, high-performance, and scalable network. By understanding its core mechanics, following proper setup procedures, and being mindful of common pitfalls, you can leverage Velocity to create an exceptional and seamless experience for your player community, transforming your servers into a truly interconnected world.