Sign in
Free tool · No signup required

Port checker

Check whether a port is open from the internet. Enter a hostname or IP address and we try a real TCP connection to each port from outside your network.

Leave ports empty to check 18 common ones, or enter up to 20, like 22, 80, 8000-8010.

Related tools: All free tools

What this tool does

Whether a port accepts connections from outside

A port check opens a TCP connection to a host on a given port and reports what happened: the connection was accepted, so something is listening and reachable; it was refused, so the host answered but nothing listens there; or nothing came back at all, which usually means a firewall is silently dropping the traffic. This tool makes those connections from Cloudflare's network, outside your own, so a port forward, a firewall rule, or a cloud security group is tested the way the rest of the internet sees it. It connects and disconnects without sending any data.

That is one connection, made now. The same check on a schedule is port monitoring: up to ten TCP ports on this host or on another you name, connected to every 5 minutes from Cloudflare's network, a failure confirmed on a second attempt, and your team alerted when a port stops accepting connections.

Reported for every port
OpenThe connection was accepted: a service is listening and reachable
ClosedThe host refused the connection: reachable, but nothing listens
No responseNothing came back within 4 seconds, typically a firewall dropping packets
Can't testThe port or address can't be reached from Cloudflare, explained per port
ServiceThe service usually found on that port number
How it works

Three steps, no signup

  1. 01

    Enter a host

    A hostname like example.com or an IPv4 or IPv6 address. Hostnames are resolved first and the address is shown.

  2. 02

    Pick the ports

    Leave the ports box empty for 18 common services, or list up to 20 yourself: 22, 80, 8000-8010.

  3. 03

    We try each connection

    A TCP connection is opened to every port from Cloudflare's network, closed immediately, and the outcome reported.

FAQ

Frequently asked questions

How do I check if a port is open?

Enter the hostname or public IP address of the machine, list the port or ports you want to test, and run the check. A port is open when the connection is accepted. The test has to come from outside your own network: checking from a computer on the same network as the server bypasses your router and firewall, so it can say a port is open when the internet can't reach it.

What is the difference between closed and no response?

A closed port is one where the host answered and refused the connection: the machine is reachable, but nothing is listening on that port. No response means nothing came back at all before the 4-second timeout, which is what a firewall does when it drops traffic silently. For a port you expected to be open, closed points at the service (not running, or listening only on localhost) and no response points at a firewall, a security group, or a missing port forward.

My port is open on the server but shows no response here. Why?

Something between the internet and the server is dropping the traffic. Check, in order: the server's own firewall (ufw, firewalld, Windows Defender Firewall); your cloud provider's security group or network firewall; the port forward on your router, if the server is at home; and whether your ISP puts you behind carrier-grade NAT, in which case your router's public address isn't really yours and no port forward will work.

How do I check if port forwarding is working?

Forward the port on your router, then test your public IP address and that port here. Because the connection comes from Cloudflare's network rather than your own, it takes the same path as any visitor from the internet, which is the only way to tell a working port forward from one that only works inside the house. An open result means the forward is working. No response means the traffic is being dropped before it reaches the service: check the router's forwarding rule, then the machine's own firewall, then whether your ISP has put you behind carrier-grade NAT, which no forwarding rule can fix.

Why does it say a port can't be tested?

Two limits come from where this check runs. Cloudflare doesn't allow outbound connections to port 25, so SMTP can't be tested here. And Cloudflare's network can't open raw connections to its own addresses, so a hostname proxied through Cloudflare, which is a large share of websites, can't be port-checked this way; test the origin server's own IP address instead.

Can this check UDP ports?

No, only TCP. UDP has no connection to accept or refuse, so a UDP port can only be tested by speaking the protocol that runs on it. That rules out game servers, WireGuard, and plain DNS on port 53 over UDP, although DNS also answers on TCP port 53, which this tool can check.

Can Upcheck monitor a port continuously?

Yes. The port check opens a TCP connection to up to ten ports every 5 minutes, on the website's own hostname or on another host you name, which is what you want when the site sits behind a proxy and the origin is the thing to test. A failure is confirmed on a second attempt before anyone is alerted, and recovery is alerted too. It is the same TCP connect this page makes, repeated around the clock. Port 25 can't be monitored, for the same reason it can't be checked here.

Is this a port scanner?

It is a port checker: it tests a short list of ports on one host at a time, up to 20 per check, and scripted use is rate limited. That covers checking your own servers and firewall rules. It isn't built to sweep networks, and it only reports whether a connection was accepted; it doesn't fingerprint what is listening.

The port is open now. Monitoring tells you the night it stops.

Add your websites to Upcheck, name up to ten ports on each, and get alerted by email, Slack, Discord, Teams, or webhook when one stops accepting connections.