Port check
Check whether TCP ports on a host are open, closed or filtered, using presets (web, mail, remote access, databases) or up to 20 ports of your own, with connect times and the banner a service sends first.
Open, closed or filtered
- Open: the handshake completed, so a service is listening and reachable from the internet.
- Closed: the host answered with a refusal. It is up, but nothing listens on that port.
- Filtered: no answer before the timeout. A firewall is dropping the connection, or the host is down.
Pick a preset (web, mail, remote access, databases) or enter up to 20 ports of your own. For open ports MtrXTools waits briefly for the banner some services send first, such as SSH or SMTP, which shows what is actually running.
Common uses
- Confirm that a port forward or firewall rule works from outside your network.
- Find services exposed by mistake, such as a database (3306, 5432) or remote desktop (3389) open to the whole internet.
- Check a mail server answers on 25, 465 and 587.
Questions
- Is it legal to check ports?
- Checking a handful of ports on your own systems is routine. Only test hosts you own or are allowed to test; MtrXTools limits each run to 20 ports and never runs exploit checks.
- The port is open on my network but filtered here. Why?
- Your router or ISP may block incoming connections, you may be behind CGNAT, or the service may only listen on a local address.
Related tools
Errors this tool helps with
- ERR_CONNECTION_REFUSED · Nothing accepted the connection on that port
- ERR_CONNECTION_RESET · The connection was cut off mid-way
- wrong version number · TLS spoken to something that isn't TLS
- curl: (7) Failed to connect · The connection was refused or unreachable
- curl: (52) Empty reply from server · The server closed the connection without replying
- Error: socket hang up · The server closed the connection before replying
- UND_ERR_CONNECT_TIMEOUT · fetch couldn't open a connection in time
- requests.exceptions.ConnectTimeout · Python couldn't open the connection in time
- ConnectionRefusedError: [Errno 111] Connection refused · Nothing is listening on that port
- java.net.ConnectException: Connection refused · Nothing is listening on that port