pues si tienes el cliente puedes pedirle que resuelva con winsock con algo como esto
http://www.developerfusion.co.uk/show/1851/
si no puedes probar esto tambien
Private string GetIP()
{
string strHostName = "";
strHostName = System.Net.Dns.GetHostName();
IPHostEntry ipEntry = System.Net.Dns.GetHostEntry(strHostName);
IPAddress[] addr = ipEntry.AddressList;
return addr[addr.Length-1].ToString();
}