mirror of
https://github.com/lucaspalomodevelop/core.git
synced 2026-03-15 17:14:46 +00:00
Simplify route-to rules from the firewall, probably can be cleaned even more
This commit is contained in:
parent
25eeb7c9b2
commit
e839ef2c3a
@ -2428,27 +2428,13 @@ function filter_rules_generate(&$FilterIflist)
|
||||
|
||||
$gw = get_interface_gateway($ifdescr);
|
||||
if (is_ipaddrv4($gw) && isset($ifcfg['ip']) && is_ipaddrv4($ifcfg['ip'])) {
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$ifcfg['if']} {$gw} ) from {$ifcfg['ip']} to !{$ifcfg['sa']}/{$ifcfg['sn']} keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
if (isset($ifcfg['vips']) && is_array($ifcfg['vips'])) {
|
||||
foreach ($ifcfg['vips'] as $vip) {
|
||||
if (ip_in_subnet($vip['ip'], "{$ifcfg['sa']}/{$ifcfg['sn']}")) {
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$ifcfg['if']} {$gw} ) from {$vip['ip']} to !{$ifcfg['sa']}/{$ifcfg['sn']} keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
} else {
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$ifcfg['if']} {$gw} ) from {$vip['ip']} to !" . gen_subnet($vip['ip'], $vip['sn']) . "/{$vip['sn']} keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$ifcfg['if']} {$gw} ) from ({$ifcfg['if']}) to !({$ifcfg['if']}:network) keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
}
|
||||
|
||||
$gwv6 = get_interface_gateway_v6($ifdescr);
|
||||
$stf = get_real_interface($ifdescr, "inet6");
|
||||
$pdlen = 64 - calculate_ipv6_delegation_length($ifdescr);
|
||||
if (is_ipaddrv6($gwv6) && is_ipaddrv6($ifcfg['ipv6'])) {
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$stf} {$gwv6} ) inet6 from {$ifcfg['ipv6']} to !{$ifcfg['ipv6']}/{$pdlen} keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
if (is_array($ifcfg['vips6'])) {
|
||||
foreach ($ifcfg['vips6'] as $vip)
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$stf} {$gwv6} ) inet6 from {$vip['ip']} to !{$vip['ip']}/{$pdlen} keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
}
|
||||
$ipfrules .= "pass out {$log['pass']} route-to ( {$stf} {$gwv6} ) inet6 from ({$stf}) to !({$stf}:network) keep state allow-opts label \"let out anything from firewall host itself\"\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user