Port Checker Online Free — Check If a Port Is Open on Any Server

🌐 Network and Web Free Forever

Port Checker Online Free

Check if a specific TCP port is open or closed on any server or domain. Test individual ports or scan common services at once.

All Network and Web Tools
Common ports:
Open The service accepted a connection.
Closed The host answered and refused. Nothing is listening.
Filtered No answer at all, which usually means a firewall dropped the packet.
Needs review Open, but this is a port that rarely belongs on the public internet.

Why this runs on our server. A web page has no access to raw TCP. Browsers also refuse to connect to ports like 22, 25 and 3389 outright, and they deliberately hide the difference between refused, blocked and slow. That is a security rule: without it, any website you visited could scan the network you are sitting on. So the check happens server side, where a real connection can be attempted and the real result reported.

Scan responsibly. Only scan hosts you own or have permission to test. Private and reserved address ranges are blocked. Unsolicited scanning of other people’s infrastructure is, depending on where you are, against the terms of service of most hosts and in some places against the law.

About This Tool

What a browser can and cannot tell you about an open port

A real port scanner opens a raw TCP socket and attempts the three way handshake described in RFC 9293, the current TCP specification: a SYN packet out, a SYN-ACK back if the port is listening, or a RST if it is closed, or nothing at all if a firewall is silently dropping the traffic. Browsers have no API for raw sockets. JavaScript running on a web page cannot open one, cannot send a bare SYN, and cannot read the resulting flags. So this tool infers port state indirectly, using the only network primitive a browser actually exposes: fetch().

How the inference actually works

Step 1 Scheme selection Port 443 and 8443 are assumed to speak TLS, so the tool requests over https://. Every other port, including the common web and database ports checked in a scan, is requested over plain http://, since fetch cannot speak arbitrary binary protocols like MySQL’s or PostgreSQL’s wire formats, only HTTP.
Step 2 HEAD request with a 4 second cap A fetch() HEAD request is sent to {scheme}://{host}:{port}/ in no-cors mode, with an AbortController timeout at 4 seconds.
Step 3 Interpreting the outcome If the fetch resolves at all, even with an opaque no-cors response, that means a TCP connection was established and something answered on that port, so it is reported open. If the browser throws before the timeout, typically a connection refused error, the port is reported closed. If nothing happens until the 4 second abort fires, the result is reported closed rather than open, since an unanswered SYN and a silently firewalled port look identical from here.
Step 4 Batch mode The scan common ports option runs this same test in parallel against ten frequently used ports (80, 443, 22, 21, 25, 8080, 8443, 3306, 5432, 3389), each rendered as its own row with a live checking state.
// the port test itself, from the tool source var scheme = (port === 443 || port === 8443) ? ‘https’ : ‘http’; var ctrl = new AbortController(); setTimeout(function(){ ctrl.abort(); }, 4000); fetch(scheme + ‘://’ + host + ‘:’ + port + ‘/’, { method: ‘HEAD’, mode: ‘no-cors’, cache: ‘no-store’, signal: ctrl.signal }).then(function() { resolve({open: true}); }) .catch(function(e) { if (e.name === ‘AbortError’) { resolve({open: false}); } });
This is not a TCP connect scan, it is an HTTP probe. A port can be open and accepting TCP connections while still reporting closed here, if whatever is listening does not speak HTTP at all, since a raw fetch to a non HTTP service like a database port will usually fail even though the port itself is reachable. MySQL on 3306, for instance, will typically show closed through this method even when the database is actively listening, because it responds with its own binary protocol handshake, not an HTTP response fetch can parse.

Reading the result honestly

Reported stateWhat it actually confirms
OpenSomething on that host, port, and scheme combination answered a connection attempt within 4 seconds
Closed / FilteredNo connection completed in time, which covers a genuinely closed port, a firewall silently dropping the packet, and a non HTTP service that never replied in a way fetch understands
Client side only

Every probe originates directly from your browser to the target host. Nothing is proxied through our servers here, which also means your own IP address is what the target host sees making the connection attempt.

Why this cannot replace nmap

A dedicated scanner like nmap works at the socket level, distinguishes closed from filtered accurately, and can probe non HTTP services with protocol specific handshakes. This tool trades that precision for something nmap cannot do at all: run entirely in a browser with no install.

fetch() based, not raw TCP 4 second timeout per port 10 common ports on batch scan

When a port matters

A quick sanity check that a web server is actually reachable on 80 and 443 before digging further, confirming a firewall change took effect from outside your own network, checking whether a self hosted service is exposed to the internet when it should only be reachable locally, and spotting an obviously misconfigured server before running a heavier, more precise scan with dedicated tooling.

Common Questions

FAQ: Port Checker Online Free

A port checker tests whether a specific network port on a server or IP address is reachable from the internet. It can help determine whether a service such as HTTP, HTTPS, SSH, or FTP is accessible.

Enter the hostname or IP address and the port number you want to test, then start the check. The tool attempts to connect to that port and reports whether it is reachable.

An open port means a service is accepting connections on that port. A closed port means the host is reachable but no service is accepting connections there. A filtered or unreachable result can indicate a firewall or network rule blocking the connection.

You can check standard TCP ports as well as custom port numbers, depending on what your server or network service uses. Common examples include port 80 for HTTP, 443 for HTTPS, 22 for SSH, and 21 for FTP.

Yes, a port checker can help identify whether a port is reachable from outside your network. If the connection fails, the cause could be a firewall, router configuration, closed port, or a service that is not running, so the result should be used as a connectivity check rather than a definitive firewall diagnosis.

Privacy Overview

Cookies let this site remember your preferences and show us which tools people actually use. Full detail sits in our Privacy Policy.