Een Minecraft-netwerk met Velocity: je servers achter één adres

Koppel meerdere Paper servers achter één adres met een Velocity-proxy, met modern forwarding en een geheime sleutel tegen nepverbindingen.

EliteStarHosting Team2 november 20263 min lezen

In een netwerk verbinden spelers met één adres en wisselen ze met /server tussen bijvoorbeeld een lobby, survival en minigames. Daarvoor zet je een proxy voor je servers: Velocity. Velocity regelt het inloggen en stuurt spelers door naar de juiste server.

Wat heb je nodig?

  • Eén server die Velocity draait. Een proxy heeft weinig geheugen nodig.
  • Twee of meer Minecraft servers met Paper: de backends.
  • Minecraft 1.13 of nieuwer op de backends, want modern forwarding werkt pas vanaf die versie.

1. Velocity installeren

  1. Open de server voor de proxy in het gamepaneel en ga naar Versions.
  2. Kies Velocity onder Recommended en installeer de nieuwste versie. Zie ook Je Minecraft-versie of servertype wijzigen.
  3. Velocity heeft Java 25 nodig. Kies onder Startup bij Docker Image voor Java 25, zie Opstartinstellingen.
  4. Start de server één keer. Velocity maakt dan de bestanden velocity.toml en forwarding.secret aan.

Het tabblad Versions met Velocity tussen de servertypes

2. velocity.toml instellen

Open velocity.toml in de File Manager en pas deze regels aan:

bind = "0.0.0.0:25577"
player-info-forwarding-mode = "modern"

[servers]
lobby = "gnode1.elitestarhosting.com:25616"
survival = "gnode1.elitestarhosting.com:25617"

try = [
    "lobby"
]
  • Bij bind hoort de poort van je proxyserver. Die zie je bovenaan de serverpagina. Staat er 25565, zet er dan je eigen poort neer.
  • Onder [servers] zet je elke backend met een naam die je zelf kiest. Het adres en de poort staan bovenaan de serverpagina van die backend, en ook onder Network.
  • Bij try staat waar spelers binnenkomen, meestal je lobby.
  • Haal de voorbeeldservers weg die er al stonden. Verwijzen regels onder [forced-hosts] nog naar die voorbeelden? Haal ze ook weg, anders start Velocity niet.

De pagina Network met de primaire allocatie en de knop Create Allocation

Klik op Save Content en herstart de proxy.

3. De backends koppelen

Doe dit op elke Paper server in je netwerk:

  1. Open forwarding.secret op de proxy en kopieer de tekst die erin staat.
  2. Zet op de backend in Config, bij server.properties, online-mode uit. Het inloggen doet nu Velocity. Zie server.properties instellen.
  3. Open config/paper-global.yml in de File Manager en pas onder proxies: het stuk velocity: aan, zoals hieronder.
  4. Klik op Save Content en herstart de backend.
proxies:
  velocity:
    enabled: true
    online-mode: true
    secret: 'de-tekst-uit-forwarding.secret'

Bij online-mode laat je hier true staan, omdat Velocity spelers zelf wel controleert. Gebruikte je eerder BungeeCord? Zet dan in spigot.yml ook bungeecord op false. Draait een backend Fabric? Installeer dan de mod FabricProxy-Lite en zet dezelfde tekst bij secret in config/FabricProxy-Lite.toml.

Joinen en wisselen

Spelers verbinden voortaan alleen met het adres van de proxy. Met /server zien ze op welke server ze zitten en waar ze heen kunnen, en met /server survival wisselen ze.

Houd de geheime tekst geheim

Je backends staan op online-mode uit. Zonder bescherming kan iemand die rechtstreeks verbindt dan met elke naam inloggen, ook met die van een beheerder. Modern forwarding voorkomt dat: een backend laat alleen spelers toe die via een proxy met dezelfde geheime tekst komen. Die tekst is dus het enige wat je backends beschermt.

Deel forwarding.secret met niemand en zet hem nooit in een screenshot of op Discord. Denk je dat hij is uitgelekt? Zet dan een nieuwe tekst in forwarding.secret en in elke paper-global.yml, en herstart alles.

Ranks op het hele netwerk

Installeer LuckPerms op elke backend en de Velocity-versie van LuckPerms op de proxy. Laat ze allemaal dezelfde MySQL-database gebruiken, die je aanmaakt onder Databases. Dan gelden je ranks overal.