我如何知道远程机器使用的是 Windows 还是 Linux?

Dio*_*ogo 12 networking windows linux protocol

是否有某种方法可以运行命令(例如 ICMP 消息或其他协议),从远程机器(不是在我自己的私有本地网络上)获取响应并分析消息以找到一些证据表明这台机器正在运行 Windows 或Linux 操作系统?

Jou*_*eek 18

这不是确定的,但nmap将使用命令执行此操作nmap -O -v(有关更多详细信息,请参阅文档)如果您正在运行 Windows 或想要一个 gui,请查看zenmap

  • @JeroenBaert 即 AWS 给我发了一封可怕的电子邮件 (3认同)
  • 请注意 - 一些提供商将使用 nmap 检测端口扫描作为滥用。 (2认同)

Har*_*ton 11

如果您在 IPv4 网络上,只需使用 ping。如果响应的 TTL 为 128,则目标可能正在运行 Windows。如果 TTL 为 64,则目标可能正在运行某种 Unix 变体。

  • @Hervian,如果您的意思是为什么选择这些特定的 TTL,则您必须询问原始程序员。如果您的意思是为什么大多数或所有 UNIX 变体都相同和/或为什么每个版本的 Windows 的 TTL 都相同,那只是惯性 - 在没有任何特殊原因进行更改的情况下,它往往会保持不变相同的。 (2认同)