我可以使用 nmap 来发现 IP 和 mac 地址吗?

vfc*_*sts 11 mac ip mac-address ip-address nmap

当我需要在 Windows 系统上通过 mac 地址定位设备的 IP 时,我通常使用 Advanced IP Scanner(来自 radmin.com)来扫描网络,然后我使用 arp -a 列出 mac 地址。

是否可以使用 nmap 在 Linux 和 Windows 中执行相同的功能?nmap 可以扫描并生成 IP 和 MAC 地址吗?

我曾在 Linux 中尝试过 arp -a,但它似乎不像在 Windows 中那么快,或者似乎需要一些使用输入。

/vfclists

AAl*_*lvz 13

使用 nmap 可以找到很多信息..

nmap -A -v -v 192.168.1.0/24 提供了很多信息,在某些情况下甚至是 SO

nmap -sn 192.168.1.0/24给出 MAC 和 IP 地址。也很有用

sudo nmap -PU 192.168.1.0/24 解释每个 IP 地址

  • 根据 nmap 手册页,`-sP` 现在被称为 `-sn` (5认同)

Ant*_*aco 8

以下带有权限的nmap命令(或使用sudo):

sudo nmap -sP 172.31.201.0/24 | awk '/Nmap scan report for/{printf $5;}/MAC Address:/{print " => "$3;}' | sort
Run Code Online (Sandbox Code Playgroud)

结果是:

172.31.201.80 => 00:50:56:AF:56:FB
172.31.201.97 => 00:26:73:78:51:42
server1.company.internal.local => 3C:D9:2B:70:BC:99
...
Run Code Online (Sandbox Code Playgroud)

  • @Velkan 另一个答案是缺少 sudo 并且只给我 IP:MAC,这个答案给你 IP/主机名:MAC,一切都取决于你的需要。谢谢! (2认同)

Jas*_*per 7

此命令扫描范围内的所有 IP 地址并显示每个 IP 地址的 MAC 地址。它以 grepable 格式执行此操作,或者换句话说;在一行上显示 IP 和 MAC 地址。如果您想导出到 Excel 或在其上运行 grep,那非常方便。

nmap -n -sP 10.0.3.0/24 | awk '/Nmap scan report/{printf $5;printf " ";getline;getline;print $3;}'
Run Code Online (Sandbox Code Playgroud)

它似乎也适用于尚未出现在主机 ARP 表中的 IP/MAC。这是好事。

该命令导致:

10.0.3.100 B8:27:EB:8E:C5:51
10.0.3.101 00:26:B6:E1:4B:EB
10.0.3.112 00:01:29:02:55:25
etc..
Run Code Online (Sandbox Code Playgroud)


小智 6

您可以使用以 P 标志开头的 Ping 扫描。但是,我个人使用 -sL 来完成这项工作。

http://nmap.org/book/man-host-discovery.html

  • +1 我也使用 -sP。但是请注意,为了能够获得 mac 地址,您必须在同一个局域网上(中间没有路由器)。 (5认同)