Network groups

How network groups work in Zelie: servers that reach each other by name on every port, who can change them, and game servers without a public port.

EN, noch nicht übersetzt

Every app and game server in Zelie gets a network of its own. It cannot reach the others, and they cannot reach it. A network group lets a few of them talk to each other directly, for example a proxy in front of game servers, or a web app and the game server it reads from.

What a group does

  • Members reach each other on every port, TCP and UDP.
  • They use each other's name as the address. A server called hub is hub inside the group, so a proxy reaches its Minecraft server at hub:25565.
  • Everything outside the group stays closed, and the public ports do not change.
  • Joining or leaving applies at once. Nothing restarts. When an app leaves, open connections to it from the others end.

Use the name, not an IP address. A container's address can change when it starts again.

Web apps and game servers can join a group. Databases and files apps cannot; link a database to the apps that use it instead.

Who can change it

Only an administrator can put a server in a group or take it out. Being in a group lets servers into each other, so it is not part of the permissions a sub-user can be given. A sub-user sees the group of the servers they have access to, and only the members they can see.

Joining a group

For a game server, open its Network page. For a web app, open its Settings. Under Network group:

  1. Pick a group, or choose A new group… and give it a name: lowercase letters, digits and dashes, up to 32 characters.
  2. Press Join group.

To move a server to another group, pick that one and press Move to this group. Leave group takes it out.

The same section lists the other members, whether they are running, and the address the others use for each one, with a copy button.

Database on the host

Host access to a MariaDB installed on the server stays per app. Being in a group does not open the host's port 3306 to the other members. Turn it on for each app that needs it.

Trust

Treat a group as one trust boundary. Anyone who can change the files or use the console of one member can reach every other member, on every port. Put servers in the same group only when the people who manage one may reach all of them.

Game servers without a public port

A game server behind a proxy does not need a port players can reach. When you create one, choose No public port. It takes no port from the pool, and players cannot connect to it directly. It listens on its port inside its network only, so the servers in its group can reach it and nothing else can.

An existing server can switch either way from its Network page while it is stopped:

  • Close its public ports gives its ports back to the pool. Other servers in its group reach it on the port shown there.
  • Open a public port takes a free port from the pool, and players can join on it once the server starts.

A server with no public port and no group cannot be reached at all. Put it in a group.

For a Minecraft network behind Velocity, Minecraft network sets up the rest.

Zelie network groups: a private network between servers