Determining if a port is in use by an application or process on a virtual machine
search cancel

Determining if a port is in use by an application or process on a virtual machine

book

Article ID: 308682

calendar_today

Updated On:

Products

VMware VMware Desktop Hypervisor VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

For troubleshooting purposes, it may be necessary to check if a port is already in use by a different application on a server.

This article provides steps to use the netstat and lsof utilities to check the ports in use and view the application that is utilizing the port.


Resolution

Checking port usage from Windows

To check the listening ports and applications with netstat:

  1. Open a command prompt. For more information, see Opening a command or shell prompt.
  2. Run this command:

    netstat -bano

    Example output:

    C:\netstat -bano | more

    Proto Local Address Foreign Address State PID
    TCP 0.0.0.0:port 0.0.0.0:0 LISTENING process ID
    [process.exe]
    TCP 0.0.0.0:port 0.0.0.0:0 LISTENING process ID
    [process.exe]
    ...


    where:
     
    • process is the name of the application
    • port is the port that is being used
    • process ID is the process ID of the process
       
  3. Should "Can not obtain ownership information" appears instead of the [process.exe] entry, to find more information navigate to the Windows Task Manager using the process ID:
     
    • Start Task Manager by pressing Ctrl+Shift+Esc
    • Click on the Processes tab and click View then Select Columns...
    • In the Select Process Page Columns window, click PID (Process Identifier), then click OK
    • Sort based on the PID column and find the PID number returned from the previous command

The output shows the processes that are listening, as well as the name of the process and process ID. When reviewing the information, only look at the ports that are listening on that port. If no process is listening on a port, it means that the port is free to be utilized.

When determining what is listening on the port, decide what action needs to be taken to resolve the conflict. This involves stopping a service or uninstalling the application that is utilizing the port.

For a list of ports used by VMware products, see TCP and UDP Ports required to access VMware vCenter Server, VMware ESXi and ESX hosts, and other network components.

Checking port usage from Linux / Mac OS / ESX

Note: Mac OS and certain distributions of Linux do not support listing the process name with netstat. If using Mac OS or are seeing errors on a distribution of Linux, follow the lsof instructions below.

To check the listening ports and applications with netstat:

  1. Open a shell prompt. For more information, see Opening a command or shell prompt.
  2. In the shell prompt window, run this command:

    netstat -pan

    Example output:

    [root@server]# netstat -pan

    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
    tcp 0 0 0.0.0.0:port 0.0.0.0:* LISTEN process ID/process
    tcp 0 0 0.0.0.0:port 0.0.0.0:* LISTEN process ID/process

    ...

    where:
     
    • process is the name of the application
    • port is the port that is being used
    • process ID is the process ID of the process

To check the listening ports and applications with lsof:

  1. Open a shell prompt. For more information, see Opening a command or shell prompt.
  2. In the shell prompt window, run this command:

    lsof -i -P -n

    Example output:

    [root@server]# lsof -i -P -n
    COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
    process process ID root 3u IPv4 3011 TCP *:port (LISTEN)
    process process ID root 3u IPv4 3011 TCP *:port (LISTEN)
    ...


    where:
     
    • process is the name of the application
    • port is the port that is being used
    • process ID is the process ID of the process

The output from either of these two commands shows the processes that are listening, the name of the process, and the process ID. When reviewing the information it is important to only look at the ports that are listening to ensure findind the correct application that is listening on that port. If no process is listening on a port, it means that the port is free to be utilized.

When determining what is listening on the port, decide what action needs to be taken to resolve the conflict. This involves stopping a service or uninstalling the application that is utilizing the port.

For a list of ports used by VMware products, see TCP and UDP Ports required to access VMware vCenter Server, VMware ESXi and ESX hosts, and other network components.

Additional Information