How to Set Up Port Forwarding

Port forwarding lets specific internet traffic reach a device inside your home network. Essential for gaming consoles, home servers, remote desktop, and security cameras accessible from outside.

How NAT and Port Forwarding Work

Your router performs NAT — Network Address Translation. All devices in your home share one public IP address. When a device sends data out, the router tracks which device sent it and routes the response back to the right place. This works perfectly for outbound connections, but the reverse is a problem: when something from the internet wants to initiate a connection to a specific device inside your network, the router does not know where to send it.

Port forwarding solves this by creating a permanent rule: when an incoming connection arrives on a specific port number, always forward it to a specific local device. For example, Minecraft uses port 25565 — a forwarding rule says "when someone connects to my public IP on port 25565, send that connection to the computer at 192.168.1.50."

Security consideration: Every forwarded port is a potential attack surface exposed to the entire internet. Only forward ports for services you actively run, use non-standard external ports where possible, keep the target software updated, and remove rules when they are no longer needed.

Before You Start: Static IP Reservation

Port forwarding targets a specific local IP address. If that device's IP changes (which happens with DHCP), the forwarding rule points to the wrong device. Set up a DHCP reservation first — this tells the router to always assign the same IP to a specific device based on its MAC address.

1
Find the target device's MAC address

In the router admin panel connected devices list, find the device you want to forward to — it shows the device name, IP, and MAC address. Or check the device itself: Windows: run ipconfig /all and look for Physical Address. Mac: System Settings → Network → Advanced → Hardware.

2
Create a DHCP reservation

In the router admin panel, find DHCP → Address Reservation (Netgear), LAN → DHCP Server → Address Binding (TP-Link), or LAN → DHCP Reservations (Asus). Enter the device MAC address and assign a fixed IP like 192.168.1.50. Save.

3
Reconnect the device

Disconnect and reconnect the target device to its network. It will receive the reserved IP address. Verify in the connected devices list that it now shows the correct fixed IP.

Creating a Port Forwarding Rule

1
Log in to the router admin panel

Go to http://192.168.1.1. Enter admin credentials.

2
Find Port Forwarding settings

Navigation varies: Advanced → Port Forwarding (Netgear) | Advanced → NAT Forwarding → Virtual Servers (TP-Link) | WAN → Virtual Server/Port Forwarding (Asus) | Advanced → Virtual Server (Linksys) | Advanced → Network Filter → Port Forwarding (D-Link)

3
Create a new rule

Click Add, Add New, or similar. You need to fill in: Service Name (anything descriptive), External Port (the port number that arrives from the internet), Internal Port (usually the same), Protocol (TCP, UDP, or Both — check the service documentation), and Internal IP Address (the reserved IP of your target device).

4
Save and test

Save the rule. Test from outside your network using canyouseeme.org or portchecker.co — enter the port number and check if it responds. If the test shows "closed," check: is the application running on the target device? Is Windows Firewall blocking the port? Do you have double-NAT (router behind another router)?

Common Ports to Forward

ServicePort(s)ProtocolNotes
Minecraft Java25565TCPDefault server port
Minecraft Bedrock19132UDPLAN/multiplayer
PlayStation Network80, 443, 3478, 3479, 3480TCP+UDPRequired for Open NAT
Xbox Live3074TCP+UDPRequired for Open NAT
Nintendo Switch1–65535 (UPnP)BothUse UPnP or specific game ports
Remote Desktop (RDP)3389TCPUse non-standard external port for security
SSH22TCPUse port 2222 or similar externally
Web server (HTTP)80TCP
Web server (HTTPS)443TCP
Plex Media Server32400TCPAlso needs UDP for some features
qBittorrent6881TCP+UDPCheck app settings for actual port
FTP21TCPAvoid — use SFTP (22) instead
Synology NAS5000 (HTTP), 5001 (HTTPS)TCPDSM management
Valheim2456–2458UDPGame + query port
Terraria7777TCPDefault server port

Troubleshooting Port Forwarding

1
Port shows closed on external test

Check in order: Is the application actually running and listening? Check Windows Firewall or iptables on Linux — the OS firewall may be blocking even though the router is forwarding. Is the IP address in the rule correct? Did the device's IP change?

2
Double-NAT (router behind router)

If your router is connected to an ISP gateway that also performs NAT, you have double-NAT. The ISP gateway needs to forward to your router's WAN IP first, or be put into bridge/passthrough mode. Check the WAN IP in your router admin panel — if it starts with 192.168 or 10., you likely have double-NAT.

3
ISP blocking the port

Some ISPs block common ports (25, 80, 443) on residential connections. If a port shows as filtered on external tests even with all rules in place, contact your ISP to ask if that port is blocked. Moving to a non-standard port often works around ISP filtering.

Frequently Asked Questions

Can I forward the same port to two different devices?

No — one external port can only map to one internal destination at a time. If you need two devices to handle traffic on the same port, you can forward different external port numbers to the same internal port on different devices. For example, external port 3389 to device 192.168.1.50:3389, and external port 3390 to device 192.168.1.51:3389. Users then connect to your-public-ip:3390 to reach the second device.

What is the difference between port forwarding and port triggering?

Port forwarding creates a permanent rule — the internal port is always accessible from outside. Port triggering is dynamic — the external port only opens when a device on the local network sends traffic out on a specified trigger port. Port triggering is used for applications where the server port changes or for cases where you want the external port to only open temporarily during active use. For most use cases (gaming, remote access, servers), standard port forwarding is what you need.