Project

General

Profile

Regression #14415

Updated by Jim Pingle over 1 year ago

Enabling "Enable IPv6 over IPv4 tunneling" on @system_advanced_network.php@ results in an invalid pf rule, leading to a ruleset error: 

 <pre> 
 There were error(s) loading the rules: /tmp/rules.debug:59: syntax error - The line in question reads [59]: rdr on $WAN proto ipv6 from any to any -> 
 @ 2023-05-25 10:07:58 
 </pre> 

 The line in question is invalid as it lacks a destination: 

 <pre> 
 59:rdr on $WAN proto ipv6 from any to any -> 
 </pre> 

 The target system is in the config.xml and shows on @system_advanced_network.php@ but it isn't making it into the ruleset. 

 It appears to be due to one variable missing a letter in @filter.inc@: 
 <pre><code class="diff"> 
 diff --git a/src/etc/inc/filter.inc b/src/etc/inc/filter.inc 
 index 7063798529..255af0903c 100644 
 --- a/src/etc/inc/filter.inc 
 +++ b/src/etc/inc/filter.inc 
 @@ -2490,7 +2490,7 @@ function filter_nat_rules_generate() { 
             (is_ipaddr($ipv6nataddr)) && 
             (is_array($FilterIflist['wan']))) { 
                 /* XXX: FIX ME!    IPV6 */ 
 -                 $natrules .= "rdr on \${$FilterIflist['wan']['descr']} proto ipv6 from any to any -> {$pv6nataddr}\n"; 
 +                 $natrules .= "rdr on \${$FilterIflist['wan']['descr']} proto ipv6 from any to any -> {$ipv6nataddr}\n"; 
         } 
 
         unlink_if_exists("{$g['varetc_path']}/xinetd.conf"); 
 </code></pre> 

 This affects both 23.05 and 23.01. 

Back