Minecraft server port forwarding is the process of telling your router to send incoming Minecraft connection requests directly to the computer running your server. Without it, your router blocks outside traffic and nobody outside your home network can join your game. The default port Minecraft Java Edition uses is 25565 (TCP), and that is the one you will be forwarding in almost every case.
Content Table
How Port Forwarding Works for Minecraft
Your router sits between the internet and every device on your home network. It uses Network Address Translation (NAT) to share one public IP address among all your devices. When a friend tries to connect to your Minecraft server, their game sends a packet to your public IP on port 25565. Without a forwarding rule, your router has no idea which device on your network should receive that packet, so it drops it.
A port forwarding rule tells the router: "Any traffic arriving on port 25565 goes to the local IP address of my server PC." Once that rule exists, your router passes the connection through, and your friend lands in your world.
Before You Start
Gather these four pieces of information before touching your router settings. Having them ready makes the whole process take under five minutes.
-
Your server PC's local IP address
(e.g., 192.168.1.105). On Windows, run
ipconfigin Command Prompt and look for "IPv4 Address." On Linux/macOS, runip aorifconfig. -
Your router's admin panel address.
Usually
192.168.1.1or192.168.0.1. It is printed on the router's label or visible in the "Default Gateway" line ofipconfig. - Your router's admin username and password. Defaults are often "admin/admin" or "admin/password" unless you changed them.
- The port you want to forward. Java Edition: 25565 TCP. Bedrock Edition: 19132 UDP.
Step-by-Step Setup Guide
Step 1: Log into Your Router
- Open a browser on any device connected to your home network.
-
Type your router's gateway address into the address bar (e.g.,
192.168.1.1). - Enter your admin credentials when prompted.
Step 2: Find the Port Forwarding Section
Every router brand labels this differently. Look for one of these menu names:
- Asus: WAN > Virtual Server / Port Forwarding
- Netgear: Dynamic DNS / Port Forwarding / Port Triggering (under Advanced)
- TP-Link: Advanced > NAT Forwarding > Virtual Servers
- Linksys: Security > Apps and Gaming > Single Port Forwarding
- Xfinity/Comcast gateways: Advanced > Port Forwarding
- Spectrum/Netgear C7000: Advanced Setup > Port Forwarding / Port Triggering
If you cannot find it, search " your router model + port forwarding" on portforward.com , which has step-by-step screenshots for hundreds of router models.
Step 3: Create the Forwarding Rule
Fill in the fields as follows. The exact labels vary by router, but the values stay the same.
| Field | Value for Java Edition | Value for Bedrock Edition |
|---|---|---|
| Service Name / Description | Minecraft | Minecraft Bedrock |
| Protocol | TCP | UDP |
| External Port (Start) | 25565 | 19132 |
| External Port (End) | 25565 | 19132 |
| Internal IP / Local IP | Your server PC's local IP | Your server PC's local IP |
| Internal Port | 25565 | 19132 |
- Save or apply the rule.
- Reboot the router if the interface prompts you to (not always required).
Step 4: Allow the Port Through Windows Firewall (If Applicable)
Your router is now forwarding traffic, but Windows Firewall may still block it locally. To open the port on Windows:
- Open Windows Defender Firewall with Advanced Security (search it in Start).
- Click Inbound Rules , then New Rule .
- Select Port , click Next.
-
Choose TCP, enter
25565, click Next. - Select Allow the connection , click Next through the remaining screens.
- Name the rule "Minecraft Server" and finish.
On Linux, if you are running
ufw
:
sudo ufw allow 25565/tcp
sudo ufw reload
Java vs. Bedrock: Port Differences
The two editions use completely different ports and protocols. Mixing them up is one of the most common reasons port forwarding seems to "not work."
- Java Edition: Port 25565, TCP protocol. This is what PC players on the Java version use.
- Bedrock Edition: Port 19132, UDP protocol. This covers Windows 10/11, Xbox, PlayStation, Switch, iOS, and Android players connecting to a Bedrock Dedicated Server (BDS).
- Running both editions: You need two separate forwarding rules, one for each port/protocol combination.
You can change the port Minecraft Java uses by editing the
server.properties
file and changing the
server-port
value. If you do that, forward whatever port you set there instead of 25565, and tell friends to connect using
yourip:customport
.
How to Verify Your Port Is Actually Open
After setting up the forwarding rule, you need to confirm the port is reachable from the outside internet, not just from your own network. Testing from within your own network will always succeed because the traffic never leaves your router.
Use an external port checker tool to test from the internet's perspective. Enter your public IP address (find it by searching "what is my IP" in Google) and port 25565, then run the check. A result of OPEN means your forwarding rule is working and friends can connect. A result of CLOSED or TIMEOUT means something is still blocking the connection.
Troubleshooting Common Problems
Port Still Shows as Closed After Forwarding
- Server is not running. The Minecraft server process must be active for the port to appear open. Start it first, then test.
-
Wrong local IP in the rule.
Check your server PC's current IP with
ipconfigand compare it to what you entered in the router rule. - ISP-level blocking. Some ISPs, particularly those using carrier-grade NAT (CGNAT), block incoming connections entirely. If your public IP starts with 100.64 through 100.127, you are likely behind CGNAT. Contact your ISP or consider a VPN tunneling solution like Cloudflare Tunnel as an alternative.
- Double NAT. If you have a modem/router combo plus a separate router, you may have two layers of NAT. You either need to put the first device in bridge mode or forward the port on both devices.
- Firewall on the server PC. Windows Firewall or a third-party antivirus may be blocking the port locally. Double-check the inbound rule you created.
Friends Can Connect but Keep Timing Out
- Your internet upload speed may be too low. A Minecraft Java server needs roughly 0.5 Mbps of upload per active player.
-
The server PC may be running out of RAM. The default Minecraft server JAR allocates 1 GB. Launch it with more memory:
java -Xmx4G -Xms1G -jar server.jar nogui
You Cannot Connect Using Your Own Public IP
This is normal. Many routers do not support "NAT loopback" (also called hairpin NAT), which means devices on your own network cannot reach your server using the public IP. Connect using your server PC's local IP (e.g.,
192.168.1.105
) when playing from the same network. Friends outside your network use the public IP.
Why You Need a Static Local IP
By default, your router assigns local IP addresses dynamically via DHCP . That means your server PC's local IP can change after a reboot, breaking your forwarding rule silently. You have two ways to fix this:
- DHCP reservation (recommended): In your router's DHCP settings, find your server PC by its MAC address and assign it a permanent IP. The router will always give that device the same address. This requires no changes on the PC itself.
- Manual static IP on the PC: Set the IP address, subnet mask, default gateway, and DNS manually in your network adapter settings. Use an address outside your router's DHCP range to avoid conflicts (e.g., if DHCP assigns .100 through .200, use .50).
Security Considerations
Opening a port to the internet is a real exposure. A few practical steps to reduce risk:
-
Use a whitelist.
In
server.properties, setwhite-list=trueand add only trusted players. This prevents random internet users from joining even if they find your IP. - Keep the server JAR updated. Mojang releases security patches regularly. Running an outdated version exposes you to known exploits.
- Do not run the server as an administrator/root. Create a dedicated low-privilege user account for the server process.
- Consider a non-standard port. Changing from 25565 to something like 34217 will not stop a determined attacker, but it does reduce automated scan noise.
- Close the port when not in use. If you only play on weekends, disable the forwarding rule during the week.
Confirm Your Minecraft Server Port Is Actually Open
After setting up Minecraft server port forwarding, use our free open port checker to instantly verify that port 25565 (or your custom port) is reachable from the public internet. Enter your public IP and port number and get a real result in seconds.
Check Your Port Now →
Minecraft Java Edition uses port 25565 over TCP by default. Minecraft Bedrock Edition uses port 19132 over UDP. You can change the Java Edition port by editing the
server-port
value in
server.properties
, but 25565 is what every client expects unless you tell them otherwise. If you change it, players must append the custom port to your IP when connecting, like
yourip:34217
.
The easiest way is to search "what is my IP" in Google. The result at the top of the page shows your current public IP. You can also visit a site like ipinfo.io. Keep in mind that most home internet connections have a dynamic public IP, meaning it can change when your router reboots or after a certain period. If this happens often, look into a free dynamic DNS service like DuckDNS to get a stable hostname that always points to your current IP.
This almost always means the port forwarding rule is missing or pointing to the wrong local IP. When you connect from the same network, traffic never leaves the router, so the forwarding rule is irrelevant. Your friends connect from outside, so the rule must be correct and active. Double-check that the local IP in the rule matches your server PC's current IP, and verify the port is open using an external port checker while the server is running.
No. Paid Minecraft hosting services (like Apex Hosting, Bisect Hosting, or similar) run the server on their own hardware with a public IP and open ports already configured. You just get a server address and port from them and share it with friends. Port forwarding is only needed when you are self-hosting the server on a machine in your home, behind your own router.
Carrier-grade NAT (CGNAT) means your ISP places multiple customers behind a single public IP address, so you do not actually have a unique public IP. Port forwarding does not work in this situation because incoming connections cannot reach you. To check if you are behind CGNAT, see if your router's WAN IP starts with 100.64 through 100.127. Solutions include asking your ISP for a dedicated public IP (sometimes free, sometimes a small fee), or using a tunnel service like Cloudflare Tunnel or Playit.gg to bypass the NAT entirely.
It carries some risk, but it is manageable. Opening port 25565 means anyone who finds your IP can attempt to connect. Enabling the server whitelist is the single most effective protection, as it blocks unknown players entirely. Also keep your server software updated, since Mojang patches security vulnerabilities in newer versions. Avoid running the server process with administrator or root privileges, and consider closing the port forwarding rule when the server is not in use.