
Practical Windows server guide
CGNAT and Double NAT: Why Port Forwarding Fails
If friends can join across your home network but not from another connection, the server may be healthy and the missing link may sit upstream of your router. This guide proves where the translation occurs before you buy hardware, delete a firewall rule, or keep changing the same port forward.
Start with the boundary
Separate a server problem from a NAT problem
A port forward cannot repair a server process that is stopped, listening on a different port, or blocked by Windows Firewall. Prove the server locally first: connect from another device on the same home network using the host PC's private address and the game's configured port.
When LAN joining succeeds, the executable, world, and basic local path are working. The next test belongs at the router and internet edge. When LAN joining also fails, stay inside the PC and game configuration until the process is listening correctly.
- 1
Start the dedicated server and wait for its documented ready signal.
- 2
Join from a second device on the same LAN; do not use the public address for this test.
- 3
Confirm the configured TCP or UDP port against the game-specific guide.
- 4
Only after LAN succeeds, move to the router's WAN address and outside-player test.
Read the three addresses
Host address, router WAN address, and public address are different jobs
Run ipconfig on the Windows host to identify its IPv4 address and default gateway. The IPv4 address is the destination for the router forward. The default gateway normally leads to the router's management page, where the WAN or internet address is shown.
Now compare that router WAN address with the public IPv4 address reported to an outside service. If they differ, another translation layer exists. A private WAN address often means a second router or modem is performing NAT. An address from 100.64.0.0 through 100.127.255.255 is the shared block reserved for service-provider CGNAT and is not globally routable.
- 192.168.0.0/16, 10.0.0.0/8, and 172.16.0.0/12 are private address ranges commonly seen behind a local router.
- 100.64.0.0/10 is shared service-provider address space defined by RFC 6598.
- A public-looking WAN address can still require ISP confirmation; address comparison is evidence, not permission to probe the network.
ipconfig /allTwo routers, two decisions
Fix double NAT without opening a broad range
Double NAT is common when an ISP gateway routes traffic and a personal router sits behind it. One forward on the inner router stops at the outer device. The cleanest correction is usually to place one device in an appropriate bridge or access-point mode, but the exact choice depends on which device supplies Wi-Fi, telephone, television, or ISP management services.
If the topology cannot be simplified, forward the one required game service through both devices: outer device to inner router, then inner router to the server PC. Keep the internal addresses reserved so neither target changes after a restart.
Stop and check: Do not place the Windows server in a router DMZ as a shortcut. That can expose services unrelated to the game and makes later troubleshooting harder.
When the ISP owns the outer NAT
Choose a CGNAT workaround that matches the game
A home-router rule cannot program a carrier-grade translator you do not control. Ask the ISP whether the connection uses CGNAT and whether it offers a public IPv4 address, a static address, or an inbound-port option. Ask about price and whether the address can change before agreeing.
Some games provide a publisher relay or platform cross-play relay that avoids ordinary inbound IPv4 forwarding. Use it only when that game's own guide confirms it. An overlay network can work for a private group when every participant installs and trusts the same client, but it does not make a normal public server discoverable. Renting a compatible server is the final practical option when no inbound path exists.
- Best ordinary path: request a real public IPv4 address and keep a narrow game-specific forward.
- Game relay: convenient, but availability and client compatibility are game-specific.
- Overlay network: private-group solution requiring client participation and access control.
- Rented host: removes the home inbound path but adds a recurring bill and remote data custody.
Prove the new path
Retest from a genuinely external connection
Many home routers do not support NAT loopback consistently, so testing your public address from inside the same Wi-Fi network can fail even when outside access works—or appear to work through a special router behavior that outside players never use. Test with a friend on another provider or a device using mobile data.
Record the server version, host LAN address, external address, port, protocol, and exact time. If the attempt fails, that small record lets you inspect the correct server log and router event instead of changing several layers at once.
Quick answers without unsafe shortcuts
Common questions
Does a 100.64.x.x router address prove CGNAT?
An address in 100.64.0.0/10 is RFC 6598 shared address space intended for service-provider translation, so it is strong evidence. Confirm the service arrangement with the ISP before choosing a workaround.
Will adding another port-forward rule fix CGNAT?
No. Your rule controls only your router. It cannot create an inbound mapping in the provider's upstream translator.
Should I enable DMZ or forward every port?
No. That exposes unrelated services and still cannot bypass an upstream CGNAT layer. Forward only documented game ports after proving the host is ready.
Can IPv6 solve the problem?
Only when the dedicated server, every relevant client path, firewall, and game discovery method support it. Do not assume IPv6 compatibility from the presence of an IPv6 address.
Primary references
Sources reviewed
[S1] Microsoft Learn
Configure Windows Firewall rules ↗Reviewed 2026-08-30
[S2] Microsoft Learn
ipconfig command reference ↗Reviewed 2026-08-30
[S3] RFC Editor
RFC 6598: Shared Address Space Request ↗Reviewed 2026-08-30
[S4] CISA
Internet Exposure Reduction Guidance ↗Reviewed 2026-08-30
Continue with the right detail
Related help
Port-forward a Windows game server
Build the ordinary one-router path before diagnosing an upstream boundary.
Open guide →
Secure a home game server
Keep player ports narrow and administration interfaces out of the public path.
Open guide →
Game-specific server guides
Use the exact ports, files, update process, and client rules for the server you run.
Open guide →