web-dev-qa-db-ja.com

nmapを使用してマシンのMACアドレスを取得することは可能ですか

テキストファイルにリモートマシンのリストがあります。 nmapを使用してMACアドレスを知ることはできますか?

33
Jury A

Nmapを使用している場合、MACアドレスはonlyがターゲットと同じネットワークセグメント上にある場合に利用可能です。 nmapの新しいバージョンでは、rootとして実行している場合にのみMACアドレスが表示されます。

すなわち:

須藤nmap -sP -n 192.168.0.0/24

52
Karimi

つかいます snmp-interfaces.nse nmapスクリプト(luaで記述)は、次のようなリモートマシンのMACアドレスを取得します。

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

[。 ] 2014-08-22 13:25:29にスキャンされた3秒の[Арабскоевремя(зима)
 PORT STATE SERVICE REASON 
 161/udp open snmp udp-response 
 | snmp-interfaces:
 | eth 
 | MACアドレス:00:50:60:03:81:c9(Tandberg Telecom AS)
 |タイプ:ethernetCsmacd速度:10 Mbps 
 |ステータス:up 
 |トラフィックの統計:1.27 Gbが送信され、53.91 Mbが受信されました
 | lo 
 |タイプ:softwareLoopback Speed:0 Kbps 
 |ステータス:up 
 | _トラフィック統計:4.10 Kb送信済み、4.10 Kb受信済み
16
user2328360

Nmapの現在のリリースでは、次を使用できます。

Sudo nmap -sn 192.168.0.*

これにより、使用可能なすべてのホストのMACアドレスが出力されます。もちろん、独自のネットワーク、サブネット、およびホストIDを提供します。

詳細な説明は here にあります。

7
piscator

一部のスクリプトは、探しているものを提供します。ノードが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'}
3
user3126740

はい、ルートアカウントの使用を忘れないでください。

=======================================

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
2
g9164314
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)

最後に、ベンダーIDからデバイスを識別するために、コロンを削除したAA:BB:CCを使用できます。

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

nmapは、次の場合にのみリモートターゲットのMACアドレスを検出できます。

  • ターゲットがnmapが実行されているマシンと同じリンク上にある、または
  • ターゲットは、SNMP、NetBIOSなどを介してこの情報を漏洩します。

ターゲットがEUI-64識別子を使用している場合、IPv6には別の可能性があり、IPアドレスからMACアドレスを推測できます。

上記の可能性とは別に、ネットワークスキャン技術でリモートターゲットのMACアドレスを取得するno信頼できる方法があります。

1
countermode

Nmapを使用していません...しかしこれは代替です...

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

投稿にコメントできるほどクールではありません。だから新しい投稿をする必要があると思う。ただし、上記の「Sudo nmap -sn 192.168.0.0/24」の推奨は、ローカルネットワーク/ vlan/subnet上のIPのすべてのMACを取得するための最も迅速な方法です。OPが言及していないのは、取得する唯一の方法ですこの方法でMACアドレスを取得するには、Sudo(または他のスーパーユーザー権限、つまりWindows管理者)を使用する必要があります。コマンドnmap -sn 192.168.0.0/24はネットワーク上のホストを検出しますが、SUモードではないためMACを返しません操作の。

1
Reese Zee

標準スキャンでMACが返されます。

nmap -sS target
1
iNoob

Nmap 6.40の最新バージョンでは、MACアドレスが自動的に表示されます。例:

nmap 192.168.0.1-255

このコマンドは、ネットワークを192.168.0.1から255までスキャンし、ネットワーク上のMACアドレスを使用してホストを表示します。

単一のクライアントのMACアドレスを表示する場合は、このコマンドを使用してルートにいることを確認するか、「Sudo」を使用します

Sudo nmap -Pn 192.168.0.1

このコマンドは、ホストMACアドレスと開いているポートを表示します。

それが役に立てば幸いです。

0
Osama Al-Banna