我在 Nmap 中发现了一个奇怪的行为(如果这很重要,我使用的是 5.51 版,但我对 5.00 版有同样的问题),在某些网络上,这个插件不检索 MAC 地址,因此,供应商。奇怪的是,它几乎可以检索操作系统等所有内容,但它不打印 MAC 地址。这怎么可能?这是我通常使用的命令:
nmap -A -O 192.168.1.0/24 -oX mynetwork.xml
我在 Nmap 中发现了一个奇怪的行为(如果这很重要,我使用的是 5.51 版,但我对 5.00 版有同样的问题),在某些网络上,这个插件不检索 MAC 地址,因此,供应商。奇怪的是,它几乎可以检索操作系统等所有内容,但它不打印 MAC 地址。这怎么可能?这是我通常使用的命令:
nmap -A -O 192.168.1.0/24 -oX mynetwork.xml
MAC 地址仅在以 root 权限运行扫描时显示,因此请务必使用sudo
. 作为诊断步骤,尝试执行简单的 ping 扫描 ( sudo nmap -sn 192.168.1.0/24
),然后立即检查您的 ARP 缓存 ( arp -an
)。如果你没有看到很多<incomplete>
s,那么 Nmap 没有正确扫描你的子网。如果您看到 256<incomplete>
并且没有 MAC 地址,那么您的网络设置有问题,因为您没有看到对 Nmap 生成的请求的 ARP 响应。
如果您正在扫描本地子网上的主机,Nmap 只能检索 MAC 地址,可通过第 2 层(以太网或 wifi)直接访问。当您通过路由器(默认网关)扫描主机时,您的扫描主机将在发送/接收第 3 层数据包时与第 2 层的路由器通信,因此,Nmap 只能看到路由器的 MAC 地址,而不能看到目的地主机 MAC 地址。
(虽然在某些情况下,通过NetBIOS 、SNMP 等协议确定非本地主机的 MAC 地址在技术上是可行的,并且有用于此目的的 NSE 脚本,但 Nmap 通常不会这样做。)
我在 5.61TEST5 版本中也缺少 MAC 地址和供应商报告,但我刚刚安装了 6.00 版本,一切似乎又可以正常工作了,所以您现在可能想尝试一下。