In today’s interconnected world, it’s uncommon to find an application—or even malware—that doesn’t make use of the network. Netiquette is a network monitor that lets you explore all sockets and connections through an interactive UI or the command line.
Special mahalo to Jonathan Levin for inspiring the creation of this tool.
Running Netiquette
First download Netiquette. Depending on your browser, you may need to manually unzip the application by double-clicking on the zipped archive.
There is no need to install anything, and Netiquette can be run from anywhere. (This also means there is nothing to uninstall, simple delete the application).
When launched, Netiquette will display all active network connections and sockets. This information is displayed under the process that is responsible for the network activity, and includes information such as the source/destination IP address and port, protocol, interface, state, as well as the number of uploaded and downloaded bytes:
By default, Netiquette auto-refreshes every few seconds to ensure that the displayed network information remains up to date. Networking details related to Apple processes are hidden by default, but this and other settings can be easily customized through settings (discussed below).
At the top (right), you'll find a filter box that can be used to narrow down displayed network connections based on criteria such as process name, path, PID, or network details like IP address, port, interface, and connection state.
For example, typing 'Listen' will display all network sockets that are actively listening for potential remote connections:
At the bottom of the window, you'll find buttons to save the output, access settings, and expand or collapse all connections.
Click the 'Save' button (bottom left), to export the network activity to a JSON file:
Settings
Clicking on the 'Settings' button will open the settings:
Under the 'General' tab, you'll find settings related to how Netiquette both enumerates and displays networking activity. The description under each, explains each setting.
Under the 'Update' tab, you can toggle automatic update checks, as well as manually check for any updates:
Commandline Interface
Netiquette can also be run via the commandline, to list all active network connections.
Execute the Netiquette binary (note: specify the full path to the Netiquette binary within its application bundle) with -h or -help to display information about the self-explanatory commandline options:
$ Netiquette.app/Contents/MacOS/Netiquette -h
NETIQUETTE USAGE:
-h or -help display this usage info
-list enumerate all network connections
-names resolve remote host names (via DNS)
-pretty JSON output is 'pretty-printed' for readability
-skipApple ignore connections that belong to Apple processes
The -list commandline flag will generate a (JSON) list of all active network connections and sockets: