all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Lukas Sichert <l.sichert@proxmox.com>
To: pve-devel@lists.proxmox.com
Cc: Lukas Sichert <l.sichert@proxmox.com>
Subject: [PATCH network v5 02/10] sdn: evpn: enable ip forwarding on the vrf bridge interface
Date: Wed,  4 Nov 2026 15:55:03 +0100	[thread overview]
Message-ID: <20261104145513.21471-3-l.sichert@proxmox.com> (raw)
In-Reply-To: <20261104145513.21471-1-l.sichert@proxmox.com>

The vnet bridges already set ip-forward/ip6-forward explicitly. Do
the same for the vrf bridge shared by the vnets of a zone, so the
config is consistent and does not rely on the ifupdown2 default.

Signed-off-by: Lukas Sichert <l.sichert@proxmox.com>
---
 src/PVE/Network/SDN/Zones/EvpnPlugin.pm                | 10 ++++++++++
 .../evpn/advertise_subnets/expected_sdn_interfaces     |  1 +
 src/test/zones/evpn/auto_mode/expected_sdn_interfaces  |  1 +
 src/test/zones/evpn/bgp_ebgp/expected_sdn_interfaces   |  1 +
 .../evpn/bgp_ebgp_multihop/expected_sdn_interfaces     |  1 +
 .../bgp_ebgp_reverse_order/expected_sdn_interfaces     |  1 +
 .../expected_sdn_interfaces                            |  1 +
 src/test/zones/evpn/bgp_fabric/expected_sdn_interfaces |  1 +
 .../zones/evpn/bgp_loopback/expected_sdn_interfaces    |  1 +
 .../evpn/bgp_multipath_relax/expected_sdn_interfaces   |  1 +
 .../evpn/combined_bgp_isis/expected_sdn_interfaces     |  1 +
 .../disable_arp_nd_suppression/expected_sdn_interfaces |  1 +
 src/test/zones/evpn/ebgp/expected_sdn_interfaces       |  1 +
 .../expected_sdn_interfaces                            |  1 +
 .../expected_sdn_interfaces                            |  1 +
 .../expected_sdn_interfaces                            |  2 ++
 .../zones/evpn/ebgp_loopback/expected_sdn_interfaces   |  1 +
 .../expected_sdn_interfaces                            |  1 +
 .../expected_sdn_interfaces                            |  2 ++
 src/test/zones/evpn/exitnode/expected_sdn_interfaces   |  1 +
 .../exitnode_local_routing/expected_sdn_interfaces     |  1 +
 .../expected_sdn_interfaces                            |  1 +
 .../evpn/exitnode_primary/expected_sdn_interfaces      |  1 +
 .../zones/evpn/exitnode_snat/expected_sdn_interfaces   |  2 ++
 .../evpn/exitnodenullroute/expected_sdn_interfaces     |  3 +++
 .../zones/evpn/frr_local_merge/expected_sdn_interfaces |  1 +
 .../expected_sdn_interfaces                            |  1 +
 src/test/zones/evpn/ipv4/expected_sdn_interfaces       |  1 +
 src/test/zones/evpn/ipv4ipv6/expected_sdn_interfaces   |  2 ++
 src/test/zones/evpn/ipv6/expected_sdn_interfaces       |  1 +
 .../zones/evpn/ipv6underlay/expected_sdn_interfaces    |  1 +
 src/test/zones/evpn/isis/expected_sdn_interfaces       |  1 +
 .../zones/evpn/isis_loopback/expected_sdn_interfaces   |  1 +
 .../zones/evpn/multipath_relax/expected_sdn_interfaces |  1 +
 .../zones/evpn/multiplezones/expected_sdn_interfaces   |  2 ++
 .../evpn/openfabric_fabric/expected_sdn_interfaces     |  1 +
 .../openfabric_fabric_ipv6/expected_sdn_interfaces     |  1 +
 .../expected_sdn_interfaces                            |  1 +
 .../zones/evpn/ospf_fabric/expected_sdn_interfaces     |  1 +
 src/test/zones/evpn/routemap/expected_sdn_interfaces   |  1 +
 .../evpn/routemap_exit_node/expected_sdn_interfaces    |  1 +
 .../evpn/routemap_prefix_list/expected_sdn_interfaces  |  1 +
 src/test/zones/evpn/rt_import/expected_sdn_interfaces  |  1 +
 src/test/zones/evpn/vxlanport/expected_sdn_interfaces  |  1 +
 44 files changed, 60 insertions(+)

diff --git a/src/PVE/Network/SDN/Zones/EvpnPlugin.pm b/src/PVE/Network/SDN/Zones/EvpnPlugin.pm
index c31b6c6..8a45c51 100644
--- a/src/PVE/Network/SDN/Zones/EvpnPlugin.pm
+++ b/src/PVE/Network/SDN/Zones/EvpnPlugin.pm
@@ -349,6 +349,16 @@ sub generate_sdn_config {
             push @iface_config, "mtu $mtu" if $mtu;
             push @iface_config, "vrf $vrf_iface";
             push(@{ $config->{$brvrf} }, @iface_config) if !$config->{$brvrf};
+
+            my @forward_opts;
+            push @forward_opts, 'ip-forward on' if $enable_forward_v4;
+            if ($enable_forward_v6) {
+                push @forward_opts, 'ip6-forward on';
+            }
+            for my $opt (@forward_opts) {
+                my $opt_absent = !grep { $_ eq $opt } @{ $config->{$brvrf} };
+                push @{ $config->{$brvrf} }, $opt if $opt_absent;
+            }
         }
 
         if ($is_evpn_gateway && $exitnodes_local_routing) {
diff --git a/src/test/zones/evpn/advertise_subnets/expected_sdn_interfaces b/src/test/zones/evpn/advertise_subnets/expected_sdn_interfaces
index 9d1c64c..a7a232b 100644
--- a/src/test/zones/evpn/advertise_subnets/expected_sdn_interfaces
+++ b/src/test/zones/evpn/advertise_subnets/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/auto_mode/expected_sdn_interfaces b/src/test/zones/evpn/auto_mode/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/auto_mode/expected_sdn_interfaces
+++ b/src/test/zones/evpn/auto_mode/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/bgp_ebgp/expected_sdn_interfaces b/src/test/zones/evpn/bgp_ebgp/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/bgp_ebgp/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_ebgp/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/bgp_ebgp_multihop/expected_sdn_interfaces b/src/test/zones/evpn/bgp_ebgp_multihop/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/bgp_ebgp_multihop/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_ebgp_multihop/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/bgp_ebgp_reverse_order/expected_sdn_interfaces b/src/test/zones/evpn/bgp_ebgp_reverse_order/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/bgp_ebgp_reverse_order/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_ebgp_reverse_order/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/bgp_evpn_routemap_prefix_list/expected_sdn_interfaces b/src/test/zones/evpn/bgp_evpn_routemap_prefix_list/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/bgp_evpn_routemap_prefix_list/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_evpn_routemap_prefix_list/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/bgp_fabric/expected_sdn_interfaces b/src/test/zones/evpn/bgp_fabric/expected_sdn_interfaces
index fd16853..d321e7b 100644
--- a/src/test/zones/evpn/bgp_fabric/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_fabric/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_evpn
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_evpn
+	ip-forward on
 
 auto vrfvx_evpn
 iface vrfvx_evpn
diff --git a/src/test/zones/evpn/bgp_loopback/expected_sdn_interfaces b/src/test/zones/evpn/bgp_loopback/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/bgp_loopback/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_loopback/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/bgp_multipath_relax/expected_sdn_interfaces b/src/test/zones/evpn/bgp_multipath_relax/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/bgp_multipath_relax/expected_sdn_interfaces
+++ b/src/test/zones/evpn/bgp_multipath_relax/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/combined_bgp_isis/expected_sdn_interfaces b/src/test/zones/evpn/combined_bgp_isis/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/combined_bgp_isis/expected_sdn_interfaces
+++ b/src/test/zones/evpn/combined_bgp_isis/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/disable_arp_nd_suppression/expected_sdn_interfaces b/src/test/zones/evpn/disable_arp_nd_suppression/expected_sdn_interfaces
index bbde906..7b605d9 100644
--- a/src/test/zones/evpn/disable_arp_nd_suppression/expected_sdn_interfaces
+++ b/src/test/zones/evpn/disable_arp_nd_suppression/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ebgp/expected_sdn_interfaces b/src/test/zones/evpn/ebgp/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/ebgp/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ebgp/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp/expected_sdn_interfaces b/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp/expected_sdn_interfaces
index 7481d36..ed5392e 100644
--- a/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import/expected_sdn_interfaces b/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import/expected_sdn_interfaces
index 7481d36..ed5392e 100644
--- a/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import_mixed/expected_sdn_interfaces b/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import_mixed/expected_sdn_interfaces
index 39f3beb..417fe54 100644
--- a/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import_mixed/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ebgp_evpn_ibgp_wan_evpn_ebgp_rt_import_mixed/expected_sdn_interfaces
@@ -39,6 +39,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfbr_myzone2
 iface vrfbr_myzone2
@@ -47,6 +48,7 @@ iface vrfbr_myzone2
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone2
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ebgp_loopback/expected_sdn_interfaces b/src/test/zones/evpn/ebgp_loopback/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/ebgp_loopback/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ebgp_loopback/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/evpn_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces b/src/test/zones/evpn/evpn_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/evpn_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces
+++ b/src/test/zones/evpn/evpn_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/evpn_multiple_zones_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces b/src/test/zones/evpn/evpn_multiple_zones_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces
index 88706b7..eea0961 100644
--- a/src/test/zones/evpn/evpn_multiple_zones_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces
+++ b/src/test/zones/evpn/evpn_multiple_zones_cluster_ibgp_uplink_ebgp/expected_sdn_interfaces
@@ -39,6 +39,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfbr_myzone2
 iface vrfbr_myzone2
@@ -47,6 +48,7 @@ iface vrfbr_myzone2
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone2
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/exitnode/expected_sdn_interfaces b/src/test/zones/evpn/exitnode/expected_sdn_interfaces
index 5ab3084..4f23b82 100644
--- a/src/test/zones/evpn/exitnode/expected_sdn_interfaces
+++ b/src/test/zones/evpn/exitnode/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/exitnode_local_routing/expected_sdn_interfaces b/src/test/zones/evpn/exitnode_local_routing/expected_sdn_interfaces
index 301f5b3..c349d26 100644
--- a/src/test/zones/evpn/exitnode_local_routing/expected_sdn_interfaces
+++ b/src/test/zones/evpn/exitnode_local_routing/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/exitnode_local_routing_ipv6/expected_sdn_interfaces b/src/test/zones/evpn/exitnode_local_routing_ipv6/expected_sdn_interfaces
index b46d4e7..02b52c1 100644
--- a/src/test/zones/evpn/exitnode_local_routing_ipv6/expected_sdn_interfaces
+++ b/src/test/zones/evpn/exitnode_local_routing_ipv6/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip6-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/exitnode_primary/expected_sdn_interfaces b/src/test/zones/evpn/exitnode_primary/expected_sdn_interfaces
index 5ab3084..4f23b82 100644
--- a/src/test/zones/evpn/exitnode_primary/expected_sdn_interfaces
+++ b/src/test/zones/evpn/exitnode_primary/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/exitnode_snat/expected_sdn_interfaces b/src/test/zones/evpn/exitnode_snat/expected_sdn_interfaces
index 0d7d174..522a54e 100644
--- a/src/test/zones/evpn/exitnode_snat/expected_sdn_interfaces
+++ b/src/test/zones/evpn/exitnode_snat/expected_sdn_interfaces
@@ -42,6 +42,8 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
+	ip6-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/exitnodenullroute/expected_sdn_interfaces b/src/test/zones/evpn/exitnodenullroute/expected_sdn_interfaces
index 4bf5ccf..6878397 100644
--- a/src/test/zones/evpn/exitnodenullroute/expected_sdn_interfaces
+++ b/src/test/zones/evpn/exitnodenullroute/expected_sdn_interfaces
@@ -47,6 +47,8 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
+	ip6-forward on
 
 auto vrfbr_myzone2
 iface vrfbr_myzone2
@@ -55,6 +57,7 @@ iface vrfbr_myzone2
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone2
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/frr_local_merge/expected_sdn_interfaces b/src/test/zones/evpn/frr_local_merge/expected_sdn_interfaces
index c7ddf44..7c707d2 100644
--- a/src/test/zones/evpn/frr_local_merge/expected_sdn_interfaces
+++ b/src/test/zones/evpn/frr_local_merge/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/frr_local_merge_router_without_exit/expected_sdn_interfaces b/src/test/zones/evpn/frr_local_merge_router_without_exit/expected_sdn_interfaces
index 169f32d..f298297 100644
--- a/src/test/zones/evpn/frr_local_merge_router_without_exit/expected_sdn_interfaces
+++ b/src/test/zones/evpn/frr_local_merge_router_without_exit/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_evpnz
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_evpnz
+	ip-forward on
 
 auto vrfvx_evpnz
 iface vrfvx_evpnz
diff --git a/src/test/zones/evpn/ipv4/expected_sdn_interfaces b/src/test/zones/evpn/ipv4/expected_sdn_interfaces
index 9d1c64c..a7a232b 100644
--- a/src/test/zones/evpn/ipv4/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ipv4/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ipv4ipv6/expected_sdn_interfaces b/src/test/zones/evpn/ipv4ipv6/expected_sdn_interfaces
index 7a5d741..0bde7a1 100644
--- a/src/test/zones/evpn/ipv4ipv6/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ipv4ipv6/expected_sdn_interfaces
@@ -26,6 +26,8 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
+	ip6-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ipv6/expected_sdn_interfaces b/src/test/zones/evpn/ipv6/expected_sdn_interfaces
index b2bdbfe..98793a1 100644
--- a/src/test/zones/evpn/ipv6/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ipv6/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip6-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/ipv6underlay/expected_sdn_interfaces b/src/test/zones/evpn/ipv6underlay/expected_sdn_interfaces
index 3b91f75..62f05df 100644
--- a/src/test/zones/evpn/ipv6underlay/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ipv6underlay/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip6-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/isis/expected_sdn_interfaces b/src/test/zones/evpn/isis/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/isis/expected_sdn_interfaces
+++ b/src/test/zones/evpn/isis/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/isis_loopback/expected_sdn_interfaces b/src/test/zones/evpn/isis_loopback/expected_sdn_interfaces
index e595dc9..db83e94 100644
--- a/src/test/zones/evpn/isis_loopback/expected_sdn_interfaces
+++ b/src/test/zones/evpn/isis_loopback/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/multipath_relax/expected_sdn_interfaces b/src/test/zones/evpn/multipath_relax/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/multipath_relax/expected_sdn_interfaces
+++ b/src/test/zones/evpn/multipath_relax/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/multiplezones/expected_sdn_interfaces b/src/test/zones/evpn/multiplezones/expected_sdn_interfaces
index e279b0a..71cc9cd 100644
--- a/src/test/zones/evpn/multiplezones/expected_sdn_interfaces
+++ b/src/test/zones/evpn/multiplezones/expected_sdn_interfaces
@@ -39,6 +39,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfbr_myzone2
 iface vrfbr_myzone2
@@ -47,6 +48,7 @@ iface vrfbr_myzone2
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone2
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/openfabric_fabric/expected_sdn_interfaces b/src/test/zones/evpn/openfabric_fabric/expected_sdn_interfaces
index 7460b12..451c782 100644
--- a/src/test/zones/evpn/openfabric_fabric/expected_sdn_interfaces
+++ b/src/test/zones/evpn/openfabric_fabric/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_evpn
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_evpn
+	ip-forward on
 
 auto vrfvx_evpn
 iface vrfvx_evpn
diff --git a/src/test/zones/evpn/openfabric_fabric_ipv6/expected_sdn_interfaces b/src/test/zones/evpn/openfabric_fabric_ipv6/expected_sdn_interfaces
index d017713..a4ad244 100644
--- a/src/test/zones/evpn/openfabric_fabric_ipv6/expected_sdn_interfaces
+++ b/src/test/zones/evpn/openfabric_fabric_ipv6/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_evpn
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_evpn
+	ip-forward on
 
 auto vrfvx_evpn
 iface vrfvx_evpn
diff --git a/src/test/zones/evpn/openfabric_fabric_ipv6_only/expected_sdn_interfaces b/src/test/zones/evpn/openfabric_fabric_ipv6_only/expected_sdn_interfaces
index 51507d7..bb54526 100644
--- a/src/test/zones/evpn/openfabric_fabric_ipv6_only/expected_sdn_interfaces
+++ b/src/test/zones/evpn/openfabric_fabric_ipv6_only/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_evpn
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_evpn
+	ip-forward on
 
 auto vrfvx_evpn
 iface vrfvx_evpn
diff --git a/src/test/zones/evpn/ospf_fabric/expected_sdn_interfaces b/src/test/zones/evpn/ospf_fabric/expected_sdn_interfaces
index 2543304..173488e 100644
--- a/src/test/zones/evpn/ospf_fabric/expected_sdn_interfaces
+++ b/src/test/zones/evpn/ospf_fabric/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_evpn
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_evpn
+	ip-forward on
 
 auto vrfvx_evpn
 iface vrfvx_evpn
diff --git a/src/test/zones/evpn/routemap/expected_sdn_interfaces b/src/test/zones/evpn/routemap/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/routemap/expected_sdn_interfaces
+++ b/src/test/zones/evpn/routemap/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/routemap_exit_node/expected_sdn_interfaces b/src/test/zones/evpn/routemap_exit_node/expected_sdn_interfaces
index 5ab3084..4f23b82 100644
--- a/src/test/zones/evpn/routemap_exit_node/expected_sdn_interfaces
+++ b/src/test/zones/evpn/routemap_exit_node/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/routemap_prefix_list/expected_sdn_interfaces b/src/test/zones/evpn/routemap_prefix_list/expected_sdn_interfaces
index 4cf13e0..ee0ad41 100644
--- a/src/test/zones/evpn/routemap_prefix_list/expected_sdn_interfaces
+++ b/src/test/zones/evpn/routemap_prefix_list/expected_sdn_interfaces
@@ -23,6 +23,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/rt_import/expected_sdn_interfaces b/src/test/zones/evpn/rt_import/expected_sdn_interfaces
index 9d1c64c..a7a232b 100644
--- a/src/test/zones/evpn/rt_import/expected_sdn_interfaces
+++ b/src/test/zones/evpn/rt_import/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
diff --git a/src/test/zones/evpn/vxlanport/expected_sdn_interfaces b/src/test/zones/evpn/vxlanport/expected_sdn_interfaces
index d511bf9..4f844f1 100644
--- a/src/test/zones/evpn/vxlanport/expected_sdn_interfaces
+++ b/src/test/zones/evpn/vxlanport/expected_sdn_interfaces
@@ -24,6 +24,7 @@ iface vrfbr_myzone
 	bridge_fd 0
 	mtu 1450
 	vrf vrf_myzone
+	ip-forward on
 
 auto vrfvx_myzone
 iface vrfvx_myzone
-- 
2.47.3





  parent reply	other threads:[~2026-11-04 14:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-04 14:55 [PATCH many v5 00/10] sdn: enable force_forwarding for ipv6 forwarding Lukas Sichert
2026-11-04 14:55 ` [PATCH ifupdown2 v5 01/10] d/patches: add ipv6 force_forwarding for bridges Lukas Sichert
2026-11-04 14:55 ` Lukas Sichert [this message]
2026-11-04 14:55 ` [PATCH network v5 03/10] sdn: evpn: enable force_forwarding for ipv6 forwarding to subnets Lukas Sichert
2026-11-04 14:55 ` [PATCH network v5 04/10] sdn: simple: " Lukas Sichert
2026-11-04 14:55 ` [PATCH network v5 05/10] tests: sdn: update fabric expectations for explicit ipv6 forwarding Lukas Sichert
2026-11-04 14:55 ` [PATCH perl-rs v5 06/10] openfabric: set ip6-forward explicitly Lukas Sichert
2026-11-04 14:55 ` [PATCH perl-rs v5 07/10] fabrics: openfabric: enable force_forwarding for ipv6 transit traffic Lukas Sichert
2026-11-04 14:55 ` [PATCH perl-rs v5 08/10] fabrics: bgp: " Lukas Sichert
2026-11-04 14:55 ` [PATCH manager v5 09/10] ui: sdn: remove IPv6 forwarding hint from fabric edit window Lukas Sichert
2026-11-04 14:55 ` [PATCH docs v5 10/10] sdn: drop global ipv6 forwarding workaround from docs Lukas Sichert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261104145513.21471-3-l.sichert@proxmox.com \
    --to=l.sichert@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal