What is the best way of validating an IP Address?

后端 未结 10 863
时光取名叫无心
时光取名叫无心 2020-12-25 10:08

I have a method to validate a parameter IP Address. Being new to development as a whole I would like to know if there is a better way of doing this.



        
10条回答
  •  佛祖请我去吃肉
    2020-12-25 10:55

    For validating IP Address, use below package

    Packages:-

    using System.Net;  //To use IPAddress, inbuilt functionality
    using System.Net.Sockets; //To access AddressFamily,
    using System.Text.RegularExpression; //For Regex.IsMatch()
    

    Method:-

    public bool ValidIPAddress(string IP)
    {
        //Validate IP Address , neither IPV4, or V6
    
        if (IPAddress.TryParse(IP, out var address) == false)
           return false;
        //check for IPV6
    
        if (address.AddressFamily == AddressFamily.InterNetworkV6)
    
        {
    
            if (IP.IndexOf("::") > -1)
    
                return true;
    
            return false;
    
        }
    
        //check for IPV4
    
        else
    
        {
    
        //Ipv4 address shouldn't start with 0 eg..it is invalid 0XX.0XX.0XX.0XX
            if (Regex.IsMatch(IP, @"(^0\d|\.0\d)"))
    
                return false;
    
            else if (IP.Count(c => c == '.') != 3)
    
                return false;
    
            else
    
                return true;
    
        }
    
    }
    

    check on below link if needed:-

    https://lncharan.blogspot.com/2020/09/validate-ip-address-in-c.html

提交回复
热议问题