I use the command below when I want to see everything that's on a specific port for either TCP or UDP. The
-n option disables attempting to resolve the IP addresses into domain names, and the
-P disables attempting to figure out the name of a particular port. Also, running as
root will show you more processes than running as a normal user.
sudo lsof -iTCP:53 -iUDP:53 -n -P
The following code example lists all running TCP servers on your local macOS machine:
netstat -a -Ptcp | egrep 'tcp4.*LISTEN' tcp4 0 0 127.0.0.1.2022 *.* LISTEN 0 0 tcp4 0 0 *.3141 *.* LISTEN 0 0
LISTEN shows only sockets listening for connections. That is, servers.
The first line shows a server bound to
2022. It will answer to local requests, but not Internet-based requests.
The second line is a server bound to all addresses, ie
3141. It will answer Internet queries.
To list ports used by clients and servers, use the following:
netstat -an -Ptcp | grep tcp4
This should be possible in a terminal window using the Netstat command.
And if you like the GUI way more:
With Mac OS X 10.5, the /Applications/Utilities folder contains a network utility called: Network Utility, see tab Netstat for these stats presented in a gui application, along with Ping, Lookup, Traceroute, Whois, Finger and Port Scan.