# Display Filters

Zoals uit de eerste capture misschien al gebleken is, gaan display filters een groot deel van het werk uitmaken om ruis weg te filteren, we willen immers met nuttige data overblijven. Hieronder bekijken we hoe display filters kunnen opgemaakt worden.

## Operators

Operators laten ons toe om verschillende display filters aan elkaar te koppelen. Zo kunnen we een redelijk uitgebreide filter maken en zodoende enkel zien wat we willen zien.

| English      | C-like | Description and example                                                                         |
| ------------ | ------ | ----------------------------------------------------------------------------------------------- |
| eq           | ==     | Equal. ip.src==10.0.0.5                                                                         |
| ne           | !=     | Not equal. ip.src!=10.0.0.5                                                                     |
| gt           | >      | Greater than. frame.len > 10                                                                    |
| lt           | <      | Less than. frame.len < 128                                                                      |
| ge           | >=     | Greater than or equal to. frame.len ge 0x100                                                    |
| le           | <=     | Less than or equal to. frame.len <= 0x20                                                        |
| contains     |        | Protocol, field or slice contains a value. sip.To contains "a1762"                              |
| matches      | \~     | Protocol or text field match Perl regualar expression. http.host matches "acme.(org\|com\|net)" |
| bitwise\_and | &      | Compare bit field value. tcp.flags & 0x02                                                       |

De oorspronkelijke lijst kan je hier terugvinden: <https://www.wireshark.org/docs/wsug_html_chunked/ChWorkBuildDisplayFilterSection.html>

## In de praktijk: not so smooth operator

Laten we even zien hoe zo'n filter in de praktijk werkt. Samen met de obligatoire valstrik. Mijn eerste filter zegt: "Ik wil geen arp pakketten zien."

![](/files/-Lp2sF_ajC9fnw5c4d55)

Gevolg: 2 pakketten worden niet getoond. Wat juist is (geloof me nu maar).

![](/files/-Lp2sF_cNiO4097uM7N3)

Je 2de filter zegt: "Ik wil geen arp of geen ssl pakketten zien."

![](/files/-Lp2sF_ei8-ogfN_rFGK)

Wacht, alle pakketten worden getoond?

![](/files/-Lp2sF_gI1OA9oc8aMo5)

Vreemd, wat als we zeggen "ik wil arp of ssl pakketten zien."

![](/files/-Lp2sF_ixLqDYCBdg_SA)

Dat zijn er 1416. Dat lijkt normaal.

![](/files/-Lp2sF_kfD_pW9vOCqu3)

Eigenlijk was onze filter oorspronkelijk fout, door te zeggen "of geen arp of geen ssl" hebben we eigenlijk niet gefilterd, omdat dit aanzien wordt als 2 aparte statements, waardoor je toch alles ziet.

Om te bekomen wat we eigenlijk willen, moeten we de statement aldus schrijven:

![](/files/-Lp2sF_mK5rVKNtM2f5B)

En dit komt wel overeen met die 1416 pakketten. 9848 - 1416 = 8432

![](/files/-Lp2sF_o0xcddhJYhgTV)

Misschien om het iets minder verwarrend te maken is het best om de *and* statement te gebruiken. "Ik wil geen arp pakketten zien en ik wil geen ssl pakketten zien."

![](/files/-Lp2sF_qdACX5Bii8b7Z)

Dat lijkt er al meer op.

![](/files/-Lp2sF_sU-JI1DObVPOl)

## Contains

Contains is een leuke. Bijvoorbeeld als je door een hele resem ftp-verbindingen een bepalde username wenst terug te vinden.

![](/files/-Lp2sF_uvmm6M7YB0Run)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kenvb.gitbook.io/wireshark101/de-eerste-captures/display-filters.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
