How to Check Which Ports Are Open on a Windows 10 PC
Maybe you’re troubleshooting a network connectivity issue for a specific program, and you need to check whether its port access is open. What if you need to confirm that your NAS device can communicate with your Windows 10 PC? Whatever reason you need to look for open ports, this article provides detailed steps to check them on Windows 10 using several available tools, either built-in or free to download and use.
There are a couple of handy tools to scan open ports in Windows. You’ll see how to do so on NetStat, PortQry.exe, and NirSoft CurrPorts.
Using NetStat to Check for Open Ports in Windows 10
One of the simplest ways to check for open ports is to use NetStat.exe. You can find this tool in the “System32” folder on Windows 10. With NetStat, you can see open ports or ports that a specific host uses.
Netstat is short for “network statistics.” It shows protocol statistics and the current TCP and IP network connections. The two commands needed to identify open ports in “netstat -ab” and “netstat -aon.”
Here’s an explanation of what each letter from the commands means.
- “a” displays all connections and listening ports.
- “b” shows all executables involved in creating each listening port.
- “o” provides the owning process ID related to each of the connections.
- “n” shows the addresses and port numbers as numerals.
Two commands are helpful, depending on your needs. The second option (netstat -aon) additionally provides a process ID you can later search for in the Task Manager.
Using ‘netstat -ab’ to Identify Open Ports
The first option you’ll use (netstat -ab) lists all active ports and the process’s name that uses them.
- In the Cortana Search Bar, type the following without quotes: “
cmd“ then select “Run as administrator.”
- Now, type “
netstat -ab” without quotes, then press “Enter.”
- Wait for the results to load. Port names get listed next to each local IP address.
- Look for the port number you need, and if it says LISTENING in the State column, it means your port is “open.”
Using ‘netstat -aon‘ to Identify Open Ports
The second option (netstat -aon) includes process IDs, which you’ll use to identify a task/application in the Task Manager. Some processes may be challenging to identify using “netstat -ab,” so “netstat -aon” gets used. As referenced above, “a” represents all connections and ports, “o” represents the owning process ID, and “n” represents the addresses and port numbers as numerals.
Using “netstat -aon” comes in handy when “netstat -ab” isn’t enough to identify what program has a specific port tied up. In that case, follow these steps:
- In the Cortana Search Bar, type the following without quotes: “
cmd“ then select “Run as administrator” if not already opened.
- Once inside, type the following command without quotes: “
netstat -aon” then press “Enter.”
- You will now see five columns: Protocols, Local Address, Foreign Address, State, and PID (Process ID). In the Local Address, you have a port number. For example: 0.0.0.0:135. Here, 135 is the port number.
- In the “State” column, you will see whether a specific port appears opened. For opened ports, it will say LISTENING.
- To verify which app uses a particular port, find the PID (the number from the last column) for a specific port.
- Open the “Task Manager” by pressing “Ctrl + Shift + Esc.”
- Go to the “Details” or “Services” tab to see all processes on your Windows 10 system. Sort them by the PID column to find the PID for the port you’re trying to troubleshoot. You can see which app uses the port in the Description section.
Checking for Open Ports with NirSoft CurrPorts
If you find the Command Prompt solution too tricky, a simpler alternative is to use NirSoft CurrPorts. This tool displays your currently opened ports (TCP or IP and UDP). You’ll also see information about a specific process, such as name, path, version info, etc.
This tool has been around for quite a while and is available for Windows 10. You can find the NirSoft Currports download link at Nirsoft’s website towards the bottom.
Note: Ensure you download the correct version. They have 32-bit and 64-bit versions. The app is portable. Unzip the folder, then run the executable file.
Once you have CurrPorts running, perform the following steps:
- You’ll see a list of your computer processes. Sort them by “Local Port” to search through them more easily.
- Now, find and select the port you are troubleshooting.
- You can now see all the process’ details such as its Process Name, Process ID, State, etc.
Another way is to double-click on a process to see its details in a single window.
Checking for Open Ports Using PortQry.exe
PortQry.exe is another handy tool that lets you scan open ports. You download PortQry (scroll down to see the download) and extract it to run it through the Command Prompt. You can also download PortQryUI (more on that below) as an add-on if you don’t want to use the command line, which is a Graphical User Interface (GUI) for PortQry.
With portqry.exe, you insert specific parameters that you find in the executable’s folder.
How to Run PortQry.exe using Command Prompt
- Download PortQry, then unzip the files to your chosen location. The default is “C:\” but can be changed if desired.
- If in the default directory, type
cd c:\PortQryV2\in the Command Prompt to set the location of the executable file.
- If in a custom directory, type
cd [drive letter]:\[folder1]\[folder2]\but replace all content in the square brackets with actual names. Include all folders needed.
portqry.exe -localto launch it. This command displays used TCP and UDP ports for the specified localhost.
- In addition to all parameters that NetStat displays, Portqry also shows you several port mappings and the number of ports in each state.
- You can also check for open ports for a remote host. In the Command Prompt, just run portqry.exe -n [hostname/IP]. Ensure you replace the hostname and IP with the remote host’s name and IP address.
- If you want to look for a specific port, you can add -e [port_number] to the command line.
How to Run PortQry.exe using the UI Add-On
For those that prefer to use a graphical interface instead of commands when using PortQry.exe, Microsoft offers an add-on named PortQryUI.
The PortQryUI add-on already includes the necessary version of PortQry, so you don’t need both downloads to use it.
- Download PortQryUI, then unzip the files to your chosen location. The default is “C:\” but can be changed if desired.
- Launch “Windows Explorer” and navigate to the PortQryUI.exe file location, then click it to launch the UI.
- To view TCP and UDP ports for the localhost (your PC), leave the Destination IP as 127.0.0.1, so it passes through the network’s devices and configuration settings (network card, router’s config, etc.) and not just read from the local PC.
- To view all TCP and UDP ports, click on “Manually input query ports,” then type “1-65535” in the “Ports to query” section. Also, select “TCP,” “UDP,” or “Both” from the “Protocol” dropdown.
- To filter your TCP/UDP ports list, click on “Query predefined service,” then choose which service to query. You can only select one at a time.
- You can also check a remote host by changing the FQDN or domain in the query box at the top.
- If you want to check a specific port, enter the number in “Ports to query.”
In closing, knowing how to check whether a specific port is open or not can come in handy if you’re troubleshooting a program’s network connection or need a port for a particular game. Luckily, it’s not as challenging to do as it looks.
Out of all the options listed above, Netstat is the recommended option as it’s built into the OS and usually gives you all the details you need. There might be a few extra steps required compared to CurrPorts, but you don’t have to download anything, and there’s nothing to screw up.
Windows 10 Open Ports FAQs
How do I check if Port 3306 is open in Windows 10?
To verify if port 3306 is open, you can use NetStat, CurrPorts, or PortQry.
We recommend NetStat, as you won’t have to download new software for this. Run the Command Prompt as administrator. Type the command: “netstat -ab” and hit “Enter.” Wait for the results to load. Port names will be listed next to the local IP address. Just look for port 3306. You can press “Ctrl + F” and type “3306” in the word box to search for it. If the port is open, it will show in the results as “LISTENING.”
To check if port 3306 is open via CurrPorts, just sort by “Local Port,” then find port 3306. If the port is available, it will show in the list.
To use PortQry.exe to find port 3306, use the Command Prompt. Type “-e ” without quotes, then press Enter.
What are Predefined Services in PortQueryUI?
Predefined Services offers details on a small handful of predefined services such as “Domains and Trusts,” “Networking,” “Exchange Server,” etc. The option queries all required ports for the specified services and displays them in the window of the UI.
For those that don’t know where “Predefined Services” resides, it is under the “Help” tab and in the UI directly. Both serve different needs.
The “Help” tab option displays all predefined services straight away without testing any ports. It is a quick reference to each port name, value, and protocol used for each listed service.
The “UI” option lets you specify what service you want to view and see port statuses.