MacDaddy is a WastelandSYS Linux terminal utility for managing network interface MAC addresses with an interactive menu, scriptable CLI commands, backup/restore support, and automation-friendly workflows.
It is built for practical Linux administration, Raspberry Pi labs, Kali/Debian systems, and authorized network testing where you need MAC address changes to be readable, reversible, and easy to run from the terminal.
Changing a MAC address by hand often means stitching together ip, macchanger, interface state changes, notes, and backup files. MacDaddy keeps that work in one focused tool without hiding what is happening.
MacDaddy is designed to:
- Inspect MAC-capable interfaces before changes are made.
- Randomize, reset, or assign MAC addresses through guided prompts or CLI commands.
- Back up current MAC/interface state so changes can be restored later.
- Keep risky operations clear, especially when a change may disconnect SSH, Wi-Fi, VPN, or other active sessions.
- Stay lightweight enough for Raspberry Pi and lab systems while still feeling polished beside other WastelandSYS utilities.
MacDaddy is a MAC address management utility, not a bypass or abuse tool. Use it only on systems and networks where you have permission to make interface changes.
- WastelandSYS-style interactive terminal menu.
- Automation-friendly CLI mode.
- Terminal-width aware banner and menu centering.
- List available MAC-capable network interfaces.
- Show MAC address and interface details for a selected interface.
- Randomize one interface or every detected MAC-capable interface.
- Reset one interface or all interfaces to their permanent MAC addresses through
macchanger. - Set a custom MAC address with format validation.
- Warn when a custom MAC is not locally administered.
- Check interface status and flags.
- Bring interfaces up or down.
- Back up MAC addresses to a generated backup file.
- Restore MAC addresses from backup.
- Automatic repeated MAC randomization mode.
--dry-runsupport for safer command review.- Color output controls with
--colorand--no-color. - Root checks for operations that modify interfaces.
- Installer for
/opt/macdaddyplus the globalmacdaddycommand. - Uninstaller that removes installed launchers and application files while preserving backups.
- GPLv3 licensed.
Access MAC randomization, custom MAC assignment, backup, restore, automation, and interface management from a single terminal interface.
Detect and display MAC-capable network interfaces before performing MAC address operations.
Generate and apply randomized MAC addresses through a guided workflow for quick identity changes.
Create backups of current MAC address settings before making changes or running automated workflows.
Restore previously saved MAC address configurations and recover original adapter settings.
Continuously randomize MAC addresses at configurable intervals while displaying current, permanent, and newly assigned addresses.
Clone the repository and run the installer:
git clone https://github.com/WastelandSYS/macdaddy.git
cd macdaddy
chmod +x install.sh uninstall.sh macdaddy.py
sudo ./install.shThe installer will:
- Check that it is running with root privileges.
- Install required packages on apt-based systems when
apt-getis available. - Verify
python3,macchanger, andipare available. - Install MacDaddy to
/opt/macdaddy/macdaddy.py. - Create the global command
/usr/local/bin/macdaddy. - Prepare
/var/lib/macdaddyfor root/system backup storage.
After installation:
macdaddy --help
sudo macdaddyRun the uninstaller from the cloned repository:
sudo ./uninstall.shThe uninstaller removes installed MacDaddy launchers and application files:
/usr/local/bin/macdaddy/opt/macdaddy- MacDaddy desktop entries if any were installed later
The uninstaller intentionally does not remove user backups or user-created data, including files under /var/lib/macdaddy, ~/.local/share/macdaddy, custom backup paths, or local backup files.
Start the menu:
sudo macdaddyOr explicitly launch it:
sudo macdaddy menuCommon interactive actions include:
- Show available interfaces.
- Show MAC address information.
- Randomize one interface.
- Randomize all interfaces.
- Reset one or all interfaces.
- Back up and restore MAC addresses.
- Set a custom MAC address.
- Start or stop automatic MAC changing.
- Change interface state.
Show help:
macdaddy --helpShow version:
macdaddy --versionList interfaces:
sudo macdaddy listShow one interface:
sudo macdaddy show wlan0Randomize one interface:
sudo macdaddy randomize wlan0Randomize all interfaces without an interactive confirmation prompt:
sudo macdaddy randomize-all --yesReset one interface:
sudo macdaddy reset wlan0Reset all interfaces:
sudo macdaddy reset-all --yesSet a custom MAC address:
sudo macdaddy set wlan0 02:11:22:33:44:55Check interface status:
sudo macdaddy status wlan0Bring an interface down or up:
sudo macdaddy state wlan0 down
sudo macdaddy state wlan0 upBack up MAC addresses:
sudo macdaddy backupBack up to a specific file:
sudo macdaddy backup --file ./mac_backup.txtRestore from the default backup path:
sudo macdaddy restore --yesRestore from a specific backup file:
sudo macdaddy restore --file ./mac_backup.txt --yesPreview commands without changing interfaces:
sudo macdaddy --dry-run randomize wlan0Run automation mode:
sudo macdaddy auto --interval 300 wlan0Repository files:
macdaddy/
├── LICENSE GPLv3 license text
├── README.md Project documentation
├── install.sh Installer for Linux systems
├── macdaddy.py Main MacDaddy application
└── uninstall.sh Uninstaller for installed files
Installed files:
/opt/macdaddy/macdaddy.py Installed application
/usr/local/bin/macdaddy Global command symlink
/var/lib/macdaddy/ Root/system backup directory
Generated backup locations:
- Root default:
/var/lib/macdaddy/mac_backup.txt - User default:
~/.local/share/macdaddy/mac_backup.txt - Environment override:
MACDADDY_BACKUP_FILE=/path/to/file - CLI override:
macdaddy backup --file /path/to/file
MacDaddy also supports older local mac_backup.txt files during restore when no newer default backup exists.
MacDaddy is Linux-focused and depends on Linux networking tools.
Target platforms:
- Kali Linux
- Debian
- Ubuntu
- Raspberry Pi OS
- Raspberry Pi / ARM Linux environments
Expected to work on other Linux distributions when these commands are available:
python3ipfromiproute2macchanger
Notes:
- MAC changes usually require root privileges.
- Changing MAC addresses can disconnect SSH, Wi-Fi, VPN, or other active network sessions.
- Some drivers, virtual interfaces, managed networks, or Wi-Fi environments may prevent MAC changes.
- Non-apt distributions can still use MacDaddy after manually installing dependencies.
Installed automatically on apt-based systems:
sudo apt-get install -y python3 macchanger iproute2Dependency purpose:
python3— runs MacDaddy.macchanger— randomizes and resets MAC addresses.iproute2— lists interfaces and changes interface state/address information.
MacDaddy is released under the GNU General Public License v3.0. See LICENSE for the full license text.





