从IP地址获取主机名

时间:2010-07-15 14:23:09

标签: c#

我已设法通过以下代码获取已连接的客户端IP,但似乎无法获取主机名。

Globals.connectedIPAddress = "" + IPAddress.Parse(((
    IPEndPoint)_client.Client.RemoteEndPoint).Address.ToString());

1 个答案:

答案 0 :(得分:14)

嗯,并非每个IP地址都有名称。但是,鉴于IPAddress,您可以使用Dns.GetHostEntry 尝试来解决此问题。另请注意,如果它是NAT路由器,您将获得路由器的IP地址而不是实际的机器。

只是为了解决评论中的观点,我同意ToString / Parse / ToString中没有意义:

IPAddress address = ((IPEndPoint)_client.Client.RemoteEndPoint).Address;
Globals.connectedIPAddress = address.ToString();