Nmap不检索MAC地址和供应商

raz*_*z3r 4 macos networking auditing nmap

我在Nmap中发现了一个奇怪的行为(我使用版本5.51,如果这很重要,但我在版本5.00时遇到了同样的问题),在某些网络上,这个插件不会检索MAC地址,因此也就是供应商.奇怪的是它几乎检索所有操作系统等等,但它不会打印MAC地址.怎么可能?这是我经常使用的命令:

nmap -A -O 192.168.1.0/24 -oX mynetwork.xml
Run Code Online (Sandbox Code Playgroud)

bon*_*ing 14

只有在以root权限运行扫描时才会显示MAC地址,因此请务必使用sudo.作为诊断步骤,尝试执行简单的ping扫描(sudo nmap -sn 192.168.1.0/24),然后立即检查您的ARP缓存(arp -an).如果您没有看到很多<incomplete>s,那么Nmap不会正确扫描您的子网.如果您看到256 <incomplete>,并且没有MAC地址,那么您的网络设置有问题,因为您没有看到对Nmap正在生成的请求的ARP响应.

  • @villapx是的,但问题是为什么没有显示MAC地址.答案的第1部分是:使用sudo.第2部分是:如果不起作用,请检查arp缓存以进行诊断.诊断不同的扫描比没有问题的扫描没有意义. (2认同)
  • @villapx是的,事实并非如此.但是**需要进行ARP ping扫描才能使Nmap能够显示MAC地址.用户想要查看MAC地址.第一个建议是使用`sudo`,因为没有它,Nmap不能显示MAC地址.如果这不起作用,那么执行最少量的工作(`-sn`而没有其他选项)来测试ARP ping功能(**需要`sudo`**)是适当的操作.不使用`sudo`将不会给用户提供MAC地址或任何有关ARP扫描的有用诊断信息. (2认同)

Dan*_*ger 9

如果您扫描本地子网上的主机,Nmap只能检索MAC地址,可以通过第2层(以太网或wifi)直接访问.当您通过路由器(默认网关)扫描主机时,扫描主机将在发送/接收第3层数据包时与第2层上的路由器通信,因此,Nmap只能查看路由器的MAC地址,但不能查看目的地主机MAC地址.

(虽然在某些情况下技术上可以通过诸如NetBIOS,SNMP等协议来确定非本地主机的MAC地址,并且有用于此目的的NSE脚本,但Nmap通常不这样做.)