BeagleV-Ahead Ethernet: U-Boot generates random MAC addresses (running Ubuntu 23.04)

I installed the standard Ubuntu 23.04 image for BeagleV-Ahead. Each boot, it generates random MAC addresses for both eth0 and eth1. This occurs during the Das U-Boot part of the process:

Warning: ethernet@ffe7070000 (eth0) using random MAC address - 56:15:bb:70:7a:a2
eth0: ethernet@ffe7070000ethernet@ffe7070000:0 is connected to ethernet@ffe7070000. Reconnecting to ethernet@ffe7060000

Warning: ethernet@ffe7060000 (eth1) using random MAC address - b2:c0:eb:79:7d:71
, eth1: ethernet@ffe7060000

Is this expected behavior? If it is not expected, how do I correct it? Where is U-Boot supposed to obtain MAC addresses from?

I need to be able to obtain legitimate MAC addresses, designated by the device manufacturer. For my application, it is not acceptable to use invented MAC addresses.

I looked in the TH1520 Peripheral Interface User Manual and the RTL8211F Ethernet transceiver datasheet, but I could not find anything that seemed to be a permanent MAC address.

In some cases it is used for a security measure. If your network is setup correctly is should resolve on the hostname.

Go into


Look and see if a *.link file for the interface exists, if so you can modify that. If not you will have to modify u-boot.

Thanks for trying to help me with this issue, but I am not looking for a work-around like forcing a MAC address with a *.link file (which I successfully tested before posting here).

My question is actually about the design intent:

Is each BeagleV-Ahead supposed to have a unique, built-in MAC address for eth0 (like the BeagleBone Black did)?

If the answer is “yes”, then I need to find out why my BeagleV-Ahead does not use the built-in MAC address, and how to fix it.

If the answer is “no”, then I’d like to find out if unique, built-in MAC addresses are in the future for the BeagleV-Ahead.