How do I determine the remote IP Address of a connected socket?
I have a RemoteEndPoint object I can access and well as its AddressFamily member.
How do I utilize these to find the ip address?
Thanks!
Currently trying
IPAddress.Parse( testSocket.Address.Address.ToString() ).ToString();
and getting 1.0.0.127 instead of 127.0.0.1 for localhost end points. Is this normal?
string ip = ((IPEndPoint)(testsocket.RemoteEndPoint)).Address.ToString();
I've made this code in VB.NET but you can translate. Well pretend you have the variable Client as a TcpClient
Dim ClientRemoteIP As String = Client.Client.RemoteEndPoint.ToString.Remove(Client.Client.RemoteEndPoint.ToString.IndexOf(":"))
Hope it helps! Cheers.
RemoteEndPoint is a property, its type is System.Net.EndPoint which inherits from System.Net.IPEndPoint.
If you take a look at IPEndPoint's members, you'll see that there's an Address
property.
Source: Stackoverflow.com