When creating a vlan zone and vnet, pve-network looks at all the physical bridge ports (slaves) and adds them to the generated vlan bridge. The zone plugin gets all the bridge interfaces using `/sys/class/net` and then filters them using a regex. With the introduction of network interface pinning, the restrictions on network interface names have gotten more liberal - they're not required to have specific prefixes anymore. The check for physical interfaces in the zones plugin needs to be adjusted to reflect those changes, otherwise the generated SDN configuration does not contain any pinned physical ports and therefore doesn't work.
Signed-off-by: Stefan Hanreich <[email protected]> --- src/PVE/Network/SDN/Zones/Plugin.pm | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/PVE/Network/SDN/Zones/Plugin.pm b/src/PVE/Network/SDN/Zones/Plugin.pm index a860168..05af47f 100644 --- a/src/PVE/Network/SDN/Zones/Plugin.pm +++ b/src/PVE/Network/SDN/Zones/Plugin.pm @@ -349,13 +349,7 @@ sub is_ovs { sub get_bridge_ifaces { my ($bridge) = @_; - my @bridge_ifaces = (); - my $dir = "/sys/class/net/$bridge/brif"; - PVE::Tools::dir_glob_foreach($dir, '(((eth|bond)\d+|en[^.]+)(\.\d+)?)', sub { - push @bridge_ifaces, $_[0]; - }); - - return @bridge_ifaces; + return PVE::Network::get_physical_bridge_ports($bridge); } sub datacenter_config { -- 2.47.3 _______________________________________________ pve-devel mailing list [email protected] https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
