【问题标题】:is it possible to get the MAC address for machine using nmap是否可以使用 nmap 获取机器的 MAC 地址
【发布时间】:2012-10-24 02:42:42
【问题描述】:

我有一个文本文件中的远程机器列表。我可以使用 nmap 知道他们的 MAC 地址吗?

【问题讨论】:

标签: nmap


【解决方案1】:

如果您使用 nmap,MAC 地址在您与目标位于同一网段时可用。如果您以 root 身份运行,较新版本的 nmap 只会向您显示 MAC 地址。

即:

sudo nmap -sP -n 192.168.0.0/24

【讨论】:

  • 只是为了澄清:您不需要使用任何特定选项。如果您以 root 身份运行 nmap(例如使用 sudo),它已经提供了 MAC 地址,如果可以的话(您需要在目标的同一子网中)。
  • 此尝试没有回答问题。 nmap -sP 不显示 MAC 地址。
  • 它在 windows 上不起作用.. 没有 mac 返回
  • 请注意,如果您正在扫描属于您自己计算机接口的地址,这不会显示任何mac地址,如果您不注意这是一个陷阱
【解决方案2】:

有些脚本可以为您提供所需的内容。如果节点运行 Samba 或 Windows,nbstat.nse 将显示 MAC 地址和供应商。

sudo nmap -sU -script=nbstat.nse -p137 --open 172.192.10.0/23 -oX 172.192.10.0.xml | grep MAC * | awk -F";" {'print $4'}

【讨论】:

  • 这个答案是上帝派来识别流氓 VPN 客户端的。谢谢!!!但您不需要 xml 输出、grep 或 awk。
【解决方案3】:

使用最新版本的 nmap 6.40,它会自动显示 MAC 地址。示例:

nmap 192.168.0.1-255

此命令将扫描您的网络从 192.168.0.1 到 255,并将显示您网络上的主机及其 MAC 地址。

如果您想显示单个客户端的 mac 地址,请使用此命令确保您是 root 用户或使用“sudo”

sudo nmap -Pn 192.168.0.1

此命令将显示主机 MAC 地址和打开的端口。

希望对您有所帮助。

【讨论】:

    【解决方案4】:

    使用 snmp-interfaces.nse nmap 脚本(用 lua 编写)获取远程机器的 MAC 地址,如下所示:

    nmap -sU -p 161 -T4 -d -v -n -Pn --script snmp-interfaces 80.234.33.182

    13:25 完成 NSE,经过 2.69 秒 80.234.33.182 的 Nmap 扫描报告 主机已启动,收到用户设置(0.078 秒延迟)。 扫描于 2014-08-22 13:25:29 Арабское время (зима) 3s 港口国服务原因 161/udp 打开 snmp udp 响应 | snmp接口: |伦理 | MAC 地址:00:50:60:03:81:c9(腾保电信 AS) |类型:ethernetCsmacd 速度:10 Mbps |状态:上 |流量统计:发送 1.27 Gb,接收 53.91 Mb |罗 |类型:软件环回速度:0 Kbps |状态:上 |_ 流量统计:发送 4.10 Kb,接收 4.10 Kb

    【讨论】:

    • 这对我有用,非常感谢。运行: - Mac OS 10.11 - 使用 brew 安装的 nmap 我能够远程找到 linux 机器的 mac 地址。
    • -sU is UDP -p snmp port --script snmp-interfaces 只有这个对我有用。
    【解决方案5】:

    仅标准扫描将返回 MAC。

    nmap -sS target
    

    【讨论】:

    • 仅当目标在同一个链接上时。
    • 同一个链接是什么意思?同一个子网?
    • 是的。链路、子网、局域网、网段、广播域等术语的含义相同。
    • @countermode 如果你这么说:)
    • 它在 windows 上不起作用.. 没有 mac 返回
    【解决方案6】:

    nmap 只有在以下情况下才能发现远程目标的 MAC 地址

    • 目标与运行 nmap 的机器位于同一链接上,或者
    • 目标通过 SNMP、NetBIOS 等泄露此信息。

    如果目标使用 EUI-64 标识符,则 IPv6 会出现另一种可能性,则可以从 IP 地址中推断出 MAC 地址。

    除了上述可能性之外,没有可靠的方法可以通过网络扫描技术获取远程目标的 MAC 地址。

    【讨论】:

      【解决方案7】:

      不使用 nmap...但这是另一种选择...

      arp -n|grep -i B0:D3:93|awk '{print $1}'
      

      【讨论】:

      • 哇,这么简单又这么有效
      【解决方案8】:

      是的,记得使用 root 帐户。

      =======================================
      
      qq@peliosis:~$ sudo nmap -sP -n xxx.xxx.xxx
      
      Starting Nmap 6.00 ( http://nmap.org ) at 2016-06-24 16:45 CST
      
      Nmap scan report for xxx.xxx.xxx
      
      Host is up (0.0014s latency).
      
      MAC Address: 00:13:D4:0F:F0:C1 (Asustek Computer)
      
      Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds
      

      【讨论】:

      • -sP 现在被称为 -sn(“无端口扫描”,即只做 ping 扫描)
      【解决方案9】:

      在当前版本的 nmap 中,您可以使用:

      sudo nmap -sn 192.168.0.*
      

      这将打印所有可用主机的 MAC 地址。当然提供您自己的网络、子网和主机 ID。

      更多解释可参见here

      【讨论】:

      • sudo 很重要。没有sudo,就不会得到MAC地址输出行。
      • 它在 windows 上不起作用.. 没有 mac 返回
      • 不适用于我的 Ubuntu 20 LTS - Nmap version 7.80
      【解决方案10】:

      我不够酷,无法对帖子发表评论。 所以我想我需要发一个新帖子。 不过以上推荐 “须藤 nmap -sn 192.168.0.0/24” 是获取 IP 上所有 MAC 的最佳最快方法 本地网络/vlan/子网 OP没有提到的是获取MAC地址的唯一方法 这样,您必须使用 sudo(或其他超级用户权限,即 Windows 管理员) 命令 nmap -sn 192.168.0.0/24 将发现您网络上的主机,但不会返回 MAC,因为您未处于 SU 操作模式。

      【讨论】:

        【解决方案11】:
        if $ ping -c 1 192.168.x.x 
        

        返回

        1 packets transmitted, 1 received, 0% packet loss, time ###ms
        

        那么您可能会通过 arping 返回 MAC 地址,但 ARP 仅适用于您的本地网络,而不适用于整个互联网。

        $ arping -c 1 192.168.x.x
        
        ARPING 192.168.x.x from 192.168.x.x wlan0
        Unicast reply from 192.168.x.x [AA:BB:CC:##:##:##]  192.772ms
        Sent 1 probes (1 broadcast(s))
        Received 1 response(s)
        

        最后,您可以使用去掉冒号的 AA:BB:CC 来根据供应商 ID 识别设备。

        $ grep -i '709E29' /usr/local/share/nmap/nmap-mac-prefixes 
        709E29 Sony Interactive Entertainment
        

        【讨论】:

          猜你喜欢
          • 2011-03-24
          • 1970-01-01
          • 1970-01-01
          • 2015-02-14
          • 2023-02-15
          • 1970-01-01
          • 2013-04-29
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多