Question

How to compare IP Address that is stored in an array of Ip[0] with remote Endpoint?? Please Help me.

Was it helpful?

Solution

Something like this should work ...

var ips = new[] { IPAddress.Parse( "127.0.0.1"),
                   IPAddress.Parse( "192.168.1.1"),
                   IPAddress.Parse( "10.0.0.1" ) };

var ep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 0);

if (ips[0].Equals(ep.Address))
{
    Console.WriteLine("Equal!");
}

OTHER TIPS

I'm assuming you have retrieved the IP address via

System.Net.EndPoint ep = client.Client.RemoteEndPoint;
System.Net.IPEndPoint ip = (System.Net.IPEndPoint)ep;

If that's the case you can just compare via

System.Net.IPEndPoint ip = (System.Net.IPEndPoint)ep;
ip.ToString();
if(Ip[0] == ip.toString());

All the above variants will work but there's another option not mentioned here: Use the IpAddress GetAddressBytes method to obtain the address as bytes and compare them. This could be usefull if you need to make other processing (such as figuring if an Ip is in an IP class or something like this)..

Well you could just get them: ToString() and then compare them. Or you can iterate through the 4 numbers that an IPV4 ip Has, and compare them.

Simply compare each member of the struct.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top