Wireshark is a free and open-source packet analyzer. It is used for network troubleshooting, analysis, software and communications protocol development, and education. Originally named Ethereal, in May 2006 the project was renamed Wireshark due to trademark issues.
Thepackage has been split into the CLI version and GTK frontend, which depends on the CLI.
Capturing as normal user
Running Wireshark as root is insecure.
$ getcap /usr/bin/dumpcap
/usr/bin/dumpcap = cap_net_admin,cap_net_raw+eip
/usr/bin/dumpcap is the only process that has privileges to
/usr/bin/dumpcap can only be run by root and
members of the
To use wireshark as a normal user, add user to the wireshark group:
# gpasswd -a "username" wireshark
Another way is to use sudo to temporarily change group to
wireshark. The following line allows all users in the wheel
group to run programs with GID set to wireshark GID:
%wheel ALL=(:wireshark) /usr/bin/wireshark, /usr/bin/tshark
Then run wireshark with
$ sudo -g wireshark wireshark
A few capturing techniques
There are a number of different ways to capture exactly what you are looking for in Wireshark, by applying filters.
Filtering TCP packets
If you want to see all the current TCP packets, type
tcp into the "Filter" bar.
Filtering UDP packets
If you want to see all the current UDP packets, type
udp into the "Filter" bar.
Filter packets to a specific IP Address
- If you would like to see all the traffic going to a specific address, enter
ip.dst == 18.104.22.168, replacing
22.214.171.124with the IP address the outgoing traffic is being sent to.
- If you would like to see all the incoming traffic for a specific address, enter
ip.src == 126.96.36.199, replacing
188.8.131.52with the IP address the incoming traffic is being sent to.