I'm trying to fix an issue on Ampere-based systems such as those with Altra and AmpereOne CPUs.

When running a desktop such as GNOME in Ubuntu 25.10 there's a pop-up message every few minutes saying that it failed to configure the network interface. That's happening because there's an internal USB connection between the host and BMC that's configured on the BMC side as an ethernet interface with either a 169.254 or 192.168 (depending on whether the BMC is running MegaRAC or OpenBMC etc.) static IP address, and by default NetworkManager tries to get an address via DHCP.

NetworkManager logs the following on my AmpereOne system:

policy: auto-activating connection 'Wired connection 2' (1b2182a2-3794-3d00-91fd-c13dcd4ca259) device (enx02ce133e39f7): Activation: starting connection 'Wired connection 2' (1b2182a2-3794-3d00-91fd-c13dcd4ca259) device (enx02ce133e39f7): state change: disconnected -> prepare (reason 'none', managed-type: 'full') device (enx02ce133e39f7): state change: prepare -> config (reason 'none', managed-type: 'full') device (enx02ce133e39f7): state change: config -> ip-config (reason 'none', managed-type: 'full') dhcp4 (enx02ce133e39f7): activation: beginning transaction (timeout in 45 seconds) device (enx02ce133e39f7): state change: ip-config -> failed (reason 'ip-config-unavailable', managed-type: 'full') device (enx02ce133e39f7): Activation: failed for connection 'Wired connection 2' device (enx02ce133e39f7): state change: failed -> disconnected (reason 'none', managed-type: 'full')
dhcp4 (enx02ce133e39f7): canceled DHCP transaction
dhcp4 (enx02ce133e39f7): activation: beginning transaction (timeout in 45 seconds)
dhcp4 (enx02ce133e39f7): state changed no lease


The BMC on this system is running AMI MegaRAC and the USB interface on the host is:

Bus 001 Device 007: ID 046b:ffb0 American Megatrends, Inc. Virtual Ethernet.


I initially submitted a PR against NetworkManager to set the interface link-local only and rename it to 'bmc', but I was informed that it wasn't the correct place for it.

"This rule should be shipped with udev, not with NetworkManager, for two reasons:
NM is not in the business of renaming interfaces
if the rule is in udev (with ID_NET_AUTO_LINK_LOCAL_ONLY instead of NM_AUTO_DEFAULT_LINK_LOCAL_ONLY), the link local addressing will work also with other networking daemon such as systemd-networkd."


It looks like systemd might be the place to put the rules since it appears to have files to deal with similar situations. For example, hwdb.d/82-net-auto-link-local.hwdb which I've tried modifying with:


# BMC USB-to-USB links for ASRock Rack and OpenBMC
usb:v26CEp00A0*
usb:v0525pA4A2*
usb:v046bpffb0*
 ID_NET_AUTO_LINK_LOCAL_ONLY=1


That didn't work, so now I'm looking at network/73-usb-net-by-mac.link but from the systemd.link man page I'm not seeing a way to specify a USB vendor/product.


I was wondering if somebody might be able to help me with where and what to add?


--
Rebecca Cran



Reply via email to