Hi
After some posts with asking how to randomise MAC I decided to write this script.
You can read more about why do you need it here
WARNING
This is TEMPORARY solution until official feature will roll out
After official release it is NOT recommended to use this script, and I think you will have to consider switching to official one.
Copyright:
You are free to use/edit/share script, but always put link to this thread and/or GitHub page
GitHub page
Script
Not to overflood thread it is hidden under spoiler:
Script
#!/bin/sh /etc/rc.common
START=99
start() {
random_mac() {
loc_mac_numgen=$(od -An -N2 -tx1 /dev/urandom | tr -dc '0123456789abcdef' | fold -w 12 | head -n 1)
loc_mac_formatted=$(echo "$loc_mac_numgen" | awk '{printf "%s:%s:%s:%s:%s:%s", substr($0,1,2),substr($0,3,2),substr($0,5,2),substr($0,7,2),substr($0,9,2),substr($0,11,2)}')
echo "$loc_mac_formatted"
}
bssid_gen() {
uci set wireless.@wifi-iface[1].macaddr="$(random_mac)"
uci set wireless.@wifi-iface[0].macaddr="$(random_mac)"
uci commit wireless
wifi
}
mac_gen() {
uci set network.@device[1].macaddr="$(random_mac)"
uci set glconfig.general.macclone_addr="$(random_mac)"
uci commit network
/etc/init.d/network restart
}
bssid_gen
mac_gen
}
How to use it?
- Put it into
/etc/init.d/
- Make executable
chmod +x /etc/init.d/mac_randomiser.sh
- Enable
/etc/init.d/mac_randomiser.sh enable