- Wireshark is free (GPL v2), maintained by the Wireshark Foundation, and cross-platform.
- Includes GUI, TShark, and utilities such as dumpcap, editcap, mergecap, and text2pcap.
- The libwireshark, libwiretap, and libwsutil libraries support dissection and multiple formats.
- Secure capture via dumpcap, powerful filters, and extensive automation options.

If you work in networking, security, or development and want to understand what's happening on your cables and Wi-Fi, working with Wireshark It is an essential element. This open source package analyzer with decades of evolution that allows capturing, dissecting and studying traffic at the packet level with surgical precision.
In this article we analyze it in depth: from its license and sponsorship to its packages in GNU/Linux, including console utilities, supported formats, compilation requirements, capture permissions and a truly complete historical and functional overview.
What is Wireshark and what is it used for today?
In essence, Wireshark is a protocol analyzer and traffic capture device which allows you to put an interface in promiscuous or monitor mode (if the system supports it) and view frames that wouldn't be sent to your Mac, analyze conversations, reconstruct flows, color packets according to rules, and apply very expressive display filters. Furthermore, includes TShark (terminal version) and a set of utilities for tasks such as reordering, splitting, merging, and converting screenshots.
Although its use is reminiscent of tcpdump, it provides a modern graphical interface based on Qt with filtering, sorting, and deep dissection for thousands of protocols. If you're on a switch, remember that promiscuous mode doesn't guarantee you'll see all the traffic: for complete scenarios you'll need port mirroring or network taps, which their documentation also mentions as best practices.

License, foundation and development model
Wireshark is distributed under GNU GPL v2 and in many places, as “GPL v2 or later”. Some utilities in the source code are licensed under different but compatible licenses, such as the pidl tool with GPLv3+, which does not affect the resulting binary of the analyzer. There is no express or implied warranty; use it at your own risk, as is usual with free software.
La Wireshark Foundation It coordinates development and distribution. It relies on donations from individuals and organizations whose work is based on Wireshark. The project boasts thousands of registered authors and historical figures such as Gerald Combs, Gilbert Ramirez, and Guy Harris among its most prominent supporters.
Wireshark runs on Linux, Windows, macOS, and other Unix-like systems (BSD, Solaris, etc.). Official packages are released for Windows and macOS, and on GNU/Linux it is usually included as a standard or add-on package in distributions such as Debian, Ubuntu, Fedora, CentOS, RHEL, Arch, Gentoo, openSUSE, FreeBSD, DragonFly BSD, NetBSD, and OpenBSD. It is also available on third-party systems such as Homebrew, MacPorts, pkgsrc or OpenCSW.
To compile from code, you'll need Python 3; AsciiDoctor for documentation; and tools like Perl and GNU flex (classic lex won't work). Configuration using CMake allows you to enable or disable specific support, for example, compression libraries with -DENABLE_ZLIB=OFF, -DENABLE_LZ4=OFF or -DENABLE_ZSTD=OFF, or libsmi support with -DENABLE_SMI=OFF if you prefer not to load MIBs.
Packages and libraries in Debian-based systems
In Debian/Ubuntu and derivative environments, the Wireshark ecosystem is divided into multiple packagesBelow is a breakdown with features, approximate sizes, and dependencies. These packages allow you to choose from a complete GUI to libraries and development tools for integrating dissections into your own applications.
wireshark
Graphical application for capturing and analyzing traffic with a Qt interface. Estimated size: 10.59 MB. Facility: sudo apt install wireshark
Key dependencies
- libc6, libgcc-s1, libstdc++6
- libgcrypt20, libglib2.0-0t64
- libpcap0.8t64
- Qt 6 (core, gui, widgets, multimedia, svg, printsupport and QPA plugins)
- libwireshark18, libwiretap15, libwsutil16
- libnl-3-200, libnl-genl-3-200, libnl-route-3-200
- libminizip1t64, libspeexdsp1, wireshark-common
Among its startup options you will find parameters to choose the interface (-i), capture filters (-f), snapshot limit, monitor mode, link type lists, display filters (-Y), “Decode As” and preferences, as well as file output formats and capture comments. The application also allows configuration profiling and statistics advanced features from the interface.
tshark
Console version for command-line capture and analysis. Estimated size: 429 KB. Facility: sudo apt install tshark
Key dependencies
- libc6, libglib2.0-0t64
- libnl-3-200, libnl-route-3-200
- libpcap0.8t64
- libwireshark18, libwiretap15, libwsutil16
- wireshark-common
It allows you to select interfaces, apply capture and display filters, define stopping conditions (time, size, number of packets), use circular buffers, print details, hex and JSON dumps, and export TLS objects and keys. It can also colorize the output in a compatible terminal. adjust log logging by domains and levels of detail. Caution is advised if you enable BPF JIT at the kernel level, as it may have security implications.
wireshark-common
Common files for wireshark and tshark (e.g., dictionaries, configurations, and line utilities). Estimated size: 1.62 MB. Facility: sudo apt install wireshark-common
Key dependencies
- debconf (or debconf-2.0), libc6
- libcap2 and libcap2-bin
- libgcrypt20, libglib2.0-0t64
- libpcap0.8t64, libpcre2-8-0
- libnl-3-200, libnl-genl-3-200, libnl-route-3-200
- libspeexdsp1, libssh-4, libsystemd0
- libmaxminddb0
- libwireshark18, libwiretap15, libwsutil16
- zlib1g
This package includes utilities such as capinfos (capture file information: type, encapsulation, duration, rates, sizes, hashes and comments), captype (identify file types), dumpcap (lightweight capture device that uses pcapng/pcap with autostop and circular buffers), editcap (edit/split/convert captures, adjust timestamps, remove duplicates, add comments or secrets), mergecap (merge or concatenate multiple captures), mmdbresolve (resolve IP geolocation with MMDB databases), randpkt (multi-protocol synthetic packet generator), rawshark (crude dissection with field output), reordercap (reorder by timestamp), sharkd (daemon with API to process captures) and text2pcap (convert hexdumps or structured text into valid captures).
libwireshark18 and libwireshark-data
Central packet dissection library. Provides the protocol analyzers used by Wireshark/TShark. Approximate library size: 126.13 MB. Facility: sudo apt install libwireshark18 y sudo apt install libwireshark-data
Notable departments
- libc6, libglib2.0-0t64
- libgcrypt20, libgnutls30t64
- liblua5.4-0
- libpcre2-8-0
- libxml2-16
- zlib1g, libzstd1, liblz4-1, libsnappy1v5
- libnghttp2-14, libnghttp3-9
- libbrotli1
- libopus0, libsbc1, libspandsp2t64, libbcg729-0
- libcares2
- libk5crypto3, libkrb5-3
- libopencore-amrnb0
- libwiretap15, libwsutil16
- libwireshark-data
It includes support for a huge number of protocols and options such as enabling or disabling specific dissections, heuristics, and "Decode As" from the interface or the command line; thanks to this, you can adapt the dissection of real traffic of your environment.
libwiretap15 and libwiretap-dev
Wiretap is a library for reading and writing multiple capture file formats. Its strengths are the variety of formats it supports; its limitations are: It does not filter or perform direct capture.. Facility: sudo apt install libwiretap15 y sudo apt install libwiretap-dev
Supported formats (selection)
- libpcap
- Sniffer/Windows Sniffer Pro and NetXRay
- LANalyzer
- NetworkMonitor
- snoop
- AIX iptrace
- RADCOM WAN/LAN
- Lucent/Ascend
- HP-UX nettl
- Toshiba ISDN Router
- ISDN4BSD i4btrace
- Cisco Secure IDS iplogging
- Logs pppd (pppdump)
- VMS TCPTRACE
- DBS Etherwatch (text)
- Catapult DCT2000 (.out)
libwiretap15 dependencies
- libc6, libglib2.0-0t64
- liblz4-1, libzstd1, zlib1g
- libwsutil16
The -dev variant provides the static library and C headers to integrate read/write operations into your tools. This allows you to develop utilities that manipulate data. pcap, pcapng and other containers as part of our own pipelines.
libwsutil16 and libwsutil-dev
A set of utilities shared by Wireshark and related libraries: auxiliary functions for string manipulation, buffering, encryption, etc. Installation: sudo apt install libwsutil16 y sudo apt install libwsutil-dev
libwsutil16 dependencies
- libc6
- libgcrypt20
- libglib2.0-0t64
- libgnutls30t64
- libpcre2-8-0
- zlib1g
The -dev package includes headers and a static library so that external applications can link common utilities without reimplementing wheels. It is the foundation of multiple shared functions that use Wireshark and TShark.
wireshark-dev
Tools and files for creating new "dissectors". It provides scripts like idl2wrs, as well as dependencies for compiling and testing. Estimated size: 621 KB. Facility: sudo apt install wireshark-dev
outbuildings
- esnacc
- libc6
- libglib2.0-0t64
- libpcap0.8-dev
- libwireshark-dev
- libwiretap-dev
- libwsutil16
- omniidl
- python3 and python3-ply
It includes utilities such as asn2deb (generates Debian packages for BER monitoring from ASN.1) and idl2deb (packages for CORBA). And, above all, idl2wrsThis tool transforms a CORBA IDL into the skeleton of a C plugin for dissecting GIOP/IIOP traffic. This workflow relies on Python scripts (wireshark_be.py and wireshark_gen.py) and supports heuristic dissection by default. The tool searches for its modules in PYTHONPATH/site-packages or in the current directory, and accepts file redirection to generate the code.
wireshark-doc
User documentation, development guide and Lua reference. Estimated size: 13.40 MB. Facility: sudo apt install wireshark-doc
Recommended if you're going to delve deeper into extensions, scripting and APIsThe online documentation on the official website is updated with each stable version.

Capture and security permits
In many systems, direct capture requires elevated privileges. For this reason, Wireshark and TShark delegate capture to a third-party service. dumpcapA binary designed to run with privileges (set-UID or capabilities) to minimize the attack surface. Running the entire GUI as root is not good practice; it's preferable to capture with dumpcap or tcpdump and analyze without privileges to reduce risks.
The project's history includes security incidents in dissectors over the years, and some platforms like OpenBSD retired the old Ethereal instance for that reason. With the current model, isolation from capture and constant updates improve the situation, but it's always advisable to follow the safety instructions And, if you detect suspicious activity, know how block suspicious network connections and avoid opening untrusted screenshots without prior review.
File formats, compression, and special fonts
Wireshark reads and writes pcap and pcapng, as well as formats from other analyzers such as snoop, Network General Sniffer, Microsoft Network Monitor, and the many listed by Wiretap above. It can open compressed files if they were compiled with libraries for pcapng. GZIP, LZ4 and ZSTDIn particular, GZIP and LZ4 with independent blocks allow for fast jumps, improving GUI performance in large captures.
The project documents features such as AIX iptrace (where a HUP to the daemon closes cleanly), support for Lucent/Ascend traces, Toshiba ISDN or CoSine L2, and indicates how to capture the textual output to a file (e.g., with telnet <equipo> | tee salida.txt or using the tool script) to import it later with text2pcap. These paths take you out of “conventional” captures when you use equipment that doesn't directly tip over pcap.

Suite utilities and option categories
In addition to Wireshark and TShark, the distribution includes several tools that cover very specific tasksWithout copying the help text verbatim, here's a summary organized by categories so you know what each one does and what options you'll find:
- dumpcap: “pure and simple” pcap/pcapng capture, interface selection, BPF filters, buffer size, rotation by time/size/files, creation of ring buffers, capture comments and output in format machine-readableIt warns against activating JIT of BPF due to potential risks.
- capinfosIt displays file type, encapsulation, interfaces, and metadata; number of packets, file size, total length, snapshot limit, chronology (first/last), average rates (bps/Bps/pps), average packet size, hashes, and comments. It allows for tabular or detailed output and machine-readable formats.
- captype: identifies the type of capture file for one or more entries with help and version options.
- editcapIt selects/deletes packet ranges, snaps/chops, adjusts timestamps (including strict order), removes duplicates with configurable windows, adds comments per frame, splits output by number or time, changes container and encapsulation, works with decryption secrets, and compresses output. It's the all-purpose tool for "cleaning up" captures.
- mergecap: combines multiple captures into one, either by linear concatenation or timestamp-based mixing, controls snaplen, defines output type, IDB merging mode and final compression.
- reordercap: reorders a file by timestamp generating a clean output and, if it is already sorted, can avoid writing the result to save I/O.
- text2pcap: converts hexdumps or text with regex to valid capture; recognizes offsets in various databases, timestamps with strptime formats (including fractional precision), detects attached ASCII if applicable, and can prepend "dummy" headers (Ethernet, IPv4/IPv6, UDP/TCP/SCTP, EXPORTED_PDU) with ports, addresses, and labels indicated.
- rawshark: “raw” field-oriented reader; allows you to set encapsulation or dissection protocol, disable name resolutions, set reading/display filters and decide the field output format, useful for pipeline with other tools.
- randpktGenerates files with random packets of types such as ARP, BGP, DNS, Ethernet, IPv4/IPv6, ICMP, TCP/UDP, SCTP, Syslog, USB-Linux, etc., specifying the account, maximum size, and container. Ideal for tests and demos.
- mmdbresolve: Query MaxMind databases (MMDB) to display geolocation of IPv4/IPv6 addresses, specifying one or more database files.
- sharkd: daemon that exposes an API (mode “gold”) or classic socket (mode “classic”); supports configuration profiles and is controlled from clients for server-side dissection and searches, useful in automation and services.
Architecture, characteristics and limitations
Wireshark relies on libpcap/Npcap for capture, and on an ecosystem of libraries (libwireshark, libwiretap, libwsutil) that separate dissection, formats, and utilities. It allows for VoIP call detection, audio playback in supported encodings, raw USB traffic capture, and filtering on Wi-Fi networks (if they traverse monitored Ethernet). plugins for new protocols written in C or Lua. It can also receive encapsulated remote traffic (e.g., TZSP) for real-time analysis from another machine.
It's not an IDS, nor does it issue alerts; its role is passive: it inspects, measures, and displays. Even so, auxiliary tools provide statistics and workflows, and training materials are readily available (including educational apps geared towards 2025 that teach filters, sniffing, basic OS fingerprinting, real-time analysis, automation, encrypted traffic, and integration with DevOps practices). This educational aspect complements the core functionality of diagnosis and troubleshooting.
Compatibility and ecosystem
The construction and testing platforms include Linux (Ubuntu), Windows and macOSThe project also mentions broad compatibility with additional Unix-like systems and distribution via third-party managers. In some cases, older OS versions require previous branches (for example, Windows XP with version 1.10 or earlier). Generally, you can install from official repositories or binaries in most environments without major issues.
They integrate with network simulators (ns, OPNET Modeler), and third-party tools (e.g., Aircrack for 802.11) can be used to produce captures that Wireshark opens without difficulty. On behalf of strict legality and ethicsRemember to only capture on networks and in scenarios for which you have express authorization.
Name, official websites, and control data
The official website is wireshark.orgwith downloads in its /download subdirectory and online documentation for users and developers. There are pages with authority control (e.g., GND) and lists of links to the code repository, bug tracker, and project blog, useful for keeping up with news and reporting issues.
Before you start capturing, verify your system's permissions and capabilities, decide if you'll use dumpcap/tcpdump to dump to disk and analyze without privileges, and prepare capture and display filters consistent with your objective. With a good methodology, Wireshark simplifies the complex and gives you exactly the right information. The visibility you need to diagnose, learn, or audit networks of any size.
Editor specialized in technology and internet issues with more than ten years of experience in different digital media. I have worked as an editor and content creator for e-commerce, communication, online marketing and advertising companies. I have also written on economics, finance and other sectors websites. My work is also my passion. Now, through my articles in Tecnobits, I try to explore all the news and new opportunities that the world of technology offers us every day to improve our lives.