This tutorial explains how to change mac address of ESP8266? ESP8266 Arduino core does not provide an API to change ESP8266’s WiFi MAC address. While there is a WiFi.macAddress() function, it actually retrieves the current WiFi MAC address, instead of setting it. However, Espressif SDK offers an API to change the WiFi STA MAC address.
All esp8266 comes with unique address which is factory programmed. A MAC address is given to a network adapter when it is manufactured. It is hardwired or hard-coded onto your network interface card (NIC) or chip and is unique to it. Something called the ARP (Address Resolution Protocol) translates an IP address into a MAC address. Continue reading How to change ESP8266 MAC Address