我有一个文本文件中的远程机器列表。我可以使用nmap知道他们的MAC地址吗?
如果您使用的是nmap,则只有当您与目标位于同一网段时,才能使用MAC地址。如果您以root用户身份运行,则较新版本的nmap将仅向您显示MAC地址。
即:
sudo nmap -sP -n 192.168.0.0/24
我不够酷,无法对帖子发表评论。所以我想我需要发一个新帖子。但是上面提到的“sudo nmap -sn 192.168.0.0/24”是获得本地网络/ vlan /子网上IP的所有MAC的最快捷的方法OP没有提到的,是获得的唯一方法这样的MAC地址,你必须使用sudo(或其他超级用户权限,即windows admin)命令nmap -sn 192.168.0.0/24将发现你网络上的主机,但不会返回MAC,因为你不是SU模式的操作。
使用最新版本的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地址和开放端口。
希望有所帮助。
使用snmp-interfaces.nse nmap脚本(用lua编写)来获取远程机器的MAC地址,如下所示:
nmap -sU -p 161 -T4 -d -v -n -Pn --script snmp-interfaces 80.234.33.182
Completed NSE at 13:25, 2.69s elapsed Nmap scan report for 80.234.33.182 Host is up, received user-set (0.078s latency). Scanned at 2014-08-22 13:25:29 Арабское время (зима) for 3s PORT STATE SERVICE REASON 161/udp open snmp udp-response | snmp-interfaces: | eth | MAC address: 00:50:60:03:81:c9 (Tandberg Telecom AS) | Type: ethernetCsmacd Speed: 10 Mbps | Status: up | Traffic stats: 1.27 Gb sent, 53.91 Mb received | lo | Type: softwareLoopback Speed: 0 Kbps | Status: up |_ Traffic stats: 4.10 Kb sent, 4.10 Kb received
有些脚本可以满足您的需求。如果节点正在运行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'}
是的,请记住使用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
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
只是标准扫描将返回MAC。
nmap -sS target
nmap只有在发现远程目标的MAC地址时才能发现
如果目标使用EUI-64标识符,则IPv6具有另一种可能性,则可以从IP地址推断出MAC地址。
除了上述可能性之外,没有可靠的方法来利用网络扫描技术获得远程目标的MAC地址。
不使用nmap ...但这是另一种选择......
arp -n|grep -i B0:D3:93|awk '{print $1}'