X-Git-Url: https://git.proxmox.com/?p=pve-firewall.git;a=blobdiff_plain;f=src%2FPVE%2FFirewall.pm;h=ef74ca2fae597a882ea30e778c49cee8cfc5ff77;hp=cf965645955fec3eb4a81856dc3c957f44093c15;hb=15c800003e921cfd627ef0b6213b9ff09fe3d8c8;hpb=48e3963e666c53553f38243c17e9102a5dc21f60 diff --git a/src/PVE/Firewall.pm b/src/PVE/Firewall.pm index cf96564..ef74ca2 100644 --- a/src/PVE/Firewall.pm +++ b/src/PVE/Firewall.pm @@ -911,13 +911,17 @@ sub local_network { my $mask; if ($isv6) { $mask = $entry->{prefix}; + next if !$mask; # skip the default route... } else { $mask = $PVE::Network::ipv4_mask_hash_localnet->{$entry->{mask}}; next if !defined($mask); } my $cidr = "$entry->{dest}/$mask"; my $testnet = Net::IP->new($cidr); - if ($testnet->overlaps($testip) == $Net::IP::IP_B_IN_A_OVERLAP) { + my $overlap = $testnet->overlaps($testip); + if ($overlap == $Net::IP::IP_B_IN_A_OVERLAP || + $overlap == $Net::IP::IP_IDENTICAL) + { $__local_network = $cidr; return; }