Help Centre
Getting Started
-
1
Enter a hostname
Type the hostname or IP address of the server you want to test (e.g.
github.comor192.168.1.1). -
2
Select the ports to check
Pick from the common service ports (80, 443, 22, 3306, 5432, 6379, 8080). You can also enter one custom port. Port 25 is not available — see limitations below.
-
3
Click "Check ports"
Portpeek opens real TCP connections from the Cloudflare edge to each selected port. Results appear within a few seconds — each port gets its own verdict and latency measurement.
-
4
Read the verdict
Each result is one of three outcomes (see FAQ below). No accounts, no history — results are displayed once and disappear when you refresh the page.
Frequently Asked Questions
-
What do CONNECTED, REFUSED, and TIMED OUT actually mean?
These are the three possible outcomes of a TCP connection attempt. They tell you different things about your network path:
CONNECTED — The TCP handshake completed successfully. A service is listening on this port and your firewall allows inbound traffic. Latency shown is the round-trip time of the handshake.
REFUSED — The host is reachable (a packet came back), but nothing is listening on that port. The request reached the server and was rejected with a TCP RST. This usually means the service isn't running or is bound to the wrong interface.
TIMED OUT — No response arrived within 10 seconds. A firewall is likely silently dropping the packets, the hostname does not resolve, or the host is behind Cloudflare (see the Cloudflare limitation below).
-
Why does every port show TIMED OUT?
If you get TIMED OUT on every port you check, the most common causes are:
- — A firewall at the network edge is silently dropping inbound connections. Check your cloud provider's security group, your server's iptables/nftables rules, and your router's port forwarding.
- — The hostname does not resolve to a publicly routable IP. Verify with
dig +short your-hostname.com. - — The server is behind Cloudflare. Portpeek runs on Cloudflare Workers, and a Worker cannot open a TCP socket to a host that is itself behind Cloudflare — it will always time out, even if the host is reachable from the open internet.
-
Why does port 443 show higher latency than port 80?
Port 443 uses TLS. Portpeek performs the full TLS handshake (not just the TCP handshake), so the measured latency includes the TLS negotiation — certificate exchange, key agreement, cipher suite selection — on top of the TCP round-trip. Port 80 is plain TCP. The difference is typically one to three additional round-trips worth of latency depending on the TLS version and certificate chain depth.
-
Can I check port 25 (SMTP)?
No. Outbound port 25 is blocked on the Cloudflare Workers platform. Any attempt to check port 25 will be rejected with an error before any network connection is attempted. This is a platform restriction, not a result about your server. If you need to verify SMTP reachability, you will need to use a different tool from a different network.
-
Do you store my check results?
No. Portpeek does not have user accounts, does not use cookies, and does not log hostnames or IP addresses. Check results are returned to your browser and rendered on screen. They exist only in your current browser session — refreshing the page clears them. There is no database, no historical record, and no mechanism to retrieve past results.
-
What if my server is behind Cloudflare?
Portpeek runs on Cloudflare Workers. A Cloudflare Worker cannot open a TCP socket to a host that is itself behind Cloudflare. The result will always show as TIMED OUT — even if the host is fully reachable from every other network on the internet. This is a platform limitation, not a meaningful result about your configuration. Use a different tool from a different network to test Cloudflare-originated hosts.
Known Limitations
- Backend required. The app page requires the Portpeek Cloudflare Worker to be deployed at
/api/check. Without it, the check functionality is not available. The worker is not deployed as part of this static site. - Port 25 blocked. Outbound SMTP is prohibited on the Cloudflare Workers platform. Any check of port 25 is rejected before a connection attempt.
- TLS on port 443. Latency includes the full TLS handshake, not just the TCP handshake. Expect 1–3 extra round-trips compared to port 80.
- Hosts behind Cloudflare. A Cloudflare Worker cannot connect to a host also behind Cloudflare. The result will be TIMED OUT regardless of actual reachability.
- 10-second timeout. If no response arrives within 10 seconds, Portpeek reports TIMED OUT with no latency measurement.
- No accounts or history. Portpeek has no user accounts, no sign-up, and no persistent storage. Results are ephemeral — there is no way to retrieve a past check.
- No scheduled checks. Portpeek answers when you ask it. There are no alerts, reminders, or scheduled re-checks. (This would require a backend with a scheduler — not yet built.)
- Pro plan not yet available. The Pro plan ($12/month) is defined on the Pricing page as a planned offering. No payment processor is connected, no legal entity is registered, and subscriptions cannot be purchased.
- No email support. There is no mailbox configured for this service. See the Contact section below.
Contact
For routine questions — This Help Centre page covers the most common questions and known limitations. If your question is about how a feature works, what a result means, or whether a capability exists, the answer is likely here or on one of the other pages on this site.
For bug reports — If you believe the tool is behaving incorrectly (showing wrong results, throwing errors, failing to load), please report it to the operator. There is currently no automated channel for this — the operator will need to set up a contact method before bug reports can be received reliably.
For abuse reports or legal inquiries — These also cannot be received until a contact method is established. The operator is aware of this gap.
This will be updated when a contact method becomes available.