The online FAQ database contains hundreds of answers to frequently asked questions, articles on using our web server applications and other related technologies, and resolutions to common problems. If you are seeing an error message, be sure to try searching on the error message or error number that you are seeing.

Question How can I tell what ports are open on my server?

Answer There are many different reasons why you might need to know what ports are open, or in use, on your server. But whatever your reason is for needing to know, it is fairly easy to find out. The easiest way to get a list of open ports on your server, is by using the command line tool NETSTAT. This tool is critical for helping to understand what network based applications are doing on your server. Since it is run from the command line, you must first open a command line window. At the command prompt, type in the following:

NETSTAT -A -N

The first parameter tells Netstat that you want a list of all the current connections on the server. If you don’t use this option, Netstat will only list the current active connections on the machine, not all “listening” ports, which is what we are usually most interested in knowing when trying to determine open ports on a server. The second parameter tells Netstat that you want the listing of information that it provides in numeric form only. If you don’t use this option, it will list some of the ports that are open with a name, which is only useful if you happen to have memorized all the names that Netstat uses.

If you have run Netstat, you should see a list of ports in various states. When trying to determine open ports on your server, you want to look down the “local address” column. You should see an IP address following by a port number. The IP addresses listed will be either:
  1. The address 0.0.0.0 which represents that the application that has this port open has not bound it to a particular IP address on this machine, but rather has opened that port on ALL IP addresses on this machine.
  2. Any of the actual IP addresses assigned to this machine. These will vary depending on your particular installation. For servers, these are usually static addresses assigned by your ISP.
  3. The loopback address, 127.0.0.1. This is a special IP address that is used by applications when the machine needs to communicate with applications via IP on itself. So basically, it is a way for the machine to talk to itself.
If you are trying to determine if you have any software running on the server using a particular port, you can now scan through this list looking for any references to that port. For example, one of the most common things that someone might do on a Microsoft Windows Server, is try to determine if there is any SMTP applications running on the server. So, since SMTP uses port 25, you would scan through the list that Netstat has provided to you and look for any references to port 25. If you see port 25 listed, then some application has that port open. If you do not see port 25 listed at all, then no applications are running and using that port. Again, we are only referring to the local address column, the foreign address column is not significant when you are only trying to determine what ports are open on a server. On Microsoft Windows Servers, if port 25 is open and you have not installed any SMTP server software, the most likely application is the Microsoft SMTP Service that is included with nearly all versions of Microsoft Windows Server. If you are not using the Microsoft SMTP Service, and are trying to use another SMTP application, you only need to stop the Microsoft SMTP Service and set it’s startup mode in the Control Panel Services applet to either manual or disabled. If you would like to use the CDONTS or CDOSYS components for sending outbound email, you don’t want to simply disable this service, but instead configure it to use an alternate port so that you can run it alongside any other SMTP applications. See FAQ article #17 for more details on how to do that.

If you are not familiar with what ports are used by what services, refer to the IANA published list of port assignments.
If you are not sure what application has specific ports open on your server, the easiest way to find out is to use one of the excellent utilities from SysInternals.com. The free tool TCPView allows you to determine what application has a specific port open. Details are available at www.sysinternals.com. For even more information about what your ports and applications are doing, there is a commercial version available from Winternals.com.