Host a game server without port forwarding
For a server at home when the router won't forward a port: carrier grade NAT, a shared flat or student connection, mobile broadband. Players join a NatchPlay relay and the agent on your PC carries them to your server. Nothing is opened on your router.
What you need
- The PC or box your game server runs on, Windows or 64-bit Linux.
- A NatchPlay account. One relay is free for Minecraft Java or Rust, every other game is £10 a year or £1.50 a month a relay.
Setting it up
-
Make a relay. Create an account, then New relay. Give it a name, which is the start of your address, pick the region nearest most of your players and the game.
Under How your server connects, Tunnel suits most games. Pick Relay address for a game whose server has to show up in Steam's server list, or when your server needs every player's real IP and can't read it any other way.
-
Install the agent and sign in on the machine your server runs on. Get it from the download page, then run:
natchplay loginIt prints a code and a link. Open the link, check the code and approve the machine.
-
Start your game server, then carry the relay to it. Use the name you gave it:
natchplay relay add yournameThe agent finds the ports your server is listening on and adds them. Admin ports like RCON stay private. If the server isn't running yet, give the ports yourself, for example
--udp 28015, as many times as it has ports. -
Keep it running. As an administrator, so it starts with the machine:
natchplay service installOr try it in a terminal first with
natchplay run, Ctrl+C stops it. -
Share your address, your relay's name and region, like yourname.eu.natchplay.com. Minecraft Java players join on that alone. Everyone else adds the port the agent shows you.
Checking it works
natchplay status shows each relay, whether its tunnel is up and every player on it with their round trip. Your relay's page on natchplay.com shows the same.
If players can't join
- The agent isn't running.
natchplay statussays so, start it withnatchplay service installornatchplay run. - The server listens on another port than the one the relay carries. Change it with
natchplay relay set yourname --udp 28015, using the ports in your server's own settings. - A Steam game shows your home address in the server list. The server tells Steam its own address, which only Relay address changes, since then the server's traffic leaves from the relay.
Guides for one game
Any other game works the same way. The games list has the ports each one uses.