On 13.02.2026 07:38, Hannes Laimer wrote: > When a standard loopback interface is used, the retrieved MAC is > typically 00:00:00:00:00:00. This causes the router-id generation logic > to produce "0.0.0.0", which is an invalid BGP ID. > > Explicitly check for a zero MAC address and fail with a descriptive > error. > > Signed-off-by: Hannes Laimer <[email protected]> > ---
LGTM! Consider: Reviewed-by: Gabriel Goller <[email protected]> > src/PVE/Network/SDN/Controllers/Plugin.pm | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/src/PVE/Network/SDN/Controllers/Plugin.pm > b/src/PVE/Network/SDN/Controllers/Plugin.pm > index d70e518..54d6402 100644 > --- a/src/PVE/Network/SDN/Controllers/Plugin.pm > +++ b/src/PVE/Network/SDN/Controllers/Plugin.pm > @@ -118,6 +118,11 @@ sub get_router_id { > > die "can't autofind a router-id value from ip or mac" if !$mac; > > + if ($mac eq '00:00:00:00:00:00') { > + die "Interface $iface has a zero MAC address. Cannot derive a BGP > router-id. " > + . "Please use a dummy interface or assign an IPv4 address to > $iface.\n"; > + } > + > my @mac_bytes = split(':', $mac); > return > hex($mac_bytes[2]) . "." > -- > 2.47.3
