Aqueduct.Web.RequestHelper.IsValidExternalIp C# (CSharp) Метод

IsValidExternalIp() приватный статический Метод

private static IsValidExternalIp ( string ip ) : bool
ip string
Результат bool
        private static bool IsValidExternalIp(string ip)
        {
            if (ip.IsNullOrEmpty())
                return false;

            IPAddress address = IPAddress.None;
            if (IPAddress.TryParse(ip, out address) == false)
                return false;

            List<IPAddressRange> localIPRanges = new List<IPAddressRange> { 
                new IPAddressRange(IPAddress.Parse("10.0.0.0"), IPAddress.Parse("10.255.255.255")),
            new IPAddressRange(IPAddress.Parse("172.16.0.0"), IPAddress.Parse("172.31.255.255")),
            new IPAddressRange(IPAddress.Parse("192.168.0.0"), IPAddress.Parse("192.168.255.255")),
            new IPAddressRange(IPAddress.Parse("169.254.0.0"), IPAddress.Parse("169.254.255.255"))
            };

            foreach (var range in localIPRanges)
            {
                if (range.IsInRange(address))
                    return false;
            }

            return true;
        }
    }