This long io.netty error boils down to one thing: your client couldn't open a connection to the server. Usually it's the address, the port, or the server being down. Here's how to check, step by step, including DNS-related causes.
Quick answer
"io.netty ... Connection refused" means your client reached the address but nothing accepted the connection. Check in order: is the server actually online, are you using the exact address and port, is the port open on the server's firewall and router, and does the domain point to the right IP? A refused connection is different from a timeout, where nothing was reached at all.
The exact wording of a Minecraft connection error tells you where the problem is. Match yours before diving in — "connection refused" is a very different fix from "timed out":
| Error | What it means | Where to look |
|---|---|---|
| Connection refused: no further information | Reached the host, but nothing is listening on that port | Wrong port, or server not running |
| Connection timed out | No response at all from the address | Firewall/port not open, or wrong IP |
| Unknown host / UnknownHostException | The domain didn't resolve | DNS / a typo in the address |
| io.netty... internal exception | Connection dropped mid-session | Usually server-side lag or a crash |
This article covers connection refused — the checks below go in order of how often each is the cause.
Step 1: is the server online?
Confirm it's up for everyone, not just you, with our Minecraft status checker. If it's offline for all, it's the server, not you.
Step 2: check the address and port
"Connection refused" almost always means a wrong address or port. Verify the exact IP/domain, and add the port if it's non-default:
play.yourserver.net:25566 # only if the port isn't 25565Step 3: server admin checks
- The server is actually running and bound to the right IP (
server-ip=blank usually = all interfaces). - The port is open in the firewall and forwarded.
- There's no SRV-record mismatch if you use a domain.
That phrase just means the OS gave no extra detail — it doesn't indicate a deeper problem. Treat it as a plain "couldn't connect" and check address, port and server status.
It's a connection failure. Check the server is up, then the address and port — that's where the problem almost always is.
DNS and hosting-level causes
- A domain pointing at an old IP after a server migration — DNS changes take time to propagate; see how to point a domain to a server (DNS A record).
- The host's network firewall or security group blocks the port even though the server's local firewall allows it — check both layers, not just one.
- The server crashed silently on startup and never actually opened the port — check the server console/log rather than assuming it's purely a networking issue.
How to prevent this
- Use a low DNS TTL before a planned IP change so players pick up the new address quickly.
- Re-check with a status checker after any migration, firewall change, or port edit — don't assume it worked.
- Publish the exact IP:port (or domain) players should use, and update it everywhere at once if it changes.
Minecraft is a trademark of Mojang Synergies AB / Microsoft. ESAGAMES is an independent hosting provider, not affiliated with or endorsed by Mojang or Microsoft.