📘 Post

Top 20 Wireshark Filters Every Network Engineer Must Know

10/09/2026 By Sanchit Agrawal 14 min read 👁 1,073 views

—
Wireshark is one of the most useful tools for network troubleshooting.
But a packet capture can quickly contain thousands or even millions of packets.
Without filters, finding the packets related to your problem can become difficult.
Wireshark display filters solve this problem.
They allow you to focus on traffic such as:

  • One IP address
  • One server
  • One subnet
  • TCP or UDP
  • DNS
  • HTTP
  • TLS
  • TCP handshakes
  • Retransmissions
  • ICMP
  • SIP
  • RTP
  • Malformed packets

For example, suppose a user reports:
“The application is very slow.”
A full packet capture may contain DNS, HTTPS, background applications, operating-system traffic, monitoring traffic, and many unrelated connections.
Instead of reviewing everything, you can apply a filter such as:

CommandWIRESHARK
ip.addr == 192.168.1.10

Now Wireshark displays packets involving only that IP address.
You can then refine the filter further.
For example:

CommandWIRESHARK
ip.addr == 192.168.1.10 && tcp.port == 443

This shows TCP port 443 traffic involving that host.
This guide covers 20 practical Wireshark display filters that network engineers can use during everyday troubleshooting.

wire display filter

—

Understanding Wireshark Display Filters

Before learning individual filters, understand a few basic rules.

Display Filter vs Capture Filter

A display filter changes what Wireshark shows from packets that have already been captured.
Example:

CommandWIRESHARK
tcp.port == 443

A capture filter decides which packets are recorded in the first place.
Example capture filter:

CommandWIRESHARK
tcp port 443

Notice the difference.
Display filter:

CommandWIRESHARK
tcp.port == 443

Capture filter:

CommandWIRESHARK
tcp port 443

Combining Filters

Use && for AND.
Example:

CommandWIRESHARK
ip.addr == 192.168.1.10 && tcp.port == 443

This means:
Show packets involving 192.168.1.10 AND TCP port 443.
Use || for OR.
Example:

CommandWIRESHARK
tcp.port == 80 || tcp.port == 443

This means:
Show packets using TCP port 80 OR TCP port 443.
Use ! for NOT.
Example:

CommandWIRESHARK
tcp && !tcp.port == 22

This is useful when excluding traffic from the view.

A Better Modern Port Filter

Wireshark also supports set membership.
For example:

CommandWIRESHARK
tcp.port in {80, 443, 8080}

This is cleaner than writing:

CommandWIRESHARK
tcp.port == 80 || tcp.port == 443 || tcp.port == 8080

Start Broad, Then Narrow

A good troubleshooting workflow is:

—

Top 20 Wireshark Display Filters

1. Filter Traffic for One IP Address

Use:

CommandWIRESHARK
ip.addr == 192.168.1.10

This matches IPv4 packets where the address appears as either the source or destination.

Practical Example

Suppose:

Apply:

CommandWIRESHARK
ip.addr == 192.168.1.10

Now you can focus on traffic involving that server.

Useful For

  • Server troubleshooting
  • Firewall troubleshooting
  • Client connectivity problems
  • Application analysis

—

2. Filter by Source or Destination IP

Source IP:

CommandWIRESHARK
ip.src == 192.168.1.10

Destination IP:

CommandWIRESHARK
ip.dst == 192.168.1.10

Practical Example

Suppose you want to know whether a firewall is forwarding traffic toward:
192.168.1.50
Use:

CommandWIRESHARK
ip.dst == 192.168.1.50

To inspect packets originating from that server:

CommandWIRESHARK
ip.src == 192.168.1.50

—

3. Filter a Subnet

Example:

CommandWIRESHARK
ip.addr == 192.168.1.0/24

This can help display IPv4 traffic involving addresses in that subnet.

Practical Example

Suppose IoT devices are located in:
192.168.50.0/24
Use:

CommandWIRESHARK
ip.addr == 192.168.50.0/24

This makes it easier to review traffic involving the IoT network.

Useful For

  • VLAN troubleshooting
  • IoT analysis
  • User-segment analysis
  • Network migrations

—

4. Filter by TCP or UDP Port

TCP 443:

CommandWIRESHARK
tcp.port == 443

UDP 53:

CommandWIRESHARK
udp.port == 53

Multiple TCP ports:

CommandWIRESHARK
tcp.port in {80, 443, 8080}

Practical Example

To inspect HTTPS traffic involving one server:

CommandWIRESHARK
ip.addr == 192.168.1.10 && tcp.port == 443

—

5. Show Only TCP Traffic

Use:

CommandWIRESHARK
tcp

This shows packets Wireshark has decoded as TCP.

Useful For

  • TCP handshake troubleshooting
  • Retransmission analysis
  • Window problems
  • Reset analysis
  • Application connections

Combine with one host:

CommandWIRESHARK
tcp && ip.addr == 192.168.1.10

—

6. Show Only UDP Traffic

Use:

CommandWIRESHARK
udp

Useful For

  • DNS
  • RTP
  • QUIC
  • SNMP
  • Syslog
  • Some VPN protocols

Example:

CommandWIRESHARK
udp && ip.addr == 192.168.1.25

—

7. Show HTTP Requests

Use:

CommandWIRESHARK
http.request

This displays HTTP requests decoded by Wireshark.

Practical Example

Suppose a browser repeatedly requests the same resource.
Use:

CommandWIRESHARK
http.request

Then inspect:

  • Request method
  • Host
  • URI
  • User agent

—

8. Filter HTTP GET or POST Requests

GET:

CommandWIRESHARK
http.request.method == "GET"

POST:

CommandWIRESHARK
http.request.method == "POST"

GET or POST:

CommandWIRESHARK
http.request.method in {"GET", "POST"}

Practical Example

Suppose an API submission is failing.
Filter:

CommandWIRESHARK
http.request.method == "POST"

Then inspect whether the expected request reached the server.
—

9. Filter DNS Queries for a Domain

Use:

CommandWIRESHARK
dns.qry.name == "sanchitgurukul.com"

This is useful when troubleshooting hostname resolution.

Practical Example

Suppose users cannot open:
sanchitgurukul.com
Apply:

CommandWIRESHARK
dns.qry.name == "sanchitgurukul.com"

Look for:

  • Query sent
  • Resolver address
  • Response
  • RCODE
  • Answer
  • Response time

—

10. Show Failed DNS Responses

Show DNS responses where the response code is non-zero:

CommandWIRESHARK
dns.flags.rcode != 0

NXDOMAIN:

CommandWIRESHARK
dns.flags.rcode == 3

SERVFAIL:

CommandWIRESHARK
dns.flags.rcode == 2

REFUSED:

CommandWIRESHARK
dns.flags.rcode == 5

Practical Example

If a SaaS application fails because DNS resolution is failing:

CommandWIRESHARK
dns.flags.rcode == 2

shows SERVFAIL responses.

—

11. Show TLS Handshake Traffic

Use:

CommandWIRESHARK
tls.handshake

ClientHello:

CommandWIRESHARK
tls.handshake.type == 1

ServerHello:

CommandWIRESHARK
tls.handshake.type == 2

Practical Example

Suppose HTTPS establishes TCP but TLS does not complete.
Filter:

CommandWIRESHARK
tls.handshake

Then determine how far the TLS handshake progresses.

Useful For

  • TLS version analysis
  • ClientHello review
  • ServerHello review
  • ALPN troubleshooting
  • HTTPS troubleshooting

—

12. Show TLS Alerts

Use:

CommandWIRESHARK
tls.alert_message

You can also inspect the alert description field when available.

Practical Example

Suppose:

Apply:

CommandWIRESHARK
tls.alert_message

If an alert exists, inspect its context.

—

13. Show TCP SYN Connection Attempts

Initial client SYN:

CommandWIRESHARK
tcp.flags.syn == 1 && tcp.flags.ack == 0

All packets where SYN is set:

CommandWIRESHARK
tcp.flags.syn == 1

Practical Example

A user says:
“The server does not respond.”
Use:

CommandWIRESHARK
tcp.flags.syn == 1 && tcp.flags.ack == 0

Then inspect whether:

  • SYN leaves the client
  • SYN repeats
  • SYN-ACK returns
syn filter wire

—

14. Show TCP Retransmissions

Use:

CommandWIRESHARK
tcp.analysis.retransmission

Fast retransmissions:

CommandWIRESHARK
tcp.analysis.fast_retransmission

Spurious retransmissions:

CommandWIRESHARK
tcp.analysis.spurious_retransmission

Practical Example

An application transfer appears slow.
Apply:

CommandWIRESHARK
tcp.analysis.retransmission

Then inspect:

  • Which direction retransmits
  • Frequency
  • Timing
  • Duplicate ACK behavior
  • Whether the capture point missed packets
  • Whether retransmissions correlate with application slowdown

—

15. Find Large Frames

Example:

CommandWIRESHARK
frame.len > 1514

You can change the value to match your network environment.
For example:

CommandWIRESHARK
frame.len > 9000

may help identify very large frames in an environment where such sizes are unexpected.

Practical Example

Suppose you are troubleshooting a possible MTU or jumbo-frame problem.
Use:

CommandWIRESHARK
frame.len > 1514

as one investigative filter.

—

16. Show ICMP Echo Requests and Replies

ICMP Echo Request:

CommandWIRESHARK
icmp.type == 8

ICMP Echo Reply:

CommandWIRESHARK
icmp.type == 0

Both:

CommandWIRESHARK
icmp.type == 8 || icmp.type == 0

Practical Example

You run:

CommandWINDOWS
ping 192.168.1.10

Use:

CommandWIRESHARK
icmp.type == 8 || icmp.type == 0

to verify requests and replies.

—

17. Show SIP Signaling

Use:

CommandWIRESHARK
sip

Useful For

  • SIP registration
  • Call setup
  • INVITE analysis
  • Authentication failures
  • BYE messages
  • SIP response codes

Practical Example

Suppose a VoIP endpoint cannot register.
Apply:

CommandWIRESHARK
sip

Look for messages such as:

Output / Result
REGISTER

401 Unauthorized

REGISTER

200 OK

The exact sequence depends on the SIP implementation and authentication process.
—

18. Show RTP Traffic

Use:

CommandWIRESHARK
rtp

RTP commonly carries real-time audio or video.

Practical Example

A VoIP call connects but audio quality is poor.
Apply:

CommandWIRESHARK
rtp

Then use Wireshark’s RTP analysis features to investigate:

  • Sequence numbers
  • Packet loss
  • Timing
  • Jitter-related behavior
  • Stream direction

—

19. Show Malformed Packets

Use:

CommandWIRESHARK
_ws.malformed

This shows packets Wireshark has marked as malformed.

Practical Example

Suppose a protocol parser reports unexpected data.
Apply:

CommandWIRESHARK
_ws.malformed

Then inspect the packet and surrounding traffic.

—

20. Use Regex Matching

Wireshark supports the matches operator for regular-expression matching on suitable fields.
Example:

CommandWIRESHARK
http.host matches "google.(com|co.uk)"

A simpler hostname example:

CommandWIRESHARK
http.host matches ".*google.*"

Practical Example

Suppose you want to find visible HTTP Host values containing:
google
Use:

CommandWIRESHARK
http.host matches ".*google.*"

Another useful example:

CommandWIRESHARK
dns.qry.name matches ".*.example.com"

This can help find DNS queries for names ending in example.com.

—

Practical Troubleshooting Examples

The real value of Wireshark filters appears when several filters are combined to investigate a problem.

Scenario 1 — Website Is Slow

Suppose:

Start with:

CommandWIRESHARK
ip.addr == 192.168.1.25 && ip.addr == 203.0.113.10

Then focus on TCP:

CommandWIRESHARK
ip.addr == 192.168.1.25 && ip.addr == 203.0.113.10 && tcp

Check retransmissions:

CommandWIRESHARK
ip.addr == 192.168.1.25 && ip.addr == 203.0.113.10 && tcp.analysis.retransmission

Check resets:

CommandWIRESHARK
ip.addr == 192.168.1.25 && ip.addr == 203.0.113.10 && tcp.flags.reset == 1

—

Scenario 2 — DNS Resolution Fails

Start with:

CommandWIRESHARK
dns

Find errors:

CommandWIRESHARK
dns.flags.rcode != 0

Check NXDOMAIN:

CommandWIRESHARK
dns.flags.rcode == 3

Check SERVFAIL:

CommandWIRESHARK
dns.flags.rcode == 2

Check one domain:

CommandWIRESHARK
dns.qry.name == "sanchitgurukul.com"

—

Scenario 3 — TCP Connection Cannot Establish

Find initial SYN packets:

CommandWIRESHARK
tcp.flags.syn == 1 && tcp.flags.ack == 0

Suppose you see:

Output / Result
SYN

SYN Retransmission

SYN Retransmission

No SYN-ACK is visible at the client.
Possible areas include:

  • Routing
  • Firewall
  • NAT
  • Security group
  • Server listener
  • Return path
TCP Connection Troubleshooting With Wireshark Filters

1Filter Initial SYN2SYN Sent3SYN-ACK Received4RST Received5SYN Retransmission6Check Firewall7Check Routing8Check Server Listener9Check Return Path

TCP filters can quickly identify how far connection establishment progresses.

—

Scenario 4 — TLS Connection Fails

Start with:

CommandWIRESHARK
tls.handshake

Look for alerts:

CommandWIRESHARK
tls.alert_message

Check ClientHello:

CommandWIRESHARK
tls.handshake.type == 1

Check ServerHello:

CommandWIRESHARK
tls.handshake.type == 2

—

Scenario 5 — VoIP Call Has Poor Audio

Start with SIP:

CommandWIRESHARK
sip

Verify call establishment.
Then inspect media:

CommandWIRESHARK
rtp

Use:
Telephony → RTP → RTP Streams
Analyze the relevant stream.
Check:

  • Missing sequence numbers
  • Packet timing
  • Stream direction
  • Jitter
  • Loss indications

—

Scenario 6 — Security Investigation

Suppose you are investigating POST requests to a specific destination in an authorized environment.
Use:

CommandWIRESHARK
http.request.method == "POST" && ip.dst == 203.0.113.5

This shows visible HTTP POST requests directed toward the destination.

—

Advanced Filter Combinations and Best Practices

Once you understand the basic filters, combining them makes Wireshark significantly more useful.

One Client to One Server

CommandWIRESHARK
ip.addr == 192.168.1.25 && ip.addr == 203.0.113.10

One Client to HTTPS

CommandWIRESHARK
ip.addr == 192.168.1.25 && tcp.port == 443

TCP Problems for One Host

CommandWIRESHARK
ip.addr == 192.168.1.25 && tcp.analysis.flags

This can help find TCP analysis annotations generated by Wireshark.

SYN or Reset Packets

CommandWIRESHARK
tcp.flags.syn == 1 || tcp.flags.reset == 1

DNS Errors From One Client

CommandWIRESHARK
ip.addr == 192.168.1.25 && dns.flags.rcode != 0

HTTP GET or POST

CommandWIRESHARK
http.request.method in {"GET", "POST"}

Web Service Ports

CommandWIRESHARK
tcp.port in {80, 443, 8080, 8443}

One TCP Stream

Wireshark assigns TCP connections a stream number.
Example:

CommandWIRESHARK
tcp.stream == 7

This is one of the most useful filters during detailed TCP analysis.
Select a packet from the connection and determine its TCP stream number.
Then filter the entire conversation.

Save Frequently Used Filters

Wireshark allows display filters to be saved for future use.
Useful saved filters might include:

Use Coloring Rules

Display filters can also support coloring rules.
For example, you may highlight:

  • Resets
  • Retransmissions
  • DNS errors
  • TLS alerts

This makes unusual packets easier to locate visually.

Do Not Trust One Filter Alone

A filter helps locate evidence.
It does not provide the entire diagnosis.
For example:

Use Multiple Capture Points

For difficult problems, capture at:

  • Client
  • Firewall ingress
  • Firewall egress
  • Load balancer
  • Server

Then compare the same traffic.

Multi-Point Wireshark Troubleshooting

1Client Capture2Firewall Ingress3Firewall Egress4Load Balancer5Server Capture

Multiple packet-capture points help identify where packets are lost, delayed, modified, or reset.

Recommended Troubleshooting Workflow

Wireshark Display Filter Troubleshooting Workflow

1Identify Affected Host2Filter IP3Identify Protocol4Filter Port5Identify Stream6Check Handshake7Check Errors8Check Retransmissions9Check Timing10Compare Capture Points11Correlate Logs12Determine Root Cause

Use filters progressively rather than applying random filters to a large capture.

—

Quick Wireshark Filter Reference

One IP

CommandWIRESHARK
ip.addr == 192.168.1.10

Source IP

CommandWIRESHARK
ip.src == 192.168.1.10

Destination IP

CommandWIRESHARK
ip.dst == 192.168.1.10

Subnet

CommandWIRESHARK
ip.addr == 192.168.1.0/24

TCP Port

CommandWIRESHARK
tcp.port == 443

TCP

CommandWIRESHARK
tcp

UDP

CommandWIRESHARK
udp

HTTP Requests

CommandWIRESHARK
http.request

HTTP POST

CommandWIRESHARK
http.request.method == "POST"

DNS Query

CommandWIRESHARK
dns.qry.name == "sanchitgurukul.com"

DNS Errors

CommandWIRESHARK
dns.flags.rcode != 0

TLS Handshake

CommandWIRESHARK
tls.handshake

TLS Alerts

CommandWIRESHARK
tls.alert_message

Initial TCP SYN

CommandWIRESHARK
tcp.flags.syn == 1 && tcp.flags.ack == 0

TCP Retransmissions

CommandWIRESHARK
tcp.analysis.retransmission

Large Frames

CommandWIRESHARK
frame.len > 1514

Ping

CommandWIRESHARK
icmp.type == 8 || icmp.type == 0

SIP

CommandWIRESHARK
sip

RTP

CommandWIRESHARK
rtp

Malformed Packets

CommandWIRESHARK
_ws.malformed

Regex Example

CommandWIRESHARK
dns.qry.name matches ".*.example.com"

—

Summary

Wireshark display filters turn a large packet capture into a manageable troubleshooting view.
The most useful approach is not to memorize hundreds of filters.
Instead, understand how to build them.
Start with the affected endpoint:

CommandWIRESHARK
ip.addr == 192.168.1.10

Then add a protocol:

CommandWIRESHARK
ip.addr == 192.168.1.10 && tcp

Then add a service:

CommandWIRESHARK
ip.addr == 192.168.1.10 && tcp.port == 443

Then investigate behavior such as retransmissions:

CommandWIRESHARK
ip.addr == 192.168.1.10 && tcp.port == 443 && tcp.analysis.retransmission

The 20 filters covered in this guide help analyze:

  • Hosts
  • Networks
  • TCP
  • UDP
  • HTTP
  • DNS
  • TLS
  • TCP handshakes
  • Retransmissions
  • Packet sizes
  • ICMP
  • SIP
  • RTP
  • Malformed packets
  • Pattern matching

The important rule is:
A filter identifies packets of interest.
It does not automatically identify the root cause.
Use packet sequence, timing, multiple capture points, device logs, and application behavior together before reaching a conclusion.

—

SanchitGurukul Static Resources

Related SanchitGurukul Articles

Official External References

Disclaimer: This article may contain information that was accurate at the time of writing but could be outdated now. Please verify details with the latest vendor advisories or contact us at admin@sanchitgurukul.com.

Your feedback matters

Was this post helpful?

0 reactions

SanchitGurukul — Technology • Education • Innovation

Discussion

0 approved comments

No approved comments yet. You can start the discussion below.

Leave a Comment

No login is required. Name and email are used for moderation/security. Your email is never displayed publicly. All comments require administrator approval.

This field is not used to determine whether a comment is safe.

Plain text only. File uploads, scripts, executable code, abuse and spam are not accepted.


Discover more from SanchitGurukul

Subscribe to get the latest posts sent to your email.

Share this article

Help others find this guide.

Namaste! I’m SG Saarthi 👋Need help learning or finding something?

Discover more from SanchitGurukul

Subscribe now to keep reading and get access to the full archive.

Continue reading