我可以使用nmap查找IP和Mac地址吗?


11

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

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

我已经在Linux中尝试过arp -a了,但是它似乎没有Windows那样快,或者似乎需要一些使用输入。

/ vfclists


nmap -sP 192.168.1.1/24
Iraklis 2010年

Answers:


6

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

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


5
+1我也使用-sP。但是请注意,要获得Mac地址,您必须位于同一局域网中(两者之间没有路由器)。
PiL 2010年

1
我已经使用-sP选项进行了测试,这正是我在寻找的东西,这要归功于Pier和Iraklis。它用于扫描通过DHCP或本地网络中的静态设备获取IP的项目。
vfclists 2010年

13

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

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

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

sudo nmap -PU 192.168.1.0/24 说明每个IP地址


5
根据nmap手册页,-sP现在称为-sn
Alastair McCormack,

8

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

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

结果是:

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
...

1
这会粘很多线。另一个答案更好:serverfault.com/a/669862/284568
Velkan '17

2
@Velkan其他答案缺少sudo,并且也只给我IP:MAC,此答案为您提供IP /主机名:MAC,一切都取决于您的需求。谢谢!
安东尼奥·萨科

感谢您明确表示它需要root特权。
mszmurlo

7

此命令扫描范围内的所有IP地址,并显示每个IP地址的MAC地址。它以一种可抓取的格式执行,或换句话说;在一行上显示IP和MAC地址。如果您要导出到Excel或在其上运行grep,就很方便。

nmap -n -sP 10.0.3.0/24 | awk '/Nmap scan report/{printf $5;printf " ";getline;getline;print $3;}'

对于主机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..

供将来参考,-oG -或者类似的东西应该更容易解析。
Duncan X Simpson

事实证明,至少-oG不会保留mac地址。WTF?
Duncan X Simpson

0

增加了安东尼奥·萨科的回应。我还想在输出中列出供应商。为此,您要在行尾打印第三个索引(MAC地址)。

sudo nmap -sn 10.10.10.0/24 | awk '/Nmap scan report for/{printf $5;}/MAC Address:/{print " => "substr($0, index($0,$3)) }' | sort

结果是:

10.10.10.24 => B0:5A:DA:EB:2A:C4 (Hewlett Packard)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.