Vintage Story "Unable to Connect to Server" Fix
Checked on 14 October 2026 against the Vintage Story 1.22.7 client and server.
If your Vintage Story dedicated server works on your local network but friends on other networks get "Unable to connect to server", the problem is usually not the world save. It is almost always a network path problem involving Port, router forwarding, CGNAT, or the server binding to the wrong IP.
Check These Settings First
{
"Port": 42420,
"Ip": null,
"Upnp": false,
"AdvertiseServer": true
}
The game shows this as Unable to connect to server, or Unable to connect to server '<address>' with the reason on the next line. If the message instead says Unable to connect to auth server, your port is not the problem: the game cannot reach Vintage Story's login service, so check your internet connection or try again in a few minutes.
Vintage Story uses the same port for TCP and UDP. Forward both on your router if you self-host. If you are renting, make sure your provider exposes the actual public game port and is not hiding the service behind a firewall rule.
| Test Result | What It Usually Means |
|---|---|
| You can join from the same machine | The game process itself is running correctly |
| You can join from home Wi-Fi but not from another state | Router, ISP, or CGNAT path problem |
| The server never appears publicly | AdvertiseServer is off or the port is not reachable |
Most Common Causes
First rule out the refusals that are not network problems at all. The server reached the player and said no, with one of these messages:
- This server only allows whitelisted players to join. You are not on the whitelist. Since 1.20 a fresh dedicated server is invite-only. Add the player with
/whitelist add <name>, or open it with/whitelist off. - Password is invalid: the server has a password set and the player typed a different one.
- Incompatible Server Version: the player's game and the server use different network versions; the message lists both. 1.22.7 still uses network version 1.22.6, so 1.22.6 and 1.22.7 can play together.
If the player gets a plain connection failure instead, it is the network path:
- The TCP forward is missing or points at the wrong machine: TCP carries the connection, so this alone causes the error. A missing UDP forward does not: when no UDP gets through, the server moves that player's movement updates to TCP, so forward UDP as well for smoother movement, but look at TCP first.
- The server bound to the wrong IP: leave
Ipasnullunless you know exactly why you need a fixed bind. - UPnP gave a false sense of success: not every router honors the server's UPnP or NAT-PMP request. If joins fail with
Upnpon, set it tofalseand configure forwarding explicitly. - Your ISP uses CGNAT: port forwarding looks correct, but inbound traffic never reaches your router.
How to Troubleshoot in the Right Order
- Confirm the server is listening on the expected port.
- Test from a truly external network, not another device on the same Wi-Fi.
- Forward both TCP and UDP for the configured
Port. - Turn on
AdvertiseServer(off on a new server;/serverconfig advertise true) only after direct IP join works. See the port configuration guide for firewall and router steps. - If nothing changes, ask your ISP whether your line is behind CGNAT.
Important: if a rented or home server works only for you and one nearby tester, but fails for distant players, that usually points to routing, firewall, or ISP constraints, not a corrupted save.
Need a cleaner path than consumer router forwarding? Run Vintage Story on Supercraft with the port already exposed and the public join path handled for you.