Skip to content

Your network’s address

Players join one address, such as play.example.com. It reaches the Velocity proxy, which Shardkeep runs on one of your Nodes and keeps configured: every server in the network is in its server list under its name, and the lobby order decides where players land.

At your DNS provider, create an A (or AAAA) record for the network’s address pointing at the public IP address of the Node running the proxy. The Network page shows which Node that is.

If the network uses a port other than 25565, add an SRV record so players can leave the port out:

_minecraft._tcp.play.example.com. SRV 0 0 <port> play.example.com.

The proxy’s port must be reachable from the internet. If the Node is behind a router, forward that TCP port to it.

  • Paper, Purpur and Folia servers join the network by default. Their own ports then accept only players the proxy sends, checked with a secret Shardkeep shares with the proxy (Velocity’s modern forwarding). A player connecting to such a server directly is refused.
  • Vanilla servers cannot take players from Velocity, so they stay outside and are joined directly on their own port.
  • You can take a server out of the network, or put it back, from its Overview. It takes effect when the server next starts.

On the Network page, add servers to the lobby and order them. Players land on the first one that is up. Without a lobby, they land on the first server in the network.

The proxy reaches servers on its own Node over a private Docker network, and servers on other Nodes at those Nodes’ addresses and the servers’ published ports. Those ports must be reachable from the proxy’s Node. If a Node’s detected address is not the right one (NAT, several interfaces), set it on the Node’s page.

When a server moves to another Node, is renamed or is deleted, Shardkeep updates the proxy without restarting it.

Deleting the proxy, or never creating one, leaves every server joined directly on its own port, as if there were no network.