diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-05-07 14:59:47 +0200 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-05-07 14:59:47 +0200 |
commit | c1a336ce8f9ed347ad63edb90d3bce94db96300d (patch) | |
tree | 97577c72e5c2985fbcdf712dc0ff954757b9cdde | |
parent | f83638f859d833029f01dc5ce452ebf10880c3f5 (diff) |
don't always (unrightfully) drop traffic from IPv4-mapped IPv6 addresses
-rw-r--r-- | src/main.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs index b899f3a..984c4b6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -109,7 +109,14 @@ fn main() -> Result<()> { let is_local = match raddr.ip() { IpAddr::V4(addr) => addr.is_private(), IpAddr::V6(addr) => { - he.tn64.contains(&addr) || he.rt64.contains(&addr) || he.rt48.contains(&addr) + he.tn64.contains(&addr) + || he.rt64.contains(&addr) + || he.rt48.contains(&addr) + || if let Some(addr) = addr.to_ipv4_mapped() { + addr.is_private() + } else { + false + } } }; |