Persee / Ubuntu 16.04 / Ethernet MAC address

It seems that the Persee changes the MAC address of it’s LAN interface on every boot. Is there any way to stop this?

The default configuration comes with DHCP set in /etc/network/interfaces.d/eth0 - I had to remove this as this stalls the boot process when no cable is connected - systemd will wait until LAN is available before starting the SSH daemon for example. After a couple of minutes it will give up and start SSHD anyway, using the WiFi connection that is available.

I’d like to delegate network setup to NetworkManager to fix this, so I removed /etc/network/interfaces.d/eth0. Boot is faster, ssh starts directly, but the IP address changes every time because the MAC address changes on every boot.

Is this a hardware issue or a software issue? I’d really like to add a static MAC-to-IP mapping.

Spoofing the MAC address in /etc/network/interfaces does work, but this again creates the stall during boot when no LAN cable is connected.

Spoofing the MAC address in NetworkManager does not work since NetworkManager actually uses the MAC address to recognize the interface, so after a reboot it is a different interface as far as NetworkManager is concerned, so the spoofed MAC Address is also gone.

Any clues to fix this are very welcome!

1 Like