TCP Port Checker

Check whether your IP accepts a TCP connection from outside. Troubleshoot access to a NAS, home server, or game server.

Your connection IPTCP
Checking…

We check this IP’s port
from outside your network.

A VPN may show its exit IP here.
Shared requests used
—
Checks remaining
—
TCP connection timeout
3 s

Request allowance resets in —

Checking the allowance for this IP.

Loading usage…

How usage is counted

The default is 30 network-tool requests per public IP per hour. An administrator may temporarily change or waive it; the current allowance is shown above. Accepted requests count even if they fail.

The allowance resets one hour after the first request. Remaining checks are the smaller of the request allowance and target protection allowance. Shared server limits may also require a short wait.

The timeout is the wait for a TCP connection. Total response time, including server processing and network communication, may be longer.

Common ports

No sign-in · Your IP only · Ports 1–65535

How do I find my port number?

An IP address alone does not tell you a service’s port. Check the connection settings in your NAS or server application. HTTP commonly uses 80 and HTTPS 443, but your actual configuration takes precedence. If your router forwards external port 8080 to internal port 80, enter 8080 here. PPORT checks one TCP port you enter; it does not automatically scan all ports or open them for you.

Check listening ports on your device

Whatever the test result, run these commands on the PC or server running the service. They only read its status.

The commands follow the port entered above. If the router maps a different internal port, replace the command’s port number with that internal port.

How to check

  1. Copy and run the command for your operating system below.
  2. On Windows, the last column is PID or OwningProcess. On Linux look for pid=; on macOS use the PID column.
  3. In Windows CMD, put the PID in place of 1234 in the tasklist command to find the program name.

Windows · PowerShell

Get-NetTCPConnection -State Listen | Where-Object LocalPort -EQ 80 | Select-Object LocalAddress,LocalPort,OwningProcess

Windows · CMD

netstat -ano | findstr "LISTENING" | findstr /C:":80 "
tasklist /FI "PID eq 1234"

Linux · Terminal

sudo ss -ltnp 'sport = :80'

macOS · Terminal

sudo lsof -nP -a -iTCP:80 -sTCP:LISTEN
How to read the output
  • LISTEN or Listen means a program is waiting for TCP connections. PID or OwningProcess identifies its process.
  • 127.0.0.1 or ::1 accepts connections only from the same device.
  • 0.0.0.0 means all IPv4 interfaces; :: means all IPv6 interfaces. Whether :: also accepts IPv4 depends on the OS and program settings.
  • No output means no listening socket is visible for that port. Check the running program, port and permissions. On Windows, retry in administrator PowerShell.
  • LISTEN does not guarantee external access. Check the firewall, port forwarding and public IP. For containers, WSL or virtual machines, also check internal listeners and host port publishing.

Official references: Microsoft · ss · lsof

Command option notes
  • netstat -ano: Shows Windows connections numerically and adds the PID.
  • findstr: First keeps LISTENING rows, then keeps only the exact entered port.
  • tasklist /FI: Enter the PID found above to see the program name.
  • ss -ltnp: Shows listening TCP sockets on Linux with numeric addresses and process information.
  • lsof -nP -a -iTCP -sTCP:LISTEN: Shows only listening TCP sockets on macOS without name resolution.
Why some quotation marks are used

findstr /C:":80 " treats the trailing space as part of one search phrase, distinguishing 80 from 8080. Quotes alone are insufficient; keep /C: too. Quotes around LISTENING are optional, but tasklist needs them around "PID eq 1234" because it contains spaces.

Quick start

  1. Check the IP shown above.
  2. Enter a port or choose a common port.
  3. Follow the next check for your result.

Read your result

ResultWhat it meansCheck next
OPENA TCP connection to this IP and port succeeded.Check the actual web, game, or NAS application.
CLOSEDThe TCP connection was refused.Check the listening application and firewall reject rules.
TIMEOUTThe connection did not complete within 3 seconds.Check the firewall, forwarding rule, power, and connectivity.
UNREACHABLEThe connection reported a host or network unreachable error.Check the network route and connection.
ERRORAnother connection error occurred.Try again; report the time and port if it persists.

When the connection fails

  1. Make sure the server application is running on the PC or NAS.
  2. Check its listening address and TCP port. A service bound only to 127.0.0.1 accepts local connections; use the intended LAN address or interface for external access.
  3. Allow the required TCP port and source addresses in the device firewall.
  4. For IPv4 behind a router, map the external port to the device’s LAN IP and internal port.
  5. Compare the router’s WAN IPv4 with the public IPv4 shown here. A difference can indicate upstream NAT, another router, or a VPN.

Check the listening port on your server

Run these commands on the device hosting the service. Replace 8080 with your port. Binding to a specific LAN address can work; 0.0.0.0 is not mandatory.

Linux — listening TCP socket
ss -ltn 'sport = :8080'
Windows PowerShell — listening TCP socket
Get-NetTCPConnection -LocalPort 8080 -State Listen

Example forwarding rule

If a NAS at 192.168.1.20 listens on TCP 5000, an example rule is external TCP 5000 → 192.168.1.20:5000. Reserve the device’s LAN address so that it does not change.

The external and internal ports may differ. Test the external port here. IPv6 commonly uses routing and firewall rules rather than IPv4-style port forwarding.

What this tool checks

This tool checks one TCP port, from 1 through 65535, on the IP of your current connection. It does not accept another target IP, scan every port, or test UDP.

A VPN may expose its exit IP. The displayed IP is the address used by this connection, not a list of every IPv4 and IPv6 address your device has. A NAT result concerns the translated external path, not necessarily this PC alone.

This is a point-in-time check from the PPORT server. Application data is not sent. Request limits apply.

Frequently asked questions

Why does forwarding alone not open the port?
A server must be listening on the correct address and port. Device and network firewalls must also allow the connection.
Does TIMEOUT prove that my firewall is blocking it?
No. Routing, NAT, an offline device, packet loss, or filtering can produce the same symptom.

Official references

Related tools

Further reading