Let's think about this for a moment
Wireshark captures every packet passing through a network interface and breaks it down by protocol layer (Ethernet, IP, TCP, HTTP) — it's useful for network troubleshooting (finding connection issues), security analysis (spotting suspicious traffic), and learning protocols (watching an actual TCP handshake at the packet level). Using a filter (`http`, `ip.addr == 192.168.1.1`) lets you pick out exactly the traffic you want from a sea of packets.
Let's connect it to a real scenario
Log in through an unencrypted HTTP login form on your lab VM — filter for `http.request.method == "POST"` in Wireshark and you'll be able to see the username/password sitting right there in plain text inside the packet (a real risk if HTTPS isn't used). This demo is a visually convincing proof of exactly why HTTPS/encryption matters.
Let's look at an example together
Useful Wireshark filters:
http — show only HTTP traffic
http.request.method == "POST" — show only POST requests
ip.addr == 192.168.56.101 — show traffic to/from one host
tcp.port == 22 — show only SSH traffic
dns — show only DNS queriesYou should see only traffic matching your filter appear in Wireshark's packet list panel.Try it in 5 minutes
Start a Wireshark capture and log in through your lab VM's unencrypted HTTP login form — use the filter `http.request.method == "POST"` to find the credentials sitting inside the packet.
A quick word of caution
Running Wireshark on a shared network (office WiFi, public WiFi) without authorization amounts to eavesdropping on other users' traffic and can violate privacy laws — only practice this on your own lab network.