Eye of the Ping is a Python application with a Tkinter-based interface that monitors devices on your local network. The app detects when devices connect or disconnect, notifies the user, and optionally plays a custom audio file for each device.
- Monitor devices using their IP address and dynamically resolve their MAC addresses.
- Notify the user when a device connects or disconnects.
- Optionally play a custom audio file when devices connect.
- Update a device's IP address automatically if it changes.
- Simple interface for adding, removing, and viewing monitored devices.
- Python 3.10 or higher
- Required Python libraries:
pygameplyertkinter(usually pre-installed in Python distributions)
Install dependencies using pip:
pip install -r requirements.txtFor Ubuntu, make sure the following system packages are installed:
sudo apt update
sudo apt install python3 python3-tk python3-pipgit clone https://github.com/yourusername/eye-of-the-ping.git
cd eye-of-the-pingpip install -r requirements.txt- Run the application:
python3 main.py
- Add devices:
- Enter the device's name and IP address.
- Optionally select a custom audio file to play when the device connects.
- Enable or disable sound playback using the checkbox.
- The app will monitor these devices, detect their MAC addresses, and notify you of their connection status.
main.py: Main application script.utils/network.py: Functions for monitoring devices and resolving IP/MAC.utils/storage.py: Functions for loading and saving device data.requirements.txt: List of required Python libraries.README.md: Documentation..gitignore: Files and directories to ignore in Git.
-
Scapy-based MAC resolution and monitoring require elevated permissions. Run the application with
sudoor configure Python with the following command:sudo setcap cap_net_raw,cap_net_admin=eip $(which python3) -
If audio does not play, ensure that the selected file is a supported format (e.g., MP3, WAV).
We welcome contributions! Please:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature
- Commit your changes:
git commit -m "Add your feature description" - Push to the branch and create a pull request.
This project is licensed under the MIT License.
Developed by Ramiro Daniel Martinez.