Back to Blog
Guide
14 min readOct 01, 2026

Best VPN for CGNAT: Fixes That Actually Work (2026)

CGNAT kills inbound connections, so port forwarding fails and NAT type turns strict. A VPN fixes it only in the right direction — match your situation before you pay.

Quick Answer

A VPN bypasses CGNAT outbound by default; inbound reachability needs port forwarding, with an optional dedicated IP for stability. Proton VPN is our first pick for a reachable port, PureVPN the budget alternative — and both carry refund windows long enough to test the fix before your money is really spent.

The best VPN for CGNAT is the one that restores what CGNAT actually breaks — inbound reachability — not the one with the loudest discount banner. I run NAT Checker, and the same story lands in my inbox every week: an ISP swap turned on carrier-grade NAT, port forwarding stopped working, the NAT type flipped to strict, and a generic “top 10 VPN” list sold a fix that never came. So here is the honest version up front: every WireGuard-based VPN already tunnels outbound through CGNAT without drama. Only a VPN with port forwarding, with an optional dedicated IP for stability makes you reachable from outside. This guide matches your situation first, ranks the two providers worth paying for, and hands you the same checklist I run in my own tests — free to use, and it works with any provider, including one we don't earn from.

CGNAT VPN basics

Does a VPN Bypass CGNAT? Two Directions, Two Answers

A VPN bypasses CGNAT in the outbound direction by default: your traffic leaves through the VPN’s public IP, so browsing, torrenting, and joining game servers all work behind carrier-grade NAT. Inbound is the hard direction — reaching your server from the internet — and needs a VPN with port forwarding, a VPN with a dedicated IP and forwarding, or a public IP from your ISP.

New to the topic?What is CGNATHow to check for CGNAT

Outbound: any serious VPN already works

Privacy, IP change, streaming, torrenting, joining servers — CGNAT does not block any of it, and WireGuard handles the shared-address quirks of RFC 6598 without hand-holding. If outbound is all you need, decide on trust, speed, and price. CGNAT is not the variable.

Inbound: the CGNAT problem people actually mean

Plex, game servers, remote desktop, and open NAT all need the internet to reach you — and behind CGNAT your router has no public IPv4 to forward to. Three fixes exist: a VPN with port forwarding, a VPN with a dedicated IP and forwarding, or asking your ISP for a real public IP. What does not work: port forwarding on a router that has no public address, or waiting for the problem to fix itself.

Find Your CGNAT Situation Before You Pay

Seven different problems produce the same symptoms, and only some of them need a subscription. Each row is a working route — the pay column tells you where a subscription actually earns its keep.

Your situationWhat actually fixes itPay or free?
Plex or Jellyfin remote access (Plex behind CGNAT)VPN port forwarding, optionally combined with a dedicated IP for a stable address. Feed the forwarded port into Plex, then verify from mobile data — not from your own Wi-Fi.Pay — Proton VPN or PureVPN
Hosting a Minecraft, Palworld, or Valheim serverVPN port forwarding maps one public port to your machine; friends connect to the VPN exit IP and port instead of your hidden home address.Pay — see the picks
Strict or moderate NAT on Switch, Xbox, or PlayStationA router-level VPN with port forwarding restores the inbound UDP path CGNAT removed; our console NAT guides cover each platform.Pay — check the FAQ
Remote desktop, Parsec, or SSH into your own machinesVPN port forwarding can publish a configurable RDP or SSH listener. Parsec uses its own connection negotiation; follow its host port settings rather than treating the VPN IP as a direct Parsec address.Pay — see the picks
Torrenting behind CGNATAny WireGuard VPN tunnels the traffic outbound fine; port forwarding only adds peer reachability for seeding, not privacy.Optional — privacy first
Changing your IP, privacy, streamingCGNAT barely matters outbound. Pick on audits, speed, and the refund window; every provider below passes.Any reputable VPN
Starlink or 5G home internet (CGNAT by design)On a Starlink CGNAT line, VPN port forwarding creates an inbound IPv4 entry; an optional dedicated IP keeps it stable. Starlink public-IPv4 options depend on the plan.Situation-dependent
Two compatible VPNs

Best VPNs for CGNAT: The Two Worth Paying For

Two picks, one decision: Proton VPN when capability and proof lead, PureVPN when the renewal total leads. Each card says who it fits — the table after them settles every edge case.

Proton VPN

Choose Proton when capability leads: port forwarding inside the app, protocol fallbacks, and the strongest audit trail of the two.
  • Port forwarding (NAT-PMP) in the Windows and Linux apps, plus macOS early access
  • One assigned incoming port for compatible Plex and game-server configurations
  • WireGuard for port forwarding; supported protocol fallbacks for privacy
  • Five consecutive independent no-logs audits · 30-day money-back guarantee

PureVPN

Choose PureVPN when the renewal total leads: the cheapest long plans that still open an inbound port, plus a dedicated IP option.
  • Paid port-forwarding add-on on supported locations
  • Optional dedicated IP for a stable, unshared address
  • WireGuard with automatic protocol fallback
  • 31-day money-back guarantee

This page contains affiliate links. If you sign up through them, NAT Checker may earn a commission at no extra cost to you.

Best VPN for CGNAT comparison: what actually matters

Price is part of the decision, but sale prices change. Compare the inbound mechanism, the protocol behind CGNAT, and the renewal total — not the advertised monthly equivalent.

VPNBest CGNAT useInbound mechanismProtocolPrice modelVerdict
Proton VPNFirst choice — fixes both directionsPort forwarding (NAT-PMP) in the Windows and Linux apps, plus macOS early access, paid plansWireGuard default; protocols supported by the selected platformPaid Plus plan; free tier has no forwardingThe most complete CGNAT inbound story
PureVPNBudget pick — inbound on a long planPaid port-forwarding add-on on supported locations; optional dedicated IP add-onWireGuard with automatic fallbackLowest long-plan price; 31-day refund windowCheapest way to get a reachable port
Private Internet AccessPort-forwarding veteranManual port forwarding support across appsWireGuard; OpenVPN fallbackCheap multi-year plansWorth a look when it undercuts both picks
NordVPNOutbound traffic onlyNo inbound port forwarding — Meshnet covers your own devices insteadNordLynx (WireGuard-based)Mid-price long plansGreat tunnel, wrong tool for public inbound
Your ISP’s public IP optionNot a VPN — the upstream fixMoves your line out of CGNAT at the source; router port forwarding works normallyn/aOften a few dollars a month, varies by carrierCheapest total fix when your ISP offers it

Why Mullvad is missing from this list

Older “best VPN for CGNAT” lists recommend Mullvad for hosting. Mullvad removed port forwarding in 2023, so the inbound route those lists describe no longer exists — treat them as outdated. The same check applies to free tiers: reputable providers keep forwarding behind paid plans, so verify before you subscribe.

Inbound features checked September 6, 2026. Re-check the checkout total and renewal terms at purchase.

Proton VPN or PureVPN for CGNAT? Pick by Situation

If this is youPickWhy
Hosting Plex, Jellyfin, or a game serverProton VPNPort forwarding lives in the app, with the deepest audit trail behind it.
Open NAT for consoles connected to one routerEither, run on the routerBoth supply router profiles; configure the VPN forwarding and LAN routing for each target device. One forwarded port targets one listener.
Lowest total cost that still fixes inboundPureVPNCheapest long plans with forwarding — compare the renewal total, not the headline.
A stable address nothing else usesPureVPN (dedicated IP add-on)Keeps the VPN exit stable for bookmarks and allowlists; inbound services also need the forwarding add-on.
Proof matters: audits and open-source appsProton VPNFive consecutive independent no-logs audits, open-source clients.
Still torn after the checklistProton VPNStealth fallback and the refund window make it the safe default.

How to Set Up a VPN Behind CGNAT (and Get Reachable)

One variable at a time: prove the baseline, change the route, then verify from outside your network. The five steps below double as the checklist I run before judging any provider.

Confirm you are actually behind CGNAT

Run the NAT Checker and compare your router WAN IP with the public IP it reports. A WAN address inside 100.64.0.0/10 means CGNAT; Double NAT produces similar symptoms with a different fix, so check before buying anything.

Pick by direction, not by discount

Outbound only: any audited WireGuard VPN qualifies, so price decides. Inbound: choose a provider with port forwarding — Proton VPN or PureVPN from the picks above — and confirm your plan and platform support it before paying.

Enable port forwarding in the VPN app

On a paid Proton VPN plan, connect to a P2P server and enable forwarding in a supported desktop app; macOS uses early access. Match your app to the assigned port. On PureVPN, purchase the Port Forwarding add-on, enable selected-port policies, and connect to a PF-supported location.

Connect with WireGuard before you start the app

Connect first, then open Plex, the game server, or the console. Enter the forwarded port number in the app, and keep the kill switch on so a dropped tunnel cannot leak your real CGNAT address mid-session.

Verify from outside your network

Rerun the NAT Checker with the VPN on and compare the NAT type and public IP against your baseline. Then test the real thing from cellular data — a port that only works from your own LAN is still closed.

Honesty check

When a Paid VPN Is the Wrong Tool for CGNAT

A subscription is not the only exit. Three of these routes cost less than any VPN plan — and each trades something: setup time, a support call, or scope. A paid VPN earns its keep when strangers must reach your server and you want it done in five minutes.

A $5 VPS + WireGuard — the self-hosted route

Rent a tiny server with a real public IP, tunnel from home to it, and forward exactly what you need. More work than an app, but total control and a stable address. Our remote-access guide compares the full field.

Remote access without port forwarding

Ask your ISP for a public IP

Many carriers can move your line out of CGNAT for a small monthly fee, or sell a static IP. It is the cleanest fix — real router port forwarding, no tunnel — and worth one support call before any subscription. Our public IP guide explains what to ask for.

Public IP address guide

Native IPv6, where your line offers it

CGNAT is an IPv4 problem. If your connection ships native IPv6 and your service listens on it, devices reach you directly — mind the firewall, because every device becomes reachable, not just the one you meant.

Cloudflare Tunnel — web apps only

cloudflared exposes a self-hosted web app with zero open ports. Fine for dashboards and sites; a poor fit for Plex-style video because streaming sits outside the intended use. Game servers need UDP, which the Tunnel does not carry.

Syncthing direct P2P sync across CGNAT

If you run Syncthing behind CGNAT, Starlink, or mobile broadband, public relays throttle sync speeds to 2.45 MiB/s. Forwarding port 22000 through a VPN restores full line-rate transfers.

Syncthing port guide

The situation table and the five-step checklist work with any provider — including one we do not earn a commission from. If you already pay for a VPN, run the method on it first; upgrade only if it fails the verify step.

Best VPN for CGNAT FAQ

Proton VPN is our first pick: NAT-PMP port forwarding in the Windows and Linux apps, plus macOS early access, WireGuard by default, and five consecutive independent no-logs audits. PureVPN is the budget alternative with port forwarding and an optional dedicated IP. Both sit behind long refund windows, so you can verify the fix from outside your network before the purchase really counts.

Prove the Fix, Then Pick With Confidence

Whatever any list claims: confirm CGNAT, fix the direction it actually breaks, and verify from outside your network before paying beyond the refund window. Run the NAT Checker with the VPN off, then on — the pair of results tells you more than every review combined.

Check NAT Type Now →

CGNAT VPN sources

Related CGNAT and VPN guides

Best VPN for privacy (audited & court-proven)Rank audited no-logs VPNs, Swiss jurisdiction, and RAM-only server protections.VPN for India: safe virtual servers & streamingConnect to working Indian IPs abroad, unblock JioCinema, and bypass CERT-In logs.DuckDNS setup & CGNAT fixesWhy DuckDNS external access fails under CGNAT and how to expose self-hosted homelabs.Dynu DDNS & port forwarding guideConfigure Dynu IP update clients, fix OpenWrt sync errors, and solve VPN connection drops.CGNAT port forwarding, step by stepEvery workaround for forwarding ports on a shared IPv4 line, ranked by effort.VPN with static IP and port forwardingWhen the entry point must never change: the providers that sell both halves honestly.UPnP vs port forwardingAutomatic openings against hand-written rules — security, gaming NAT, and when neither works.VPN port forwarding: how it worksThe mechanics behind the forwarded port your CGNAT fix depends on.Parsec error 6023 fixResolve P2P connection failures and mobile hotspot CGNAT issues on Parsec.Moonlight port forwardingConfigure multi-port rules and bypass CGNAT for Sunshine and Moonlight streaming.Starlink NAT type and CGNATProvider-specific quirks behind the CGNAT-by-design connection.Blue Iris remote access under CGNATAccess security cameras remotely behind Starlink, NBN, or cellular CGNAT without exposed ports.Docker port forwarding and CGNATMaster Docker -p syntax, host-to-container order, and expose self-hosted containers behind CGNAT.MyRepublic port forwarding & CGNATConfigure FiberHome/Nokia routers, resolve static IP CGNAT, and open ports.Plutonium port forwarding & Moderate NATFix BO2 T6 / MW3 Moderate NAT and host zombie lobbies behind CGNAT.Gluetun Docker port forwardingConfigure VPN port forwarding in Docker Compose for qBittorrent and Transmission.Superloop CGNAT opt-out & fixesCheck Superloop 100.64.0.0 IP range, phone opt-out script, and NBN port forwarding solutions.OpenVPN port forwarding guideConfigure OpenVPN server ports and route incoming traffic down to clients behind CGNAT.Windscribe port forwarding: 7-day limitsAnalyze ephemeral port expiration, Gluetun firewalled errors, and permanent VPN alternatives.ExpressVPN port forwarding: router mythWhy ExpressVPN apps lack port forwarding, why router rules fail, and how to fix qBittorrent.Why is my VPN not working?Separate tunnel failures from direction problems before blaming the provider.
Share this article