How to Play Minecraft Java Edition with Friends Without Port Forwarding
You can play Java Edition with friends without port forwarding in six main ways: open your world to LAN and share it through a tunnel such as playit.gg, use a mod like Essential or e4mc that shares your single-player world, join a private network with Tailscale or ZeroTier, pay for Realms, use a free host, or use a paid host. Tunnels and mods are quickest if one person is always online. Hosts are better if friends want to play when the owner is away.
Why port forwarding fails: CGNAT in plain words
Your home router normally has its own public internet address. Port forwarding tells it, "send Minecraft traffic to this PC." Some ISPs share one public address across many homes. This is carrier-grade NAT (CGNAT). The ISP's equipment sits in front of your router, and you can't add rules to it, so port forwarding has no effect.
Quick check: if your router's WAN IP differs from what a "what is my IP" site shows, or starts with 100.64 to 100.127, you are probably behind CGNAT. Every option below works around it.
The options compared
| Option | Cost | Needs the owner online? | Setup effort | Good for |
|---|---|---|---|---|
| LAN + tunnel (playit.gg) | Free tier available | Yes, unless run on an always-on PC | Medium | Self-hosters behind CGNAT |
| Essential mod | Free to host | Yes | Low | Quick sessions in a single-player world |
| e4mc mod | Free | Yes | Low | Same, and friends join with a normal game |
| Tailscale / ZeroTier | Free personal plans | Yes | Medium; every friend installs it | Small trusted groups |
| Realms | Monthly subscription ($7.99 USD a month for Java on minecraft.net) | No | Very low | Families and groups who want official hosting |
| Free hosts | Free, with limits | No | Low | Casual groups that accept the host's limits |
| Paid hosts | Monthly fee | No | Low to medium | Modded servers, plugins, bigger groups |
Option details and steps
LAN plus a tunnel (playit.gg)
- Run a dedicated server on your PC, or open a single-player world to LAN.
- Make a free playit.gg account and run the playit agent (it runs on Windows, macOS, Linux, and Docker).
- Follow its setup to create a Minecraft Java tunnel pointing at your local port. A dedicated server uses 25565 by default. A LAN world uses a random port unless you type one in the "Port Number" box when opening to LAN.
- Give friends the address playit gives you. Only you run the agent. Friends just connect.
playit.gg has a free tier and a paid Premium plan; check its pricing page for what each includes. Pros: works behind CGNAT, and supports mods and plugins because it's your server. Cons: your PC must stay on, and traffic goes through playit's servers, which can add latency.
Essential or e4mc
Both are mods the host installs with a mod loader. With Essential, you open your world and invite friends through the mod; its wiki says up to 8 players can be connected at once and the host has to stay online. Check Essential's wiki for what friends need installed to join. With e4mc, you open to LAN as normal and share the public address it shows; its page says joiners can use a normal, unmodded game.
Pros: no server setup at all. Cons: the world is only online while the host plays, and the host needs a supported mod loader (Fabric, Forge, NeoForge, or Quilt for e4mc; Fabric, Forge, or NeoForge for Essential) and game version.
Tailscale or ZeroTier
These create a private network between your devices. Everyone installs the app and joins your network, then connects to the host's private IP. Both have free plans for personal use (ZeroTier's free plan is for personal, non-commercial use and covers 10 devices on one network). Check their pricing pages for current limits.
Pros: no public exposure, low latency when direct connections work. Cons: every friend has to install and sign in, which is a lot to ask of casual players.
Realms
The official paid service. The owner pays monthly and invites friends. No addresses or ports. On minecraft.net, Realms for Java is listed at $7.99 USD a month, for you plus 10 players at the same time, with a server available 24/7.
Pros: simplest option, always on, official. Cons: costs money every month, and the number of players online at once is capped. Check the Realms page for what you can customize.
Free hosts
Services such as Aternos, Minehut, and FalixNodes run the server for you. Each has its own trade-offs, such as waiting at busy times, ads, servers that stop or sleep when empty, or resource limits. Check each host's own site for its current free plan. See our Aternos alternatives page for a fuller comparison.
Paid hosts
You rent a server, usually by the month. Most paid hosts offer a control panel and plugin and mod support; check each plan. Pros: no PC needed, full control. Cons: cost and some admin work.
Troubleshooting
- Friends get "Connection timed out" through a tunnel. Check the tunnel's local port matches the port your server or LAN world uses. See the timeout guide.
- LAN world port keeps changing. Set a fixed port when opening to LAN, or run a dedicated server.
- Mod-based sharing fails. Make sure everyone uses the same game version and mod version. Version errors are covered in our outdated server guide.
- Tailscale connects but the game doesn't. Allow Java through the host's firewall for the Tailscale network.
Where Shulkerboxes fits (and doesn't)
Shulkerboxes is free server hosting for Minecraft: Java Edition friend groups, with no ads and no credit card, so no port forwarding is needed. A server wakes up when a friend joins and is ready in about a minute. It is invite-only with a waitlist, for US adults 18+ only, and it is free because gameplay is recorded and de-identified into AI training datasets (how it's free). If your group needs mods, plugins, or Bedrock, pick an option above that says it supports them.
FAQ
Is there a way to play Java with friends for free without port forwarding?
Yes. Tunnels, Essential, e4mc, Tailscale, ZeroTier, and free hosts all have free options.
How do I know if I have CGNAT?
Compare your router's WAN IP with a "what is my IP" site. Different values, or a 100.64 to 100.127 address, suggest CGNAT.
Is a tunnel safe?
It exposes your server to anyone with the address. Use a whitelist and keep online mode on.
Can friends play when I'm offline?
Only with a hosted option (Realms, free or paid hosts) or a server on an always-on machine.
Sources
- playit.gg (free tier, Premium, agent platforms, "Only you run the agent"): https://playit.gg/
- e4mc (joiners use vanilla clients, loaders): https://modrinth.com/mod/e4mc
- Essential (8 players, host must be online): https://essential.gg/wiki/start-hosting ; loaders: https://modrinth.com/mod/essential
- Tailscale Personal plan is free: https://tailscale.com/pricing
- ZeroTier free plan (personal, non-commercial, 10 devices, one network): https://www.zerotier.com/pricing/
- Realms for Java ($7.99 USD/month, you + 10 players, 24/7): https://www.minecraft.net/en-us/realms/realms-for-java
- "Port Number" option when opening to LAN: https://minecraft.wiki/w/Open_to_LAN
- Default server port 25565: https://minecraft.wiki/w/Server.properties
- CGNAT shared address range 100.64.0.0/10: https://www.rfc-editor.org/rfc/rfc6598