为什么netstat报告不正确的机器名称?

我需要调查什么客户端连接到我的应用程序,我正在使用netstat命令。 我注意到有时它不会报告我正确的机器名称。

为什么发生这种情况? 有没有更好的方式来获得连接到我的服务器的客户端列表?

我相信netstat获取连接主机的IP地址,并对该地址进行反向DNS查找(我知道这是Unix的netstat的工作原理,我怀疑这是Windows的netstat的工作原理)。

所以首先,networking名称不一定与机器名称有任何关系。 其次,在DNS内部,networking名称和地址具有多对多的关系。 也就是说,给定的名称查找可能会返回一个地址列表,而地址查找可能会返回一个名称列表 – 但列表中的条目顺序可能不同,列表可能不匹配。 此外,软件不正确处理DNS列表答案并不常见,只使用列表中的第一项。

因此,关于networking连接主机的“正确”名称的概念可能与主机的DNSpipe理认为是“正确”的名称不一致。 从不同的angular度来看,你们都可能是对的,但是既然你从DNS查询中得到了名字,那么DNS答案就是你所得到的。