Spoof the MAC address of network interfaces on GNU/Linux, macOS and Windows systems.
Inspired by GNU MAC Changer, this project extends the functionality beyond GNU/Linux, making it compatible across all platforms.
Spoofing the MAC address can be useful in various situations, such as hiding your device's identity on a network, or bypassing MAC‑based network restrictions.
- Features
- Prerequisites
- Installation
- Available options
- Check interfaces & current MAC
- Usage
- Issues
- Contributing
- Credits
- License
- Set a specific MAC address on any network interface.
- Set a fully random MAC address.
- Set a MAC address of a specific vendor.
- Set a random MAC address from any known vendor.
- Auto change MAC address at defined intervals.
- Display or search through a list of ~6,200 known vendors.
-
Clone this repo:
git clone https://github.com/StellarSand/universal-macchanger.git -
Move into the project directory:
cd universal-macchanger -
Give executable permissions to the script (Not required for Windows):
chmod +x macchanger
-h, --help Show this help message and exit
-i, --interface Interface name
-m, --mac Set a MAC address manually
-r, --random Set a random MAC address
-l, --list Show all known vendors list
-s, --search Search from known vendors list
-v, --vendor Set MAC address based on index from vendors list
-rv, --randomvendor Set a random MAC address from any known vendor
-t, --time Interval in seconds to auto change MAC address
You can check all the interfaces & their current MAC addresses using terminal/cmd:
- GNU/Linux:
ip a - Windows:
ipconfig \all - macOS:
networksetup -listallhardwareports
-
Set a MAC address manually:
python3 macchanger -i <interface> -m <MAC>Example:
python3 macchanger -i wlan0 -m 00:11:22:33:44:55 -
Set a random MAC address:
python3 macchanger -i <interface> -rExample:
python3 macchanger -i "Wireless Network Adapter" -r -
Search for a specific vendor:
python3 macchanger -s <vendor>Example:
python3 macchanger -s Cisco -
Set MAC address based on index from vendors list:
python3 macchanger -s <vendor> python3 macchanger -i <interface> -v <index>Example:
python3 macchanger -s Cisco python3 macchanger -i eth0 -v W15 -
Set a random MAC address from any known vendor:
python3 macchanger -i <interface> -rvExample:
python3 macchanger -i wlan0 -rv -
Auto change MAC address at defined intervals (can't be combined with
-m/--macoption):python3 macchanger -i <interface> -t <time in seconds> -r/-rv/-v <index>Example:
python3 macchanger -i wlan0 -t 60 -rpython3 macchanger -i eth0 -t 180 -rvpython3 macchanger -s Linksys python3 macchanger -i "Wireless Network Adapter" -t 300 -v W8
If you find bugs or have suggestions, please report it to the issue tracker.
- Please search for existing issues before opening a new one. Any duplicates will be closed.
Pull requests can be submitted here.
- GNU MAC Changer for the known vendors list.
This project is licensed under the terms of GPL v3.0 license.