Am I behind a CG-NAT?
A somewhat common cause for not being able to port forward and get users to join your server is caused by being behind a CG-NAT (Carrier-grade NAT). This will only happen on home networks and is very unlikely to happen with a VPS or host provider.
What is a CGNAT?
CGNAT is a technique used by some ISPs (internet service providers) where customers will all share a single IP address instead of getting their own.
How to check?
Windows:
- Open command prompt.
- Go to https://whatismyipaddress.com and copy the IPv4.
- Type
tracert <external IP>and replace <external IP> with your external/public IPv4, and wait for it to complete. - A good result will looks like this:
Tracing route to 85.xx.xxx.xx over a maximum of 30 hops 1 1 ms 1 ms 2 ms 85.xx.xxx.xxAs shown above there is only one hop which is good and means you are not behind a CGNAT. If you have multiple hops especially ones between100.64.0.0to100.127.255.255(these are reserved for CGNAT), or the traceroute does not complete, then you are behind a CGNAT. You will have to contact your ISP about getting your own dedicated IP address.
Linux:
Follow the same steps above but use the traceroute command instead. You'll likely have to install this package with your distro package manager.