public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration
@ 2023-09-26  7:39 Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-container 1/1] add_bridge_fbd: remove unused firewall param Alexandre Derumier
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Alexandre Derumier @ 2023-09-26  7:39 UTC (permalink / raw)
  To: pve-devel

- add|del_bridge_fdb: remove unused firewall param
- sdn: move add|del_bridge_fdb to plugin to be overridable
- sdn: evpn : add disable-bridge-learning option

pve-network :

Alexandre Derumier (3):
  zones: add|del_bridge_fdb : remove firewall param
  zones: add add|del_bridge_fdb to plugins
  zones: evpn: add disable-bridge-learning

 src/PVE/Network/SDN/Zones.pm            | 12 ++++++------
 src/PVE/Network/SDN/Zones/EvpnPlugin.pm |  2 +-
 src/PVE/Network/SDN/Zones/Plugin.pm     | 12 ++++++++++++
 3 files changed, 19 insertions(+), 7 deletions(-)

qemu-server:

Alexandre Derumier (1):
  add|del_bridge_fdb: remove unused firewall param

 PVE/QemuServer.pm | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

pve-container:

Alexandre Derumier (1):
  add_bridge_fbd: remove unused firewall param

-- 
2.39.2




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pve-devel] [PATCH pve-container 1/1] add_bridge_fbd: remove unused firewall param
  2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
@ 2023-09-26  7:39 ` Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH qemu-server 1/1] add|del_bridge_fdb: " Alexandre Derumier
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Alexandre Derumier @ 2023-09-26  7:39 UTC (permalink / raw)
  To: pve-devel

---
 src/PVE/LXC.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/PVE/LXC.pm b/src/PVE/LXC.pm
index 1e9af0f..aa8564e 100644
--- a/src/PVE/LXC.pm
+++ b/src/PVE/LXC.pm
@@ -935,7 +935,7 @@ sub net_tap_plug : prototype($$) {
 
     if ($have_sdn) {
 	PVE::Network::SDN::Zones::tap_plug($iface, $bridge, $tag, $firewall, $trunks, $rate);
-	PVE::Network::SDN::Zones::add_bridge_fdb($iface, $hwaddr, $bridge, $firewall);
+	PVE::Network::SDN::Zones::add_bridge_fdb($iface, $hwaddr, $bridge);
     } else {
 	PVE::Network::tap_plug($iface, $bridge, $tag, $firewall, $trunks, $rate, { mac => $hwaddr });
     }
-- 
2.39.2




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pve-devel] [PATCH qemu-server 1/1] add|del_bridge_fdb: remove unused firewall param
  2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-container 1/1] add_bridge_fbd: remove unused firewall param Alexandre Derumier
@ 2023-09-26  7:39 ` Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 1/3] zones: add|del_bridge_fdb : remove " Alexandre Derumier
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Alexandre Derumier @ 2023-09-26  7:39 UTC (permalink / raw)
  To: pve-devel

---
 PVE/QemuServer.pm | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 1b1ccf4..b89697a 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -8541,9 +8541,9 @@ sub add_nets_bridge_fdb {
 	    next;
 	}
 	if ($have_sdn) {
-	    PVE::Network::SDN::Zones::add_bridge_fdb($iface, $mac, $bridge, $net->{firewall});
+	    PVE::Network::SDN::Zones::add_bridge_fdb($iface, $mac, $bridge);
 	} elsif (-d "/sys/class/net/$bridge/bridge") { # avoid fdb management with OVS for now
-	    PVE::Network::add_bridge_fdb($iface, $mac, $net->{firewall});
+	    PVE::Network::add_bridge_fdb($iface, $mac);
 	}
     }
 }
@@ -8560,9 +8560,9 @@ sub del_nets_bridge_fdb {
 
 	my $bridge = $net->{bridge};
 	if ($have_sdn) {
-	    PVE::Network::SDN::Zones::del_bridge_fdb($iface, $mac, $bridge, $net->{firewall});
+	    PVE::Network::SDN::Zones::del_bridge_fdb($iface, $mac, $bridge);
 	} elsif (-d "/sys/class/net/$bridge/bridge") { # avoid fdb management with OVS for now
-	    PVE::Network::del_bridge_fdb($iface, $mac, $net->{firewall});
+	    PVE::Network::del_bridge_fdb($iface, $mac);
 	}
     }
 }
-- 
2.39.2




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pve-devel] [PATCH pve-network 1/3] zones: add|del_bridge_fdb : remove firewall param
  2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-container 1/1] add_bridge_fbd: remove unused firewall param Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH qemu-server 1/1] add|del_bridge_fdb: " Alexandre Derumier
@ 2023-09-26  7:39 ` Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 2/3] zones: add add|del_bridge_fdb to plugins Alexandre Derumier
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Alexandre Derumier @ 2023-09-26  7:39 UTC (permalink / raw)
  To: pve-devel

It's not used anymore in Network.pm
---
 src/PVE/Network/SDN/Zones.pm | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/PVE/Network/SDN/Zones.pm b/src/PVE/Network/SDN/Zones.pm
index 7d70e49..1e678ed 100644
--- a/src/PVE/Network/SDN/Zones.pm
+++ b/src/PVE/Network/SDN/Zones.pm
@@ -326,31 +326,31 @@ sub tap_plug {
 }
 
 sub add_bridge_fdb {
-    my ($iface, $macaddr, $bridge, $firewall) = @_;
+    my ($iface, $macaddr, $bridge) = @_;
 
     my $vnet = PVE::Network::SDN::Vnets::get_vnet($bridge, 1);
     if (!$vnet) { # fallback for classic bridge
-	PVE::Network::add_bridge_fdb($iface, $macaddr, $firewall);
+	PVE::Network::add_bridge_fdb($iface, $macaddr);
 	return;
     }
 
     my $plugin_config = get_plugin_config($vnet);
     my $plugin = PVE::Network::SDN::Zones::Plugin->lookup($plugin_config->{type});
-    PVE::Network::add_bridge_fdb($iface, $macaddr, $firewall) if $plugin_config->{'bridge-disable-mac-learning'};
+    PVE::Network::add_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
 }
 
 sub del_bridge_fdb {
-    my ($iface, $macaddr, $bridge, $firewall) = @_;
+    my ($iface, $macaddr, $bridge) = @_;
 
     my $vnet = PVE::Network::SDN::Vnets::get_vnet($bridge, 1);
     if (!$vnet) { # fallback for classic bridge
-	PVE::Network::del_bridge_fdb($iface, $macaddr, $firewall);
+	PVE::Network::del_bridge_fdb($iface, $macaddr);
 	return;
     }
 
     my $plugin_config = get_plugin_config($vnet);
     my $plugin = PVE::Network::SDN::Zones::Plugin->lookup($plugin_config->{type});
-    PVE::Network::del_bridge_fdb($iface, $macaddr, $firewall) if $plugin_config->{'bridge-disable-mac-learning'};
+    PVE::Network::del_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
 }
 
 1;
-- 
2.39.2




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pve-devel] [PATCH pve-network 2/3] zones: add add|del_bridge_fdb to plugins
  2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
                   ` (2 preceding siblings ...)
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 1/3] zones: add|del_bridge_fdb : remove " Alexandre Derumier
@ 2023-09-26  7:39 ` Alexandre Derumier
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 3/3] zones: evpn: add disable-bridge-learning Alexandre Derumier
  2023-10-25 11:22 ` [pve-devel] applied-series: [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Fabian Grünbichler
  5 siblings, 0 replies; 7+ messages in thread
From: Alexandre Derumier @ 2023-09-26  7:39 UTC (permalink / raw)
  To: pve-devel

We want to be able to override it for some specific plugins.

Can be used by an sdn controller (like ovn for example), where
mac need to be registered manually.
---
 src/PVE/Network/SDN/Zones.pm        |  4 ++--
 src/PVE/Network/SDN/Zones/Plugin.pm | 12 ++++++++++++
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/PVE/Network/SDN/Zones.pm b/src/PVE/Network/SDN/Zones.pm
index 1e678ed..4ad4e4d 100644
--- a/src/PVE/Network/SDN/Zones.pm
+++ b/src/PVE/Network/SDN/Zones.pm
@@ -336,7 +336,7 @@ sub add_bridge_fdb {
 
     my $plugin_config = get_plugin_config($vnet);
     my $plugin = PVE::Network::SDN::Zones::Plugin->lookup($plugin_config->{type});
-    PVE::Network::add_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+    $plugin->add_bridge_fdb($plugin_config, $iface, $macaddr);
 }
 
 sub del_bridge_fdb {
@@ -350,7 +350,7 @@ sub del_bridge_fdb {
 
     my $plugin_config = get_plugin_config($vnet);
     my $plugin = PVE::Network::SDN::Zones::Plugin->lookup($plugin_config->{type});
-    PVE::Network::del_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+    $plugin->del_bridge_fdb($plugin_config, $iface, $macaddr);
 }
 
 1;
diff --git a/src/PVE/Network/SDN/Zones/Plugin.pm b/src/PVE/Network/SDN/Zones/Plugin.pm
index f6634b6..b55b967 100644
--- a/src/PVE/Network/SDN/Zones/Plugin.pm
+++ b/src/PVE/Network/SDN/Zones/Plugin.pm
@@ -239,6 +239,18 @@ sub tap_plug {
     PVE::Network::tap_plug($iface, $vnetid, $tag, $firewall, $trunks, $rate, $opts);
 }
 
+sub add_bridge_fdb {
+    my ($class, $plugin_config, $iface, $macaddr) = @_;
+
+    PVE::Network::add_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+}
+
+sub del_bridge_fdb {
+    my ($class, $plugin_config, $iface, $macaddr) = @_;
+
+    PVE::Network::del_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+}
+
 #helper
 
 sub get_uplink_iface {
-- 
2.39.2




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pve-devel] [PATCH pve-network 3/3] zones: evpn: add disable-bridge-learning
  2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
                   ` (3 preceding siblings ...)
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 2/3] zones: add add|del_bridge_fdb to plugins Alexandre Derumier
@ 2023-09-26  7:39 ` Alexandre Derumier
  2023-10-25 11:22 ` [pve-devel] applied-series: [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Fabian Grünbichler
  5 siblings, 0 replies; 7+ messages in thread
From: Alexandre Derumier @ 2023-09-26  7:39 UTC (permalink / raw)
  To: pve-devel

Allow to statically register mac address in evpn,

can be useful for silent hosts
---
 src/PVE/Network/SDN/Zones/EvpnPlugin.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/PVE/Network/SDN/Zones/EvpnPlugin.pm b/src/PVE/Network/SDN/Zones/EvpnPlugin.pm
index 5df05f9..5e9f8ec 100644
--- a/src/PVE/Network/SDN/Zones/EvpnPlugin.pm
+++ b/src/PVE/Network/SDN/Zones/EvpnPlugin.pm
@@ -90,6 +90,7 @@ sub options {
 	'exitnodes-primary' => { optional => 1 },
 	'advertise-subnets' => { optional => 1 },
 	'disable-arp-nd-suppression' => { optional => 1 },
+        'bridge-disable-mac-learning' => { optional => 1 },
 	'rt-import' => { optional => 1 },
 	'vxlan-port' => { optional => 1 },
 	mtu => { optional => 1 },
@@ -321,7 +322,6 @@ sub vnet_update_hook {
     }
 }
 
-
 1;
 
 
-- 
2.39.2




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [pve-devel] applied-series: [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration
  2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
                   ` (4 preceding siblings ...)
  2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 3/3] zones: evpn: add disable-bridge-learning Alexandre Derumier
@ 2023-10-25 11:22 ` Fabian Grünbichler
  5 siblings, 0 replies; 7+ messages in thread
From: Fabian Grünbichler @ 2023-10-25 11:22 UTC (permalink / raw)
  To: Proxmox VE development discussion

On September 26, 2023 9:39 am, Alexandre Derumier wrote:
> - add|del_bridge_fdb: remove unused firewall param
> - sdn: move add|del_bridge_fdb to plugin to be overridable
> - sdn: evpn : add disable-bridge-learning option
> 
> pve-network :
> 
> Alexandre Derumier (3):
>   zones: add|del_bridge_fdb : remove firewall param
>   zones: add add|del_bridge_fdb to plugins
>   zones: evpn: add disable-bridge-learning
> 
>  src/PVE/Network/SDN/Zones.pm            | 12 ++++++------
>  src/PVE/Network/SDN/Zones/EvpnPlugin.pm |  2 +-
>  src/PVE/Network/SDN/Zones/Plugin.pm     | 12 ++++++++++++
>  3 files changed, 19 insertions(+), 7 deletions(-)
> 
> qemu-server:
> 
> Alexandre Derumier (1):
>   add|del_bridge_fdb: remove unused firewall param
> 
>  PVE/QemuServer.pm | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> pve-container:
> 
> Alexandre Derumier (1):
>   add_bridge_fbd: remove unused firewall param
> 
> -- 
> 2.39.2
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
> 
> 
> 




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-10-25 11:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-26  7:39 [pve-devel] [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Alexandre Derumier
2023-09-26  7:39 ` [pve-devel] [PATCH pve-container 1/1] add_bridge_fbd: remove unused firewall param Alexandre Derumier
2023-09-26  7:39 ` [pve-devel] [PATCH qemu-server 1/1] add|del_bridge_fdb: " Alexandre Derumier
2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 1/3] zones: add|del_bridge_fdb : remove " Alexandre Derumier
2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 2/3] zones: add add|del_bridge_fdb to plugins Alexandre Derumier
2023-09-26  7:39 ` [pve-devel] [PATCH pve-network 3/3] zones: evpn: add disable-bridge-learning Alexandre Derumier
2023-10-25 11:22 ` [pve-devel] applied-series: [PATCH-SERIES pve-network/qemu-server/pve-container] cleanup for static mac registration Fabian Grünbichler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal