我已设法使用下面的代码获取连接的客户端IP,但似乎无法获取主机名.
Globals.connectedIPAddress = "" + IPAddress.Parse(((
IPEndPoint)_client.Client.RemoteEndPoint).Address.ToString());
Run Code Online (Sandbox Code Playgroud)
Jon*_*eet 14
好吧,并非每个IP地址都有一个名称.不过,考虑到IPAddress可以使用Dns.GetHostEntry来尝试解决这个问题.另请注意,如果它是NAT路由器,您将获得路由器的IP地址而不是实际的机器.
只是为了解决评论中的要点,我同意ToString/Parse/ToString中没有意义:
IPAddress address = ((IPEndPoint)_client.Client.RemoteEndPoint).Address;
Globals.connectedIPAddress = address.ToString();
Run Code Online (Sandbox Code Playgroud)