Network sniffer

Description

  • Michal Ondrejka

  • GitHub

  • april, 2023

This network analyzer (1st picture) was made to capture and filter packets on a specific network interface. In order to realize this a good understanding of encapsualtion and OSI model is mandatory.
Data, when being sent over the network, are sequantiallu encapsulated (2nd picture). This is to add information to correctly send the data over the network.
This program can be started with many variations of command line arguments in order to capture desired packets. It is possible to filter TCP/UDP, ARP, ICMPv4, ICMPv6, MLD packets on a specific interface and port.
I used many C libraries and their functions in order to ensure desired funcionality. In the end I was able to capture these packets and print them on standart output.

Technology