PAGES
← all tools
◆ Network Analysis & Monitoring

tcpdump

tcpdump-4.99.7 open-source

tcpdump is a tool for network monitoring and data acquisition that prints packet contents on a network interface matching a filter expression.

Summary

tcpdump is an open-source command-line tool for capturing and decoding network traffic, reading packets live from a network interface or from a saved capture file and printing protocol detail down to individual TCP, DNS, and TLS exchanges. It relies on libpcap for the actual capture and runs on nearly every Unix-like system plus Windows, which makes it a fixture for network engineers and incident responders who need to see what is actually on the wire rather than what a higher-level tool infers. It sits in the packet-capture and protocol-dissection space as the baseline tool others build filters and workflows around, rather than a GUIGUIA graphical user interface, controls such as windows, buttons and menus. It lets people use software visually rather than entering commands. analysis platform. Development dates back to 1999, and with 254 contributors, over a hundred commits in the past year, and a release 12 days ago, it remains actively maintained.

tcpdump is a tool for network monitoring and data acquisition that prints packet contents on a network interface matching a filter expression.

How tcpdump helps

Which host a machine is quietly talking to and over what protocol?

shows every DNS lookup and the TCP handshake that follows it, so a name like a suspicious domain can be tied to the IP address and port a connection actually landed on

Is a remote service really using encryption, and how far did the handshake get before something went wrong?

decodes the negotiation packet by packet, so a session that stalls or resets mid-exchange shows exactly which step failed

Is a connection tearing down cleanly or hanging open?

prints the sequence of closing packets between two hosts, making it visible whether both sides exchanged proper teardown signals or one side just stopped responding

What is actually inside a payload that a higher-level tool only summarizes?

renders each packet's bytes in hex and ASCII side by side, so a plaintext value like a hostname sent before encryption starts is readable directly off the wire

Did a filter narrow the capture down to the traffic that matters, or is something being missed?

compiles the filter to its underlying match instructions and reports them, so it is possible to check what a filter expression is actually keeping or discarding before trusting the results

How much traffic passed through during the window being investigated, and does a saved capture cover the incident?

counts every packet in a file along with the link type and timestamps, showing whether the recording spans the period in question or stops short of it

all 17 features, with the evidence for each →

Languages

Not documented

Features

17 capabilities across 9 capability groups · 7 backed by code, an API document or a real run

Built from tcpdump's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

  • tcpdump covers 8 of the 34 network analysis capabilities we track.
  • tcpdump covers 1 of the 5 network observation capabilities we track.

What tcpdump offers you

  • Command-line interface4
Network traffic analysis 3 features Network observation since 1992
Packet decoding and display verified Decodes captured packets and prints protocol-level detail across Ethernet, IP, TCP, UDP, DNS, and TLS in a readable format. 37 releases · 4 other sources · first seen May 1992

Shared capability: Network traffic analysis

release 37 total

  • Adds support for decoding the TCP AE (AccECN) flag in TCP header output. tcpdump-4.99.7 · Sep 2026 · source · release history
  • Removes protocol decoding support for the obsolete OTV draft-hasmit-otv-04 4.99.6 · Dec 2025 · source · release history
  • Add support for new network protocols and DLTs: Arista, Autosar SOME/IP, Broadcom LI and Ethernet switches tag, IEEE 802.15.9, IP-over-InfiniBand (IPoIB), Linux SLL2, Linux vsockmon, MACsec, Marvell Distributed Switch Architecture, OpenFlow 1.3, Precision Time Protocol (PTP), SSH, WHOIS, ZigBee Encapsulation Protocol… 4.99.0 · Dec 2020 · source · release history
  • Support of Type 3 and Type 4 LISP packets. 4.8.1 · Oct 2016 · source · release history
  • Add printing function for Generic Protocol Extension for VXLAN 4.8.1 · Oct 2016 · source · release history
  • Add support for the Marvell Extended Distributed Switch Architecture header 4.8.1 · Oct 2016 · source · release history

we ran it

  • Decoded multiple packets showing DNS queries from 192.168.0.51 to 192.168.0.1 for navigator-bs.gmx.com, followed by a TLS handshake between 192.168.0.51 and 212.227.111.53 on port 443; each packet is… Aug 2026 · the full run
  • Verbose packet-level detail: UDP DNS queries and responses for navigator-bs.gmx.com between 192.168.0.51 and 192.168.0.1, resolving to 212.227.111.53, followed by a TCP TLS handshake and data… Aug 2026 · the full run
  • Verbose per-packet decode of traffic between 192.168.0.51 and 192.168.0.1, including UDP DNS queries and responses for navigator-bs.gmx.com resolving to 212.227.111.53, followed by a TCP/443 (HTTPS)… Aug 2026 · the full run
  • Decoded IP packets without timestamps, including DNS queries for navigator-bs.gmx.com, a full TCP handshake and TLS session to 212.227.111.53 on port 443, and multiple FIN exchanges closing HTTP… Aug 2026 · the full run
DNS traffic capture and display verified Captures and decodes DNS queries and responses, optionally with name resolution turned off to see raw addresses. 3 releases · 3 other sources · first seen Jun 1996

Shared capability: Network traffic analysis

release

we ran it

  • IP traffic between 192.168.0.51 and external hosts including DNS queries for navigator-bs.gmx.com, a full TLS handshake and teardown to 212.227.111.53 on port 443, and multiple TCP FIN exchanges to… Aug 2026 · the full run
  • The tool decoded and printed packet records spanning at least the timestamp range 00:00:33 to 00:00:36, showing DNS queries for navigator-bs.gmx.com, a complete TLS handshake and data exchange… Aug 2026 · the full run

example

  • Watch DNS traffic without name resolution tcpdump -nn port 53
Multi-file capture input shipped Concatenates multiple capture files for analysis within a single session. 2 releases · first seen Nov 2013

Shared capability: Network traffic analysis

release

  • Updates VXLAN decoding to include UDP port 8472 (used by Linux) as a default known port 4.99.6 · Dec 2025 · source · release history
  • Adds support for OpenFlow 1.0 with a corresponding test case 4.5.0 · Nov 2013 · source · release history
New protocol support (added dissectors) 2 features Network analysis since 2003
Routing protocol decoding support shipped Decodes specific routing protocol packets including AODV, IS-IS over Cisco HDLC, BFD, and bridging encapsulations such as RFC 2684 Ethernet-over-ATM and RFC 2625 IP-over-Fibre Channel. 19 releases · first seen Nov 2003

Shared capability: New protocol support (added dissectors)

release 19 total

DNS protocol enhancements shipped Extends DNS capabilities by adding support for mDNS multicast resolution. 3 releases · first seen Nov 2003

Shared capability: New protocol support (added dissectors)

release

Packet capture (live and offline) 1 feature Network analysis since 1992
Packet capture and file reading verified Captures live packets or reads from saved capture files, reporting key file properties and total packet counts. 10 releases · 5 other sources · first seen May 1992

Shared capability: Packet capture (live and offline)

release 10 total

docs

  • Command-line network packet analyzer that captures and displays TCP/IP and other packets transmitted over a network.

we ran it

  • Ethernet frames between MACs ec:f4:bb:4f:b2:45 and 78:54:2e:9f:10:28, capturing DNS queries for navigator-bs.gmx.com and a subsequent TLS handshake from 192.168.0.51 to 212.227.111.53 on port 443. Aug 2026 · the full run
  • The file contains exactly 2000 packets over an Ethernet (EN10MB) link with a snapshot length of 65535 bytes. No filtering was applied, so the count reflects all packets in the file. Aug 2026 · the full run

example

  • Capture to a file while simultaneously printing packets to stdout for real-time inspection tcpdump --print -w capture.pcap 'udp' 4.99.0 · Dec 2020 · source
  • Capture packets to a file tcpdump -i eth0 -w capture.pcap
Ring-buffer capture (rotating capture files) 1 feature Network analysis since 2002
Capture file rotation shipped Automatically rotates capture files when they reach a specified size limit. 2 releases · 1 other source · first seen Jan 2002

Shared capability: Ring-buffer capture (rotating capture files)

Also counts toward: Command-line interface

release

  • Adds optional unit suffix support on the -C file size parameter 4.99.6 · Dec 2025 · source · release history
  • -C option to rotate save file every optarg * 1,000,000 bytes 3.7 · Jan 2002 · source · release history

example

  • Rotate capture files automatically when they reach a specific size limit. tcpdump -C 10 -w capture.pcap host 192.168.1.1 3.7 · Jan 2002 · source
Capture filtering (BPF) 1 feature Network analysis since 1992
BPF packet filtering verified Applies BPF filter expressions to select only matching packets, and can display the compiled filter instructions. 3 releases · 5 other sources · first seen May 1992

Shared capability: Capture filtering (BPF)

release

  • Added filtering support for VLANs, ESIS, and ISIS 3.6 · Jan 2001 · source · release history
  • Adds icmp keyword to filters for matching ICMP packet types, e.g., 'icmp[0] != 8 and icmp[0] != 0' 2.2 · May 1992 · source · release history
  • Adds multicast keyword and extends broadcast to support protocol qualifications like ether multicast 2.2 · May 1992 · source · release history

we ran it

  • The compiled BPF filter program consists of a single instruction: (000) ret #65535, meaning match all packets up to 65535 bytes. Aug 2026 · the full run
  • Emitted a single BPF instruction line { 0x6, 0, 0, 0x0000ffff } representing the compiled match-all filter, plus a header line confirming the file link-type as EN10MB (Ethernet) with a snapshot… Aug 2026 · the full run
  • A count of 1 instruction followed by the single BPF instruction line '6 0 0 65535', meaning the default match-all filter compiled to one instruction. Aug 2026 · the full run

example

  • Capture only non-echo ICMP packets (e.g. destination unreachable) on the local loopback interface. tcpdump -i lo 'icmp[0] != 8 and icmp[0] != 0' 2.2 · May 1992 · source
  • Capture FTP data between two hosts tcpdump host local-host and remote-host and port ftp-data >tracefile
Protocol dissection (decoding packets) 1 feature Network analysis since 2011
MPTCP option decoding shipped Decodes MPTCP sub-options including MP_CAPABLE capability flags and MP_TCPRST reset flags and reasons. 5 releases · 1 other source · first seen Dec 2011

Shared capability: Protocol dissection (decoding packets)

release

  • Parses the data_len field in the MPTCP MP_CAPABLE option and prints all eight capability flags (A through H). tcpdump-4.99.7 · Sep 2026 · source · release history
  • Adds dissection of the MPTCP MP_TCPRST sub-option (subtype 0x8), including U/V/W/T flags and reset reasons such as Middlebox interference. tcpdump-4.99.7 · Sep 2026 · source · release history
  • Adds new decoder for MPTCP 4.5.0 · Nov 2013 · source · release history
  • Adds radius as an option for -T to decode RADIUS traffic 4.4.0 · Apr 2013 · source · release history
  • Adds Babel printer support on port 6696 4.2.1 · Dec 2011 · source · release history

example

  • Decode RADIUS packets in a capture file by forcing the dissection parser. tcpdump -r radius.pcap -T radius 4.4.0 · Apr 2013 · source
Tunnel and encapsulation decoding 1 feature Network analysis since 2013
GENEVE tunnel decoding shipped Decodes GENEVE-encapsulated packets, exposing the inner traffic carried inside the tunnel. 2 releases · 1 other source · first seen Nov 2013

Shared capability: Tunnel and encapsulation decoding

release

  • Adds geneve dissector for Generic Network Virtualization Encapsulation packets 4.7.0 · Nov 2014 · source · release history
  • Adds vxlan as a named option for -T to decode VXLAN traffic (draft-mahalingam-dutt-dcops-vxlan-03) 4.5.0 · Nov 2013 · source · release history

docs

  • Updated: 31 July 2026 • geneve (Generic Network Virtualization Encapsulation), This HTML man page was generated at 15:57:50 GMT, August 05, 2026 docs update · Aug 2026 · source
Hex and ASCII payload display 1 feature Network analysis since 2000
Hex and ASCII payload display verified Displays packet payloads as a side-by-side hex and ASCII dump so the user can read raw packet content directly. 28 releases · 3 other sources · first seen Jan 2000

Shared capability: Hex and ASCII payload display

release 28 total

  • Adds ability to print text protocols including FTP, HTTP, SMTP, and RTSP support 4.7.0 · Nov 2014 · source · release history
  • Adds DCCP decoding capability for Datagram Congestion Control Protocol traffic 3.9.4 · Sep 2005 · source · release history
  • Adds FRF.16 support for Frame Relay with bug fixes in existing Frame Relay handling 3.9.4 · Sep 2005 · source · release history
  • Adds support for more Juniper link-layer types to expand captured network compatibility 3.9.4 · Sep 2005 · source · release history
  • Adds RSVP integrity object support and updates fast-reroute object printer to latest spec 3.9.4 · Sep 2005 · source · release history
  • PGM (RFC 3208) decoder added for pgm link layer type 3.9.3 · Jul 2005 · source · release history

we ran it

  • DNS queries and responses between 192.168.0.51 and 192.168.0.1 for navigator-bs.gmx.com, followed by a TLS handshake to 212.227.111.53 on port 443; each packet is rendered with timestamped decoded… Aug 2026 · the full run
  • A sequence of DNS queries and responses between 192.168.0.51 and 192.168.0.1 resolving navigator-bs.gmx.com to 212.227.111.53, followed by a TLS handshake from 192.168.0.51 to that IP on port 443;… Aug 2026 · the full run
  • A sequence of DNS queries from 192.168.0.51 to 192.168.0.1 resolving navigator-bs.gmx.com, followed by a TCP/TLS handshake to 212.227.111.53 on port 443, including a visible TLS ClientHello with the… Aug 2026 · the full run
Packet crafting and generation 1 feature Network analysis since 2005
Packet injection and transmission shipped Sends crafted packets to a target interface for testing network resilience using various underlying system calls. 1 release · 1 other source · first seen Jul 2005

Shared capability: Packet crafting and generation

release

  • Adds support for sending packets via send() syscall (requires root/CAP_NET_RAW) 3.9.3 · Jul 2005 · source · release history

example

  • Send crafted packets from a file to a target interface for testing network resilience. tcpdump --chroot /var/lib/chroot -w send.pcap 3.9.3 · Jul 2005 · source
Other / not yet classified 5 features Features we have not matched to a capability yet. A suggested match is marked.
Verbose output and display options verified suggested Controls output verbosity and formatting details such as whether addresses are shown as names or numbers and how IP header lines are broken. 9 releases · 3 other sources · first seen Jun 1994

Suggested capability: Network traffic analysis. This is our guess, not confirmed.

Also counts toward: Command-line interface

release 9 total

  • Adds an error message when --count is used without -r or -V.⁠︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄⁠ tcpdump-4.99.7 · Sep 2026 · source · release history
  • Adds the -g option to print IPv4 verbose output on a single line 4.99.6 · Dec 2025 · source · release history
  • Display the wireless flag and connection status in output 4.99.0 · Dec 2020 · source · release history
  • Add --count to print a counter only instead of decoding packets 4.99.0 · Dec 2020 · source · release history
  • Add --print to cause packet printing even with -w output option 4.99.0 · Dec 2020 · source · release history
  • BGP output now splits into multiple lines for readability. 3.8 · Nov 2003 · source · release history

command line

we ran it

  • A sequence of IP packets with raw numeric addresses and ports, including DNS queries for navigator-bs.gmx.com, a TLS handshake and data exchange on port 443 to 212.227.111.53, and TCP FIN teardowns… Aug 2026 · the full run

example

  • Count packets matching a filter without decoding payload overhead in CI or monitoring scripts tcpdump --count 'host 10.0.0.5 and port 80' 4.99.0 · Dec 2020 · source
Timestamp formatting verified Displays packet timestamps in a choice of formats including absolute date/time, Unix epoch, inter-packet deltas, and nanosecond precision. 4 other sources · first seen Aug 2026

we ran it

  • Printed a truncated packet listing showing inter-packet deltas in HH:MM:SS.microseconds format. Aug 2026 · the full run
  • Packets between 192.168.0.51 and external hosts, including DNS lookups for navigator-bs.gmx.com, a full TLS handshake and session teardown to 212.227.111.53 on port 443, and FIN exchanges with… Aug 2026 · the full run
  • Packets from 2015-03-08 starting at 00:00:33, including DNS lookups for navigator-bs.gmx.com, a complete TLS handshake and session teardown between 192.168.0.51 and 212.227.111.53 on port 443, and… Aug 2026 · the full run
  • The tool decoded and printed network packets with nine-digit nanosecond timestamps (e.g., 00:00:33.554279000), showing DNS queries for navigator-bs.gmx.com, a full TLS handshake to… Aug 2026 · the full run
Output control and formatting flags shipped suggested Adds specific command-line flags to control output behavior, including printing only ASCII payload data and flushing stdout after every packet. 2 releases · first seen Nov 2003

Suggested capability: Hex and ASCII payload display. This is our guess, not confirmed.

Also counts toward: Command-line interface

release

Privilege separation and security hardening shipped Supports dropping privileges after initialization by changing the root directory via chroot. 1 release · first seen Jul 2005

Also counts toward: Command-line interface

release

  • Adds --chroot option to change root directory before dropping privileges 3.9.3 · Jul 2005 · source · release history
Full-packet ASCII capture per host shipped suggested Captures full packet ASCII content and filters the display to traffic associated with a chosen host. 1 other source

Suggested capability: Full packet retention. This is our guess, not confirmed.

example

  • Full-packet ASCII for one host tcpdump -A -s0 host 10.0.0.5

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for tcpdump, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail tcpdump puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

27 entries

  1. September 20261
  2. August 20261
  3. December 20251
  4. December 20201
  5. October 20161
  6. November 20141
  7. November 20131
  8. April 20131
  9. December 20111
  10. July 20101
  11. March 20101
  12. October 20081
  13. September 20071
  14. April 20071
  15. September 20051
  16. July 20051
  17. November 20031
  18. January 20021
  19. January 20011
  20. January 20001
  21. July 19981
  22. November 19961
  23. July 19961
  24. June 19962
  25. June 19941
  26. May 19921
    Show

    27 entries

    Project health

    Issue, contributor and maintainer activity in the-tcpdump-group/tcpdump, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 14 +6 vs prior 12 months
    2. Maintainers 2 +1 joined · −1 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 46% of issues opened, last 12 months
    5. Median time to close 186 days first maintainer reply 4.5 hours
    6. Open backlog 67 of 675 issues ever filed
    1. Issues opened / month 0 · 0 communitymaintainers
    2. Open backlog 67
    3. Contributors / month 2
    4. Commits / month 11
    5. Stars 3,235
    Issue themes, last 12 months
    • questions 8%
    • other 92%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Articles

    3 articles · updated Nov 4, 2026

    Where tcpdump turns up in what others publish: how-tos, attack reports that name it, and incident write-ups. A row says why it is here and quotes where the article names it; the link goes to the publisher.

    Tutorials & guides 3

    • Comprehensive Guide to tcpdump (Part 3) Hacking Articles
      This is the third article in the Comprehensive Guide to tcpdump Series.
      2 more quotes
      Comprehensive Guide to tcpdump (Part 1).
      Comprehensive Guide to tcpdump (Part 2).
    • Comprehensive Guide to tcpdump (Part 1) Hacking Articles
      In this article, we are going to learn about tcpdump.
      2 more quotes
      Tcpdump helps us troubleshoot the network issues as well as help us analyze the working of some security tools.
      Tcpdump works on most of the Linux based operating systems.
    • Comprehensive Guide to tcpdump (Part 2) Hacking Articles
      In the previous article of tcpdump, we learned about some basic functionalities of this amazing tool called tcpdump.
      2 more quotes
      tcpdump -i eth0 -c5 tcpdump -i eth0 -c5 -e Parsing and Printing As we all know that, the conversation of a concrete syntax to the abstract syntax is known as parsing.
      tcpdump -i eth0 -c 2 -x tcpdump -i eth0 -c 2 -xx If we want this information provided by -x parameter along with their ASCII code then we need to use -X parameter and if we want the results of -xx parameter along with…

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    We can only check tools that publish GitHub releases.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →