BSSID randomiser

Found this script

#!/bin/sh /etc/rc.common

START=99
STOP=10
USE_PROCD=1

generate_random_mac() {
  local prefix="02:$(openssl rand -hex 1):$(openssl rand -hex 1)"
  local rest=$(openssl rand -hex 3)
  echo "${prefix}:$(echo "$rest" | sed 's/$..$/\1:/g' | sed 's/:$//')"
}

change_bssid() {
  local interface_name="\$1"
  local wifi_device_config_section

  if [ -z "$interface_name" ]; then
    logger "Error: Interface name is not specified."
    return 1
  fi

  wifi_device_config_section=$(uci show wireless | grep "wireless.@wifi-device$$.*].ifname='${interface_name}'" | cut -d= -f1 | cut -d. -f2)

  if [ -z "$wifi_device_config_section" ]; then
    logger "Error: Could not find wifi-device configuration section for interface '$interface_name'."
    return 1
  fi

  local new_bssid=$(generate_random_mac)
  local current_bssid
  current_bssid=$(uci get wireless."$wifi_device_config_section".macaddr)

  logger "Changing BSSID for interface '$interface_name' from '$current_bssid' to '$new_bssid'"

  uci set wireless."$wifi_device_config_section".macaddr="$new_bssid"
  uci commit wireless

  logger "BSSID changed for '$interface_name'. Reloading WiFi..."
}

boot() {
  logger "Starting BSSID change for all radios..."

  uci show wireless | grep "^wireless.@wifi-device\[[0-9]+$$=" | while read wifi_device_config_line; do
    local wifi_device_section=$(echo "$wifi_device_config_line" | cut -d= -f1 | cut -d. -f2)
    local interface_name=$(uci get wireless."$wifi_device_section".ifname)

    if [ -n "$interface_name" ]; then
      change_bssid "$interface_name"
    else
      logger "Warning: 'ifname' not defined for wifi-device section '$wifi_device_section'. Skipping."
    fi
  done

  logger "Reloading WiFi service to apply all BSSID changes..."
  wifi reload
  logger "BSSID changes for all radios completed."
}

start() {
  boot
}

stop() {
  :
}

Maybe someone need it

Thankfully, this isn't needed in newer firmware anymore: