nmap 说 0 个主机处于开启状态,尽管我可以 ping 通

nmap 说 0 个主机处于开启状态,尽管我可以 ping 通

我在 Win 7 x64 上运行 Metasploit,并在 VMware Player 上设置了 Metasploitable 2 虚拟机。我可以从 Metasploit 控制台 ping Metasploitable 的 IP 地址,但如果我使用 nmap,它会显示:

注意:主机似乎已关闭。如果它确实已启动,但阻止了我们的 ping 问题,请尝试 -Pn

我尝试使用 -Pn 开关,它说

Nmap 完成:0.64 秒内扫描了 1 个 IP 地址(0 个启动的主机)

我已禁用 Windows 防火墙并以管理员身份运行 Metasploit。为什么我无法 nmap 虚拟机?

答案1

经常使用sudo可以修复它:sudo nmap [options]

Nmap 需要 root 权限来构造原始数据包(它不依赖系统的 ping 二进制文件来执行 ping 操作,但它还可以执行许多其他自定义数据包制作)。当 Nmap 被允许使用此原始功能时,ping 扫描将按预期工作。

专家提示:sudo !!以 root 身份重复最后一个命令(!!代表“最后一个命令”)。

答案2

如果你使用的是旧版本(6.00 或 6.01 版)的 Nmap,这可能与已知错误。尝试使用 运行--unprivileged,这将破坏 Nmap 的某些功能,但应该可以用于端口扫描。或者,使用 的输出来识别应该用于扫描的nmap --iflist接口名称(例如),并将其与标志一起传递给 Nmap,如下所示:eth1-enmap -e eth1 --other --args targets

当然最好的解决办法是升级到不受影响的 Nmap 版本采用最新的改进。

答案3

我在 Windows 7 Enterprise x86 中遇到了完全相同的问题。

当我添加-e选项为盆景解释一下,它工作得很好,尽管速度太慢了。此外,我发现当你的电脑有多个网络适配器时,比如虚拟机网络(VMware 网络适配器 VMnet8),就会发生这种情况。

禁用vm8适配器后,即使没有该选项,它也可以正常工作-e

答案4

我在 Windows 11 上使用 nmap 7.92 时遇到了这个问题,安装 npcap 解决了这个问题。

相关内容