Linux - How to check port locally and remotely ?


Port management on Linux




When you install software (process), you need often to verify the available port in order to configure the component installation.

To find available port numbers, on the server, you should, on UNIX, inspect the services file (The services translation file), located at:


Which process use a port?

Below an example for the port 1521 with netstat, we can see that the program tnslsnr use this port (The -p parameters means program and is mandatory)

netstat -tulpn | grep 1521
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)

Protocol   Recv-Q Send-Q  Local Address     Foreign Address     State
tcp        0      0       :::1521           :::*                LISTEN      4264/tnslsnr


  • The protocol (tcp, udp, raw) used by the socket.
  • Recv-Q: The count of bytes not copied by the user program connected to this socket.
  • Send-Q The count of bytes not acknowledged by the remote host.
  • Local Address: Address and port number of the local end of the socket. Unless the –numeric (-n) option is specified, the socket address is resolved to its canonical host name (FQDN), and the port number is translated into the corresponding service name.
  • Foreign Address: Address and port number of the remote end of the socket. Analogous to “Local Address.”
  • State: The state of the socket (ESTABLISHED, LISTEN, …)
  • PID/Program name: Slash-separated pair of the process id (PID) and process name of the process that owns the socket.


with Network - netcat (nc, ncat)

  • Check one port
nc -zv hostname port
DNS fwd/rev mismatch: hostname  != hostname.lan
hostname  [] 9000 (?) open

Powered by ComboStrap