DGuard

Minecraft server connection errors and how to fix them

The text on the disconnect screen nearly always tells you where the connection broke: the client never reached the server, the server couldn't verify the account, or a server rule kicked in. Here are the most common errors with their exact wording, the cause and what the owner should do.

The DGuard team11 min read

In short: Connection refused, Connection timed out and Unknown host mean the client never reached the server — it's down, the port is closed or not forwarded, or the address has a typo. Failed to verify username, Invalid session and Incompatible client mean the server answered but turned the player away: the Mojang account wasn't verified or the versions don't match. You are not white-listed, The server is full and You logged in from another location are server rules at work. Each one is below with its cause and fix.

How to read the error

The game's own messages are translated into the player's language, while Java network errors are not: under the heading "Failed to connect to the server" you'll see a line like io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: <address> — Netty, the game's network library, appends the address the client tried to reach. Paper takes some messages from spigot.yml: they're in English by default whatever the client language, and you can rewrite them.

The other half of the picture is the server log, logs/latest.log. After startup it has the line Starting Minecraft server on *:25565: the asterisk means the server listens on every address of the machine, the number is the port. If you see **** FAILED TO BIND TO PORT! instead, the port is taken or server-ip holds an address that isn't yours — the Minecraft Wiki recommends leaving server-ip empty. Reading logs is covered in crash logs.

The client never reached the server

ErrorWhat it meansWhat to do
Connection refusedThe machine answered, but nothing listens on the port: the server is off, crashed on startup or listens on another port — or the router forwards to the wrong computerMake sure the server runs and the log shows Starting Minecraft server on; match the port in the address against server-port
Connection timed out, connection timed out after … msNo answer at all: a firewall silently drops the connection, the port isn't forwarded, the IP is wrong or the ISP keeps you behind its own NATAllow Java through the firewall, check port forwarding and the public IP — see server IP and port
Unknown host; in the server list — Can't resolve hostnameThe name doesn't turn into an IP: a typo, the domain has no A record, or the record hasn't propagated yetCheck the record with nslookup <domain>; after a DNS change, ipconfig /flushdns helps a player on Windows
Timed out during playThe link broke after joining: the player's or the server's internet dropped, or a firewall stepped inEveryone dropped at once — look at the server: network or a freeze (check the log); one player — their connection
Message texts from the Java Edition 26.3 language files, causes per the Minecraft Wiki

Refused versus timed out tells you where to look. Per the Minecraft Wiki, refused means no process listens on the port and the operating system told the client so, while timed out means a firewall ignored the connection attempt. The Windows firewall and most home routers stay silent by default, so timed out is the one you'll see more often.

Step by step: where the connection breaks

  1. 1

    The server listens on the port

    The log has the Starting Minecraft server on line, and on Linux ss -tlnp shows java on the right port. If not, the problem is the server itself, not the network.

  2. 2

    Join from the same machine

    Use localhost (plus the port after a colon if it isn't 25565). If that works, the server is fine and the problem is the network.

  3. 3

    Join from the same network

    Use the internal IP, something like 192.168.1.20 — see how to find your server IP. If that fails, it's the firewall on the server's computer.

  4. 4

    Check from outside

    Use the online server status check or mobile data. If only outside access fails, it's port forwarding or ISP NAT. For a domain on a non-standard port, check the SRV record: the SRV record generator builds its fields.

checks on the server machine
# 1. the server listens on the port (Linux): a java process must show up
ss -tlnp | grep 25565

# 2. the line in logs/latest.log after startup
[Server thread/INFO]: Starting Minecraft server on *:25565

The server answered but turned the player away

ErrorWhat it meansWhat to do
Failed to verify username!A server with online-mode=true asked Mojang's session server whether the player joined and got no confirmation: an unofficial launcher or a stale session. The server log says Username '…' tried to join with an invalid sessionThe player restarts the launcher and signs in again. Letting in players without a premium account is a separate decision with risks — see offline-mode servers
Failed to log in: Invalid session (Try restarting your game and the launcher)The client couldn't confirm its session with Mojang before it even reached the serverFixed on the player's side: restart the game and the launcher, sign in again. The server isn't involved
Authentication servers are down. Please try again later. Sorry!The server couldn't reach Mojang's servers to verify the accountWait. If only your server shows it, check that it can reach the internet: the check runs over HTTPS
Incompatible client! Please use …; on Paper — Outdated client! Please use … or Outdated server! I'm still on …Client and server versions differ: Outdated client — the client is older than the server, Outdated server — newerThe player picks the server's version in the launcher. The owner can accept other versions: newer — ViaVersion, older — ViaBackwards on top, see ViaVersion
The Outdated texts come from Paper's spigot.yml; you can rewrite them in its messages section

Which version to run so these errors are rare is covered in choosing a server version. ViaVersion ships a few days after a game update, so right after a new release Outdated server for players with an updated client is expected.

A server rule kicked in

ErrorWhat it meansWhat to do
You are not white-listed on this server!; on Paper — You are not whitelisted on this server!The whitelist is on and the player isn't on it. Since 26.3, a new server has white-list=true by defaultwhitelist add <name> in the console or whitelist off. The whitelist.json generator builds a long list; more in OP and the whitelist
The server is full!Online has reached max-players (20 by default)Raise max-players in server.properties. Operators with bypassesPlayerLimit: true in ops.json can join a full server
You logged in from another locationAnother client joined with this name and the first one was kickedIf it wasn't the player, on a premium server their account is in someone else's hands; on online-mode=false the name is unprotected and you need an auth plugin
You are banned from this serverThe player was banned with ban or by a ban pluginA vanilla ban is lifted with pardon <name>, an IP ban with pardon-ip; a ban plugin has its own commands
Connection throttled! Please wait before reconnecting.Paper: one IP connects more often than once per connection-throttle milliseconds (bukkit.yml, 4000 by default)Wait a few seconds and join again
Kicked for exceeding packet rate limitPaper's packet limiter: more than 500 packets in 7 seconds by defaultSee who gets kicked and when. The limit protects the server from packet floods — raise it only if you're sure honest players are hit
Defaults from the Paper documentation and the Minecraft Wiki

Errors on a Velocity network

On a network the player connects to the proxy, and some errors come from Velocity itself. The texts are from its message file:

  • Unable to connect you to <server>. Please try again later. — the proxy couldn't connect the player to a server from [servers]: it's off, still starting, or the address in velocity.toml is wrong.
  • There are no available servers to connect you to. Try again later or contact an admin. — none of the servers in the try list answers.
  • Your server did not send a forwarding request to the proxy. Make sure the server is configured for Velocity forwarding. — player info forwarding is off on the backend: set proxies.velocity.enabled: true in config/paper-global.yml.
  • You are already connected to this proxy! — a second login with the same name. By default (kick-existing-players = false) Velocity refuses the new connection and leaves the first one alone.
  • You are not logged into your Minecraft account. … — the proxy's counterpart of Failed to verify username with online-mode = true.

Proxy setup, the forwarding secret and the firewall for the servers behind it are in setting up Velocity.

Connection error or an anticheat punishment

When a player says "I got kicked", first separate a network error from a punishment. The texts above come from the game, Paper and Velocity; an anticheat kick or ban shows up in its log. DGuard — the best anticheat for a modern Minecraft server — keeps a punishment log with reports in the panel when punishment-log: true is set in plugins/DGuard/config.yml: who was punished, when and for which cheat, with CSV export. If the player isn't in the log, look for the cause in the tables above.

The worst case is Connection refused for everyone because the server went down. The DGuard panel catches that too: if a server stays silent for 10 minutes, DGuard messages you and the team's admins in Telegram or by e-mail — and again when it comes back. DGuard opens no inbound ports and needs only outbound HTTPS; it works behind Velocity and BungeeCord and checks players on 1.21–26.x clients who join through ViaVersion exactly like everyone else.

FAQ

What does Failed to verify username mean in Minecraft?

A server with online-mode=true couldn't confirm the player's account with Mojang's session server. Usually the player used an unofficial launcher or their session went stale — restarting the launcher and signing in again helps.

Why do I get Connection refused when joining a server?

Nothing listens on the port at that address: the server is off, crashed on startup, or the address has a different port. Check that the log shows Starting Minecraft server on and match the port against server-port.

What's the difference between Connection timed out and Connection refused?

Refused means the machine answered with a refusal because nothing listens on the port. Timed out means no answer at all: a firewall silently dropped the connection, the port isn't forwarded or the IP is wrong.

How do I join if it says Outdated client or Incompatible client?

Pick the server's version in the launcher. The owner can accept other versions too: newer clients with the ViaVersion plugin, older ones with ViaVersion plus ViaBackwards.

Why does it say You are not white-listed on this server?

The server has the whitelist on and your name isn't on it; since 26.3 it's on by default on a new server. The owner adds a player with whitelist add <name>.

Sources

All sections

Run the best anticheat for modern Minecraft

DGuard catches all 47 kinds of cheats in our comparison — the closest rival, Intave, has 27. Full protection on every plan, free up to 30 players online.