From 3bcdae70f742771a4e71e7029009778935d86362 Mon Sep 17 00:00:00 2001 From: Monviech <79600909+Monviech@users.noreply.github.com> Date: Sun, 1 Feb 2026 13:23:36 +0100 Subject: [PATCH] radvd: When Base6Interface constructor is used, use its primary address for ifcfgipv6 (#9689) --- src/etc/inc/plugins.inc.d/radvd.inc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/etc/inc/plugins.inc.d/radvd.inc b/src/etc/inc/plugins.inc.d/radvd.inc index fbe3f7b138..3477241ef4 100644 --- a/src/etc/inc/plugins.inc.d/radvd.inc +++ b/src/etc/inc/plugins.inc.d/radvd.inc @@ -149,8 +149,16 @@ function radvd_configure_do($verbose = false, $ignorelist = []) $carp_mode = false; $src_addr = false; + $ifcfgipv6 = null; + + if (!$entry->AdvRASrcAddress->isEmpty()) { + $ifcfgipv6 = $entry->AdvRASrcAddress->getValue(); + } elseif (!$entry->Base6Interface->isEmpty()) { + $ifcfgipv6 = get_interface_ipv6($entry->Base6Interface->getValue()); + } else { + $ifcfgipv6 = get_interface_ipv6($dhcpv6if); + } - $ifcfgipv6 = !$entry->AdvRASrcAddress->isEmpty() ? $entry->AdvRASrcAddress->getValue() : get_interface_ipv6($dhcpv6if); if (!is_ipaddrv6($ifcfgipv6)) { $radvdconf .= "# Skipping addressless interface {$dhcpv6if}\n"; continue;