Operations 25 min read

Master Wireshark & Tcpdump: Essential Tools for Network Troubleshooting

This comprehensive guide introduces Wireshark and Tcpdump, explains their installation, core features, common use cases, filter syntax, interface components, and step‑by‑step examples—including TCP three‑handshake analysis—empowering IT professionals to capture and analyze network traffic efficiently.

Open Source Linux
Open Source Linux
Open Source Linux
Master Wireshark & Tcpdump: Essential Tools for Network Troubleshooting

What is Wireshark?

Wireshark is a popular open‑source network packet analyzer (nicknamed "shark") that can capture and display detailed information about network packets on Windows, macOS, and Linux.

Common Wireshark Use Cases

Network administrators use it to diagnose network issues.

Software test engineers capture packets to analyze test results.

Socket programmers debug communication.

Operations staff use it for daily troubleshooting and emergency response.

Wireshark Capture Principle

Wireshark uses WinPCAP (or libpcap on Linux) to interact directly with the network interface. It works in two environments: a single‑machine direct‑connected setup and a switched network where traffic is obtained via port mirroring or ARP spoofing.

Installing Wireshark

Download the installer from https://www.wireshark.org/ and follow the prompts to complete installation.

Wireshark Capture Example

1. Open Wireshark and view the main interface.

Wireshark main screen
Wireshark main screen

2. Choose Capture → Options, select the WLAN interface, and click Start.

Capture options
Capture options

3. Capture runs and displays packets in real time.

Live capture
Live capture

4. Execute a ping command (e.g., ping www.baidu.com) to generate traffic.

5. Stop capture to analyze the filtered packets (e.g., ip.addr == 183.232.231.172 and icmp).

Filtered results
Filtered results

Wireshark Interface Overview

The main window consists of six parts:

Menu Bar : access configuration and debugging tools.

Toolbar : shortcuts for common functions.

Filter Bar : enter display filter expressions.

Packet List : each row represents a captured packet.

Packet Details : hierarchical view of packet fields.

Packet Bytes : raw binary data of the packet.

Wireshark Filter Settings

Two filter types exist: capture filters (set before capture) and display filters (applied after capture). Capture filter syntax includes host, net, port, etc. Display filter operators include ==, !=, >, <, logical and / or, and protocol‑specific fields (e.g., tcp.port == 80, http.request.method == "GET").

Analyzing TCP Three‑Way Handshake with Wireshark

Step 1: Client sends SYN (SYN=1, ACK=0).

SYN packet
SYN packet

Step 2: Server replies with SYN‑ACK (SYN=1, ACK=1).

SYN‑ACK packet
SYN‑ACK packet

Step 3: Client sends ACK (SYN=0, ACK=1), completing the handshake.

ACK packet
ACK packet

What is Tcpdump?

Tcpdump is a command‑line packet capture tool for Unix‑like systems. It is powerful, extensible, and often used for troubleshooting, network analysis, and security investigations.

Tcpdump Command Syntax

tcpdump [option] [proto] [dir] [type]

Key options include: -i specify interface -c limit packet count -w write to file -s set snap length -n disable name resolution

Installing Tcpdump

yum -y install tcpdump

Verify installation with tcpdump -h.

Common Tcpdump Commands

# Capture all traffic on interface eno16777736</code><code>tcpdump -i eno16777736</code><code># Capture full packets and save to file</code><code>tcpdump -i eno16777736 -s 0 -w capture.cap</code><code># Capture 10 packets destined for 192.168.3.165</code><code>tcpdump -ni eno16777736 -c 10 dst host 192.168.3.165</code><code># Read from a capture file</code><code>tcpdump -r capture.cap</code><code># Filter HTTP traffic to a specific host</code><code>tcpdump -i eno16777736 host 183.232.231.172 and tcp port 80</code><code># Capture only ICMP packets</code><code>tcpdump -i eno16777736 icmp</code><code># Capture traffic on port 80</code><code>tcpdump -i eno16777736 port 80</code><code># Capture DNS (port 53) traffic</code><code>tcpdump -i en0 'udp port 53'

Advanced examples combine multiple filters, snap length, packet count, and output redirection to extract specific data such as HTTP headers, passwords, or DNS queries.

Conclusion

Both Wireshark and Tcpdump are indispensable for network administrators and security engineers. Mastering their installation, interface, filter syntax, and common command patterns enables efficient packet capture, detailed protocol analysis, and rapid troubleshooting of complex network issues.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Linuxnetwork analysisPacket CaptureWiresharktcpdump
Open Source Linux
Written by

Open Source Linux

Focused on sharing Linux/Unix content, covering fundamentals, system development, network programming, automation/operations, cloud computing, and related professional knowledge.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.