Your stars⭐ will help me a lot!
Design and implement a sniffer tool capable of capturing and analyzing data flowing through a specified network interface. The specific technical requirements are as follows:
-
Allow the user to select a network interface if multiple interfaces are available on the host.
-
Filter and search data frames (packets or segments) based on protocol type, source address, and destination address.
-
Implement IP fragmentation reassembly.
-
Support saving and loading of analysis results.
-
Parse Ethernet frames, IPv4, TCP, UDP, HTTP, ARP, and ICMP protocol data.
Visit https://npcap.com/ to download and install Npcap. During installation, ensure that the option Install Npcap in WinPcap API-compatible Mode is checked. This ensures that Npcap's API is compatible with WinPcap, enabling Scapy to function correctly.
Install the Python development environment. The software has been tested with Python version 3.10.
Run the following command in the terminal to install the required Python dependencies:
pip install -r requirements.txtRun the following command in the terminal to start the program:
python sniffer.pyTo redesign the user interface, open sniffer.ui using Qt Designer. Then, run the following command in the terminal to convert the .ui file into a .py file:
pyuic5 -x sniffer.ui -o ui.pyThis project is licensed under the terms of the MIT license.
