Troubleshooting

How to test whether RDP port 3389 is reachable

Check in under a minute whether your server answers on RDP port 3389, from Windows, Mac or Linux, and learn what each result means and what to do next.

BeginnerWindows server5 min read

When Remote Desktop refuses to connect, the first question is simple: does the server answer on TCP port 3389 at all? A port test answers that in seconds. It tells you whether to look at the network path (firewall, ISP, router) or at the login itself (username, password, RDP app).

This guide shows how to run the test from Windows, macOS and Linux, how to read the result, and what to do when the port is closed.

Before you start

  • Your server's IP address, from the service page in your VPS provider's control panel. The examples use 203.0.113.10.
  • The server should show as Running in your VPS provider's control panel. A stopped or rebooting server will never answer.
  • A computer on the network you normally connect from. Test from the same place where Remote Desktop fails, otherwise the result can mislead you.

Note: Windows VPS and Admin RDP servers accept Remote Desktop on port 3389.

Test from Windows with PowerShell

Windows 10, Windows 11 and Windows Server all include Test-NetConnection. Open PowerShell (no admin rights needed) and run:

PowerShell
Test-NetConnection 203.0.113.10 -Port 3389

A successful result looks like this:

ComputerName     : 203.0.113.10
RemoteAddress    : 203.0.113.10
RemotePort       : 3389
InterfaceAlias   : Wi-Fi
SourceAddress    : 192.168.1.25
TcpTestSucceeded : True

The line that matters is TcpTestSucceeded. If you only want that value, add -InformationLevel Quiet and PowerShell prints just True or False:

PowerShell
Test-NetConnection 203.0.113.10 -Port 3389 -InformationLevel Quiet

A failed test takes a few seconds longer and shows a warning such as TCP connect to 203.0.113.10:3389 failed, followed by TcpTestSucceeded: False. It may also show a ping result. Ignore the ping part: many servers block ping on purpose, so a failed ping on its own proves nothing.

Test from macOS or Linux with nc

macOS and most Linux desktops include nc (netcat). Open Terminal and run:

Bash
nc -vz -w 5 203.0.113.10 3389
  • -v prints a readable result.
  • -z checks the port without sending data.
  • -w 5 gives up after five seconds instead of waiting a long time.

On macOS a working port prints a line ending in succeeded!. On Linux it usually says open or Connected to. A closed or filtered port prints Connection refused, timed out or Operation timed out.

If nc is missing on Linux, install it with sudo apt install netcat-openbsd on Ubuntu or Debian, or sudo dnf install nmap-ncat on AlmaLinux or Rocky Linux. For more on this tool, see Test a port with nc and telnet.

Use an online port checker

An online port checker tests the port from the internet rather than from your network. Search for "open port checker", enter 203.0.113.10 and port 3389, and run the check.

This is useful as a second opinion:

  • Online check passes, your own test fails: the server is fine. Something on your side blocks outbound TCP 3389, such as an office firewall, router filter or local antivirus.
  • Both fail: the problem is on the server side or with the server's network.

Tip: Only enter your server's IP address into these tools. Never paste usernames or passwords into a website that offers to "test your RDP login".

Read the result

Use the result to decide where to look next:

  • Port reachable (True, succeeded, open): the network path is fine. If Remote Desktop still fails, the cause is the address format, the credentials or the RDP app. Check you typed 203.0.113.10:3389 with a colon, then re-copy the password from your VPS provider's control panel.
  • Connection refused: packets reach the server, but nothing accepts them on 3389. Remote Desktop may be stopped or listening on a different port.
  • Timed out: something drops the packets. That can be the Windows Firewall on the server, or a firewall on your network or ISP.

Next steps if the port is closed

Work through these in order and test again after each one.

  1. Restart the server. Use the restart button in your VPS provider's control panel and wait two to three minutes for Windows to boot fully. Then test again.
  2. Try another network. Turn on a phone hotspot, connect your computer to it and repeat the test. If it passes there, your usual network blocks the port. See Connect to RDP port 3389 from office, hotel or school Wi-Fi.
  3. Check the server from the inside. Open the browser console from your VPS provider's control panel and sign in. Then confirm Windows is listening on 3389 and the firewall rule exists. Check that Windows is listening on RDP port 3389 walks you through it.
  4. Restore the port if it was changed. If someone changed the RDP port, follow Restore Remote Desktop to port 3389 after changing it.

Troubleshooting

  • Test-NetConnection is not recognised: you are in the old Command Prompt or a very old PowerShell. Open Windows PowerShell from the Start menu and try again.
  • The test passes, but mstsc says it can't connect: the port is probably missing from the address. Type the full 203.0.113.10:3389, not just the IP.
  • The test passes sometimes and fails sometimes: the server may be rebooting for updates, or your connection is unstable. Wait a few minutes, then test several times in a row.
  • Every test times out, from every network: open a support ticket with the IP, the time you tested and the exact output. That gives the support team what they need to check quickly.

Next steps

Was this guide helpful?

Still stuck?

Ask MdmHost AI for a quick answer, or open a ticket and our team will take a look. We are here 24/7.