Skip to content

AYOUB-CODING1/ICMP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

🔴 ICMP Packet Sender Tool

📌 Overview

This project is a Python-based interactive tool that uses Scapy to create and send custom ICMP (ping) packets. It allows you to define the source IP, destination IP, and ICMP ID, then sends the crafted packet and displays the response if one is received.
9f7e492e-5544-4266-9b97-f3fd12762c2b This makes it useful for:

  • Learning how ICMP works
  • Debugging networks
  • Security testing in controlled environments

⚙️ Features

  • Interactive mode:
    • Enter Source IP (spoofing possible if allowed)
    • Enter Destination IP
    • Enter ICMP ID
  • Sends ICMP Echo Request and waits for a reply
  • Displays response details using Scapy’s .show()
  • Graceful error handling
  • Loop option (send multiple packets in one run)

🚀 Usage

1️⃣ Create & activate a virtual environment

python -m venv venv
source venv/bin/activate # Linux / Mac
venv\Scripts\activate # Windows

2️⃣ Install Scapy in the virtual environment

pip install scapy

3️⃣ Run the tool

python icmp.py

🛠️ Example Session

$ python icmp.py

src ip > 192.168.1.10

dst ip > www.google.com

icmp id > 123

Response packet will be displayed if received

Continue? (y/n) > y

If there is a reply, you’ll see packet details printed (IP/ICMP headers and more). If no reply is received, you’ll see:

No response received.


📄 Requirements

Python 3.8+

Scapy Python library


⚠️ Disclaimer

This tool is provided for educational and research purposes only. You are solely responsible for using it in a legal and ethical manner. ⚠️ Do not use this tool on systems or networks you do not own or without explicit permission.

Unauthorized use of ICMP spoofing, packet crafting, or network testing tools may be illegal and could result in severe consequences.


🧑‍💻 Author

Created by Ayoub GitHub: AYOUB-CODING1