The Network Sniffer is a Console Based Application based on Python that allows you to capture and analyze network packets in real-time. It provides insights into the types of packets being transmitted over the network, including Ethernet frames, IP packets, and transport layer protocols such as TCP, UDP, and ICMP. Additionally, a virtual environment was set up to manage dependencies effectively. The required modules are documented in a file named requirements.txt.
To know how the Virtual Environment works, visit here.
- Captures and analyzes Ethernet frames to extract MAC addresses and protocol information.
- Parses IP packets to determine source and destination IP addresses, TTL (Time-To-Live), and transport layer protocol.
- Supports parsing of ICMP, TCP, and UDP packets to extract specific protocol details.
- Provides real-time updates on captured packets, displaying packet details and protocol information as they are intercepted.
- Includes packet statistics functionality to track the count of packets per protocol and display statistics every 10 seconds.
- Python 3.11
- Terminal or Command Prompt
-
git clone https://github.com/Melvin-Shalom/Packet_Sniffer.git
-
cd Packet_Sniffer/
-
source venv/bin/activate
-
pip install -r requirements.txt
-
sudo /venv/bin/python3 main.py