Open Port Checker (single TCP port)

Check whether one TCP port on a public host accepts connections from the internet: open, closed or filtered. One port per check, no mass scanning.

Checks ONE TCP port per request from AlgoKit’s server (Cloudflare network): it opens a connection, sends no data and closes it. It cannot scan ranges, test UDP, or reach private/local addresses, and Cloudflare-owned IP ranges cannot be tested. Only test hosts you own or are allowed to test.

What is Port Checker?

This port checker tells you whether a specific TCP port on a public host or IP accepts connections from the internet. It is deliberately not a scanner: each check tests exactly one host:port pair, which is what you need to confirm a port forward, firewall rule or that a service is listening.

How to use Port Checker

  1. Enter the public host name or IP address you own or are allowed to test.
  2. Enter the port number or click one of the common ports (22, 80, 443, 3306, 3389…).
  3. Press Check port.
  4. Read the result: Open (accepts TCP connections), Closed or unreachable, or No answer within 5 s – plus the IP that was tested and the time taken. Recent checks stay listed below.

When to use Port Checker

Use it after setting up port forwarding on a router, opening a port in a cloud security group, or starting a game, SSH, database or mail server, to see whether it is reachable from outside your network. It cannot scan ranges, test UDP ports (WireGuard, DNS, game servers using UDP), reach private or local addresses, or test port 25, which Cloudflare blocks for outbound connections; targets on Cloudflare-owned IP ranges also cannot be tested. Only test systems you own or have permission to test.

How Port Checker works

The check runs in AlgoKit's Cloudflare Pages Function (/api/port-check). The host is resolved over DNS-over-HTTPS and rejected if any address is private, loopback, link-local, CGNAT or reserved; the function then connects to the validated IP (not the name, so DNS cannot change in between) using Cloudflare's connect() TCP socket API. If the TCP handshake completes the port is reported as open and the socket is closed immediately without sending data; a refused or failed connection is "closed or unreachable"; no answer within 5 seconds is reported as a timeout, which usually means a firewall silently drops the packets. Requests are rate-limited per client IP.

Common Use Cases

  • Confirm that port 22 on your VPS is reachable before configuring SSH keys.
  • Test a home router's port forward for a Minecraft (25565) or Plex server.
  • Verify that a database port such as 3306 or 5432 is NOT exposed to the internet.
  • Check that a newly added cloud firewall rule for 443 actually took effect.

Security Note

The host and port are sent to AlgoKit's server, which makes one TCP connection to them. Only test hosts you are authorized to test.

FAQs

Why is this not a full port scanner?

Scanning many ports of other people's machines is abusive and often illegal. Testing one port you choose covers the legitimate need: is my service reachable?

What is the difference between closed and timeout?

Closed means the connection was refused or failed immediately (no service listening, or the network rejected it). A timeout means nothing answered within 5 seconds, which typically indicates a firewall dropping packets.

Can I check a UDP port?

No. UDP has no handshake, so an open UDP port cannot be confirmed reliably without speaking the service's protocol.

Why can't I test 192.168.x.x or my router's admin page?

The check runs on the internet, not inside your network, and private addresses are blocked to prevent abuse. Test your public IP instead.

Good next steps

Explore more categories