using System.Net.Sockets;
using System.Text.RegularExpressions;
public static void Main()
checkIP ip = new checkIP();
for (int i = 0; i < 10; i++)
Console.WriteLine("please enter ip address");
ipaddr = Console.ReadLine();
if (ip.IsIpV4AddressValid(ipaddr))
Console.WriteLine("Ip is valid");
Console.WriteLine("Ip is not valid");
private static readonly Regex validIpV4AddressRegex = new Regex(@"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", RegexOptions.IgnoreCase);
public bool IsIpV4AddressValid(string address)
if (!string.IsNullOrWhiteSpace(address))
return validIpV4AddressRegex.IsMatch(address.Trim());
public static bool IsIpV6AddressValid(string address)
if (!string.IsNullOrWhiteSpace(address))
if (IPAddress.TryParse(address, out ip))
return ip.AddressFamily == AddressFamily.InterNetworkV6;