Ich muss ein Bash-Skript schreiben, in dem ich eine Datei erstellen muss, die die Details der IP-Adressen der Hosts enthält und deren Zuordnung zu entsprechenden MAC-Adressen.

Gibt es eine Möglichkeit, die MAC-Adresse eines (Remote-) Hosts herauszufinden, wenn die IP-Adresse des Hosts verfügbar ist?

Antwort

Wenn Sie nur die MAC-Adresse einer bestimmten IP-Adresse herausfinden möchten, können Sie den Befehl arp um es nachzuschlagen, nachdem Sie das System einmal gepingt haben.

Beispiel

$ ping skinner -c 1 PING skinner.bubba.net (192.168.1.3) 56(84) bytes of data. 64 bytes from skinner.bubba.net (192.168.1.3): icmp_seq=1 ttl=64 time=3.09 ms --- skinner.bubba.net ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 3.097/3.097/3.097/0.000 ms 

Schauen Sie jetzt in der ARP-Tabelle:

$ arp -a skinner.bubba.net (192.168.1.3) at 00:19:d1:e8:4c:95 [ether] on wlp3s0 

fing

Wenn Sie das gesamte LAN nach MAC-Adressen durchsuchen möchten, können Sie das Befehlszeilentool fing, um dies zu tun. Es wird normalerweise nicht installiert, daher müssen Sie es herunterladen und manuell installieren.

$ sudo fing 10.9.8.0/24 

    Fing-Beispiel

Verwenden von ip

Wenn Sie feststellen, dass die Befehle arp oder fing nicht verfügbar sind, können Sie dies tun Verwenden Sie stattdessen den Befehl ip neigh von iproute2, um die ARP-Tabelle Ihres Systems anzuzeigen:

$ ip neigh 192.168.1.61 dev eth0 lladdr b8:27:eb:87:74:11 REACHABLE 192.168.1.70 dev eth0 lladdr 30:b5:c2:3d:6c:37 STALE 192.168.1.95 dev eth0 lladdr f0:18:98:1d:26:e2 REACHABLE 192.168.1.2 dev eth0 lladdr 14:cc:20:d4:56:2a STALE 192.168.1.10 dev eth0 lladdr 00:22:15:91:c1:2d REACHABLE 

Referenzen

Kommentare

  • Ich weiß, dass dies eine alte Antwort ist, aber haben Sie einen Einblick, wie Fing implementiert wird? Ich versuche, mehr über diese Netzwerkebene und die Tools zu ihrer Überwachung zu erfahren.
  • @akaphenom Wenn Sie neue Fragen haben, wenden Sie sich bitte direkt an diese. Kommentare sind nicht ‚ t dafür gedacht.
  • aber ist ‚ t arp veraltet? Wie kann ich das mit ip machen?
  • @ math2001 – es war nicht ‚ vor 5 Jahren, fügte ich hinzu Ein Beispiel zeigt, wie die Verwendung von ip.
  • Die ip neigh funktioniert meistens, ohne dass zusätzliche Pakete installiert werden müssen. Daher denke ich, dass ‚ die beste Antwort ist.

Antwort

Sie können den Befehl arp verwenden:

arp -an 

Sie können diesen Befehl jedoch nur im LAN verwenden, wenn Sie dies tun Wenn Sie die MAC-Adresse eines Remote-Hosts herausfinden möchten, müssen Sie möglicherweise ein Tool verwenden, um das Paket wie tcpdump zu erfassen und das Ergebnis zu analysieren.

Kommentare

  • tcpdump(8) zeigt Ihnen nur die lokalen MACs an (dh den MAC des Routers der letzten Etappe). Die MAC-Layer-Header von Eingabepaketen werden vom Router entfernt und neue zum ausgehenden Paket hinzugefügt.

Antwort

Dies stammt aus meiner Frage und Antwort in askubuntu .

Sie können den Befehl

 sudo nmap -sP -PE -PA21,23,80,3389 192.168.1.* 

nmap: Netzwerkerkundungstool und Sicherheits- / Port-Scanner. Aus dem Handbuch:

-sP (Port-Scan überspringen). Diese Option weist Nmap an, nach der Hosterkennung keinen Port-Scan durchzuführen und nur die verfügbaren Hosts auszudrucken, die auf den Scan geantwortet haben. Dies wird häufig als „Ping-Scan“ bezeichnet. Sie können jedoch auch die Ausführung von Traceroute- und NSE-Hostskripten anfordern. Dies ist standardmäßig einen Schritt aufdringlicher als der Listenscan und kann häufig für die gleichen Zwecke verwendet werden. Es ermöglicht die leichte Aufklärung eines Zielnetzwerks, ohne viel Aufmerksamkeit zu erregen. Zu wissen, wie viele Hosts aktiv sind, ist für Angreifer wertvoller als die Liste, die durch Listenscan jeder einzelnen IP und jedes Hostnamens bereitgestellt wird.

-PE; -PP; -PM ( ICMP-Ping-Typen). Zusätzlich zu den zuvor beschriebenen ungewöhnlichen TCP-, UDP- und SCTP-Hosterkennungstypen kann Nmap die vom allgegenwärtigen Ping-Programm gesendeten Standardpakete senden. Nmap sendet ein ICMP-Paket vom Typ 8 (Echoanforderung) an die Ziel-IP-Adressen und erwartet eine Rückgabe vom Typ 0 (Echoantwort) von verfügbaren Hosts. Leider blockieren viele Hosts und Firewalls diese Pakete für Netzwerk-Explorer, anstatt als zu antworten erforderlich nach RFC 1122 [2]. Aus diesem Grund sind Nur-ICMP-Scans für unbekannte Ziele über das Internet selten zuverlässig genug. Für Systemadministratoren, die ein internes Netzwerk überwachen, kann dies jedoch ein praktischer und effizienter Ansatz sein. Verwenden Sie die Option -PE, um dieses Echoanforderungsverhalten zu aktivieren.

-A (Aggressive Scan-Optionen). Diese Option ermöglicht zusätzliche erweiterte und aggressive Optionen.

21,23,80,3389 Ports zum Durchsuchen

192.168.1.* IP-Bereich. durch deine ersetzen.

Kommentare

  • -sP ist für “ scanPing „, es ist auch -sn in Nie-Versionen von nmap, wie es scheint.

Antwort

arping

arping -I <interface> -c 1 <host> 

Der Befehl sollte die MAC-Adresse in der Antwort zurückgeben. So etwas wie

$ arping -I eth0 -c1 192.168.1.2 ARPING 192.168.1.2 from 192.168.1.5 eth0 Unicast reply from 192.168.1.2 [08:01:27:38:EF:32] 0.746ms Sent 1 probes (1 broadcast(s)) Received 1 response(s) 

arping wird vom Paket iputils-arping bereitgestellt auf Debian.

Kommentare

  • arping muss auch mitgeteilt werden, welche Schnittstelle mit dem verwendet werden soll -I Option.
  • Sie können arping -f verwenden, um nach der ersten Antwort zu beenden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.