Fix source_ip_is_private matching

This commit is contained in:
dyhkwong 2024-03-24 19:06:02 +08:00 committed by GitHub
parent ed2f8b9637
commit 965ab075d9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -24,14 +24,16 @@ func (r *IPIsPrivateItem) Match(metadata *adapter.InboundContext) bool {
} else { } else {
destination = metadata.Destination.Addr destination = metadata.Destination.Addr
} }
if destination.IsValid() && !N.IsPublicAddr(destination) { if destination.IsValid() {
return true return !N.IsPublicAddr(destination)
} }
if !r.isSource {
for _, destinationAddress := range metadata.DestinationAddresses { for _, destinationAddress := range metadata.DestinationAddresses {
if !N.IsPublicAddr(destinationAddress) { if !N.IsPublicAddr(destinationAddress) {
return true return true
} }
} }
}
return false return false
} }