2009-06-19 7 views

Répondre

11

Quelque chose comme cela devrait travailler ...

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!"); 
} 
0

Eh bien, vous pouvez simplement les obtenir: ToString() et ensuite les comparer. Ou vous pouvez itérer à travers les 4 chiffres que possède un ipv4 ip, et les comparer.

-1

Il suffit de comparer chaque membre de la structure.

2

Je suppose que vous avez récupéré l'adresse IP via

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

Si tel est le cas, vous pouvez les comparer par

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

Toutes les variantes ci-dessus fonctionneront mais il existe une autre option non mentionnée ici: Utilisez la méthode IpAddress GetAddressBytes pour obtenir l'adresse en tant qu'octets et les comparer. Cela pourrait être utile si vous avez besoin de faire d'autres traitements (par exemple déterminer si une adresse IP est dans une classe IP ou quelque chose comme ça) ..

Questions connexes