after resume dhcp client requests IPv4 address with MAC 00:00:00:00:00:00
A fresh openSUSE Leap 15.6 installation on a new Lenovo ThinkPad L14.
If the system boots up, and requests an IPv4 via DCHP, the dnsmasq(server) log shows the correct MAC address in the request log:
==> /var/log/dnsmasq.log <== dnsmasq-dhcp[N]: DHCPDISCOVER(interface) FixedIPv4 MAC dnsmasq-dhcp[N]: DHCPOFFER(interface) FixedIPv4 MAC dnsmasq-dhcp[N]: DHCPREQUEST(interface) FixedIPv4 MAC
If I close the lid, wait a few seconds and open it again, the DHCP request uses a MAC of all zeros:
==> /var/log/dnsmasq.log <== dnsmasq-dhcp[N]: DHCPDISCOVER(interface) FixedIPv4 00:00:00:00:00:00 dnsmasq-dhcp[N]: DHCPOFFER(interface) PoolIPv4 00:00:00:00:00:00
This means the client requested its own fixed IPv4 again. But since the MAC did not match, it got an offer for an IPv4 from the DHCP pool. For some reason it did not use that offer.
This issue only occurs in openSUSE Leap instead of Tumbleweed. The NetworkManager version used in Leap 15.6 is 1.44.2. Leap has the following error in journalctl -b
. Tumbleweed doesn't have this issue, so the MAC address of bridge interface in Tumbleweed is persistent and doesn't change based on its attached ports.
Jul 24 14:34:36 localhost.localdomain (udev-worker)[4122]: br-test: Could not generate persistent MAC address: No data available
NetworkManager log in trace level
When the system is suspending, ethernet port is detached from br-test
, so the MAC address of br-test
changed to 00:00:00:00:00:00
.
Jul 24 14:29:43 localhost.localdomain NetworkManager[975]: <debug> [1721802583.0191] device[e029b73d40b917be] (br-test): hw-addr: hardware address now 00:00:00:00:00:00
When the system is resuming, ethernet port is not yet attached to br-test
, DHCP was restarted for br-test
.
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <debug> [1721802830.3329] device[e029b73d40b917be] (br-test): restarting dynamic IP configuration (wake up)
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <info> [1721802830.3394] device (br-test): ip:dhcp4: restarting
...
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <debug> [1721802830.3402] dhcp4 (br-test): event: send REQUEST to 255.255.255.255
Some time later, bridge port eth0
was attached. The MAC address of br-test
changed.
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <info> [1721802830.4975] device (br-test): attached bridge port eth0
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <info> [1721802830.4976] device (eth0): Activation: connection 'bridge-slave-eth0' enslaved, continuing activation
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <debug> [1721802830.4977] device[8cb17cd26026aae5] (eth0): activation-stage: schedule activate_stage3_ip_config
Jul 24 14:33:50 localhost.localdomain NetworkManager[975]: <debug> [1721802830.4977] device[e029b73d40b917be] (br-test): hw-addr: hardware address now 52:54:00:91:C5:A9
This issue is clone of https://bugzilla.suse.com/show_bug.cgi?id=1225498.