Guide
15 min readAug 03, 2026

Remote Access Without Port Forwarding: 3 Methods That Work

Reach a PC, NAS, home server, or private LAN when CGNAT, double NAT, or a locked router makes normal inbound forwarding unavailable.

Quick answer

Yes. For one person reaching their own PC or NAS, put both devices in a private mesh VPN: it creates an authenticated device-to-device route while both sides make outbound connections. For reliable access to a whole home LAN, RDP, SSH, or several services, use a small public VPS as a WireGuard hub. The home connector dials out to the VPS, so CGNAT, a changing home IP, and router admin restrictions stop being blockers; the remote device reaches the home network through one stable encrypted route and no inbound rule is added to the home router. Use a reverse SSH tunnel instead when you need only one web app.

The connection model

How remote access without port forwarding works

Port forwarding waits for an unsolicited connection at the home router. These methods reverse the direction: the home device starts an encrypted outbound session to a known peer or public hub. The returning packets use that established state, so there is no inbound home-router rule to create, no public home address to remember, and no dependency on whether the ISP gives you a dedicated IPv4 address.

Remote laptop or phone

Starts an authenticated outbound tunnel

Mesh relay or public VPS

Provides the reachable meeting point and private routes

Home PC, NAS, or LAN

Also connects outbound; the router stays unchanged

Decision guide

Choose the right remote access method

The deciding factor is who must connect and how much of the home network they need—not the brand of router.

Private mesh VPN

Reach

Enrolled devices and selected private subnets

Best for

The fastest route to your own PC, NAS, or home server

What it adds

Identity-based private addresses with no public service listener

Most control

WireGuard VPS hub

Reach

Single devices, a whole LAN, RDP, SSH, and custom ports

Best for

A stable route you control across CGNAT and changing home IPs

What it adds

One fixed public rendezvous point for every outbound peer

Reverse SSH tunnel

Reach

One TCP service or local web application

Best for

Publishing a dashboard without routing the rest of the LAN

What it adds

Small exposure scope and a connection initiated from home

Why normal remote access stops working

CGNAT or mobile internet

The ISP shares one public IPv4 address among customers, so unsolicited inbound traffic never reaches your router.

Double NAT or a locked router

Two gateways need coordinated rules—or the router belongs to an apartment, hotel, office, or ISP and has no usable admin access.

A changing home IP address

Bookmarks and client profiles break when the ISP changes the address, even if the old forwarding rule remains correct.

A service should stay private

RDP, SSH, NAS panels, and smart-home dashboards gain a private route without becoming general public-internet listeners.

If your router WAN address differs from the public address seen online, use our step-by-step CGNAT check to identify the shared-address case. The methods on this page work even when the result confirms CGNAT.

Fastest private route

Use a mesh VPN for one PC, NAS, or a few trusted devices

A mesh VPN gives each enrolled device a stable private address and tries a direct encrypted connection, with a relay available when NAT traversal cannot form the direct path. It is the shortest route to Chrome Remote Desktop alternatives, RDP, SSH, Home Assistant, or a private Jellyfin server when every viewer can join the same private network.

Choose this when

  • Only your own devices or invited people need access
  • The target can run a mesh client, or one connector can route its subnet
  • You want device identity and private names instead of a public URL
  • A managed relay is worth avoiding server administration
Stable whole-network route

Set up a WireGuard remote access gateway on a VPS

A public VPS replaces three fragile pieces of the old design: the changing home IP becomes a fixed server address, CGNAT becomes irrelevant because home dials out, and multiple RDP, SSH, NAS, or LAN routes share one encrypted hub. You keep the address plan, keys, routes, and server region under your control.

PeerExample tunnel addressRoutes advertised to the hubInternet endpoint
Public VPS10.77.0.110.77.0.0/24Public IPv4:51820/UDP
Home connector10.77.0.210.77.0.2/32; optionally 192.168.1.0/24None; connects outbound
Remote laptop10.77.0.310.77.0.3/32None; connects outbound
  1. 1

    Deploy a small VPS near the people connecting

    Choose an Ubuntu or Debian instance with a public IPv4 address. A basic shared-CPU plan is enough for SSH, RDP, Home Assistant, and normal administration traffic; choose bandwidth and a nearby region for media or large file transfers.

  2. 2

    Install WireGuard on the VPS and endpoints

    Install WireGuard on the public VPS, the always-on home PC or gateway, and every remote laptop or phone. Generate a separate private/public key pair on each device and keep private keys on the device that created them.

  3. 3

    Give each peer one private tunnel address

    Use a dedicated range such as 10.77.0.0/24: 10.77.0.1 for the VPS, 10.77.0.2 for the home endpoint, and 10.77.0.3 for a remote laptop. This keeps the route independent of changing public addresses.

  4. 4

    Make the VPS the WireGuard hub

    Listen on UDP 51820 at the VPS and allow forwarding between WireGuard peers. Add the home LAN subnet to the home peer only when the connector will route an entire LAN; a single target PC needs only its 10.77.0.x tunnel address.

  5. 5

    Connect the home endpoint outbound

    Set the VPS public address as the home peer endpoint and use PersistentKeepalive = 25. The home device refreshes its NAT state from inside the network, so the router needs no inbound mapping even when the ISP uses CGNAT.

  6. 6

    Add the remote laptop or phone

    Point the remote peer at the same VPS and route only the tunnel range plus the specific home subnet you need. RDP, SSH, NAS, and web dashboards then use the private tunnel address rather than the home public IP.

  7. 7

    Connect once from a different network

    Use mobile data or another Wi-Fi network, bring up WireGuard, then open the service by its tunnel address. If the tunnel connects but the app does not, check the app listener and host firewall on the target device before changing the home router.

VPS peer map

The hub owns the public endpoint

[Interface]
Address = 10.77.0.1/24
ListenPort = 51820
PrivateKey = <vps-private-key>

[Peer] # Home connector
PublicKey = <home-public-key>
AllowedIPs = 10.77.0.2/32, 192.168.1.0/24

[Peer] # Remote laptop
PublicKey = <laptop-public-key>
AllowedIPs = 10.77.0.3/32
Home peer

The home side keeps the path alive

[Interface]
Address = 10.77.0.2/24
PrivateKey = <home-private-key>

[Peer]
PublicKey = <vps-public-key>
Endpoint = <vps-address>:51820
AllowedIPs = 10.77.0.0/24
PersistentKeepalive = 25
VPS options

Best VPS choices for a remote access gateway

Pick Vultr for the broadest region choice and a low-friction first deployment. Pick DMIT when the route between China, East Asia, and North America matters more than having dozens of regions. Both give the hub a stable public address and keep the tunnel available while the home IP changes.

Best default
New users get $300

Vultr

  • 33 cloud data-center regions for a nearby relay
  • More than 80 million cloud servers launched
  • SOC 2 Type II and ISO/IEC 27001 compliance reports
  • Public status page and searchable incident history
Deploy with Vultr
Best for China and APAC routes

DMIT

  • 7.6 Tbps aggregate Tier 1 backbone capacity
  • Direct peering with all three major China carriers
  • Los Angeles, Hong Kong, and Tokyo edge locations
  • KVM instances on AMD EPYC and NVMe infrastructure
Deploy with DMIT
One-service alternative

Use a reverse SSH tunnel for one web app

A reverse tunnel is narrower than a routed VPN. The home server opens SSH to the VPS and maps one local service to the VPS loopback address. A remote administrator then creates a local forward through the same VPS. The home app stays off the public interface, and no home-router port is opened.

1. Home server to VPS

ssh -N -R 127.0.0.1:9000:127.0.0.1:8080 tunnel@vps

Local app port 8080 becomes VPS loopback port 9000. Use key authentication and a restricted tunnel account.

2. Remote laptop to the mapped app

ssh -N -L 8080:127.0.0.1:9000 user@vps

Open localhost:8080 on the laptop. For invited public viewers, put an authenticated HTTPS reverse proxy on the VPS instead.

Remote access examples by service

What you want to reachBest first methodAddress used remotelyWhy it fits
Windows Remote DesktopMesh VPN or WireGuard hub10.77.0.2:3389Private RDP route with no public home listener
SSH or Raspberry PiMesh VPN or WireGuard hub10.77.0.2:22Stable tunnel address across Wi-Fi and ISP changes
Synology, QNAP, or Home AssistantWhole-LAN WireGuard routeExisting LAN IP through the tunnelOne connector reaches devices that cannot run a client
Private Plex or JellyfinMesh VPNTunnel IP plus app portEvery viewer joins the private network
One local web dashboardReverse SSH tunnelLocal forward or authenticated HTTPS URLPublishes one application instead of a subnet

Media-server readers can continue with our Jellyfin remote access options or the Plex remote access troubleshooting guide.

When the tunnel connects but remote access does not

WireGuard has no recent handshake

Confirm both peers use the VPS public address, the VPS firewall allows UDP 51820, and each peer has the other side’s current public key.

The tunnel IP works but the app does not

Start the application, connect to its actual listening port, and allow the WireGuard subnet in the target host firewall. RDP also needs Remote Desktop enabled on Windows.

One home PC works but the NAS does not

A peer can reach only routes the home connector forwards. Add the NAS subnet to the home peer, enable LAN forwarding, and provide a return path by static route or tunnel-subnet masquerade.

The private name does not resolve

Use the tunnel IP first. Home multicast names usually do not cross a routed tunnel; add a private DNS record or host entry after the IP route works.

Remote access without port forwarding FAQ

Authoritative references

These primary technical and public-sector sources support the networking and remote-access guidance above.

Share this article