Muszę napisać skrypt bash, w którym muszę utworzyć plik, który zawiera szczegóły adresów IP hostów i ich mapowanie z odpowiednimi adresami MAC.

Czy jest możliwy sposób, w jaki mogę znaleźć adres MAC dowolnego (zdalnego) hosta, gdy adres IP hosta jest dostępny?

Odpowiedź

Jeśli chcesz tylko sprawdzić adres MAC danego adresu IP, możesz użyć polecenia arp aby to sprawdzić, po 1 raz pingowaniu systemu.

Przykład

$ 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 

Teraz spójrz w Tabela ARP:

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

fing

Jeśli chcesz przeszukać całą sieć LAN w poszukiwaniu adresów MAC, możesz użyć narzędzia wiersza poleceń fing, aby to zrobić. Zwykle nie jest zainstalowany, więc musisz go pobrać i zainstalować ręcznie.

$ sudo fing 10.9.8.0/24 

    przykład ręki

Korzystanie z ip

Jeśli okaże się, że nie masz dostępnych poleceń arp lub fing, możesz użyj polecenia iproute2 „s ip neigh, aby zamiast tego zobaczyć tabelę ARP swojego systemu:

$ 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 

Referencje

Komentarze

  • Wiem, że to stara odpowiedź, ale czy masz jakiś wgląd w sposób implementacji Fing? Próbuję dowiedzieć się więcej o tej warstwie sieci i narzędziach do jej monitorowania.
  • @akaphenom Jeśli masz nowe pytania, proszę je wprost, komentarze nie są ' t przeznaczone do tego.
  • ale czy ' t arp jest przestarzałe? Jak mogę to zrobić z ip?
  • @ math2001 – to nie było ' t 5 lat temu, dodałem przykład pokazujący, jak użycie ip.
  • ip neigh działa w większości przypadków bez konieczności instalowania dodatkowych pakietów. Dlatego uważam, że ' to najlepsza odpowiedź.

Odpowiedź

Możesz użyć polecenia arp:

arp -an 

Ale możesz używać tego polecenia tylko w sieci LAN, jeśli chcesz znaleźć adres MAC dowolnego zdalnego hosta, być może musisz użyć jakiegoś narzędzia do przechwycenia pakietu, takiego jak tcpdump i przeanalizowania wyniku.

Komentarze

  • tcpdump(8) pokaże tylko lokalne adresy MAC (tj. MAC ostatniego routera). Nagłówki warstwy MAC pakietów wejściowych są usuwane przez router, a nowe dodawane do pakietu wychodzącego.

Odpowiedź

To z mojego pytania i odpowiedzi w askubuntu .

Możesz użyć polecenia

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

nmap: Narzędzie do eksploracji sieci i skaner zabezpieczeń / portów. Z instrukcji:

-sP (Pomiń skanowanie portów). Ta opcja mówi Nmapowi, aby nie skanował portów po wykryciu hosta i drukował tylko dostępne hosty, które odpowiedziały na skanowanie. Jest to często nazywane „skanowaniem pingów”, ale można również zażądać uruchomienia skryptów traceroute i hostów NSE. Jest to domyślnie o jeden krok bardziej uciążliwe niż skanowanie listy i często może być używane do tych samych celów. Pozwala na lekki rekonesans sieci docelowej bez zwracania większej uwagi. Wiedza o liczbie aktywnych hostów jest cenniejsza dla atakujących niż lista dostarczona przez skanowanie listy każdego adresu IP i nazwy hosta.

-PE; -PP; -PM ( Typy pingów ICMP). Oprócz nietypowych typów wykrywania hostów TCP, UDP i SCTP omówionych wcześniej, Nmap może wysyłać standardowe pakiety wysyłane przez wszechobecny program ping. Nmap wysyła pakiet ICMP typu 8 (żądanie echa) do docelowych adresów IP, oczekując w zamian od dostępnych hostów typu 0 (odpowiedź echa). Niestety dla eksploratorów sieci wiele hostów i zapór ogniowych blokuje teraz te pakiety, zamiast odpowiadać wymagane przez RFC 1122 [2]. Z tego powodu skanowanie tylko ICMP rzadko jest wystarczająco wiarygodne w przypadku nieznanych celów w Internecie. Jednak dla administratorów systemów monitorujących sieć wewnętrzną mogą one być praktycznym i wydajnym podejściem. Użyj opcji -PE, aby włączyć to zachowanie żądania echa.

-A (Agresywne opcje skanowania). Ta opcja włącza dodatkowe zaawansowane i agresywne opcje.

21,23,80,3389 Porty do przeszukiwania

192.168.1.* Zakres adresów IP. wymień na swoje.

Komentarze

  • -sP to " scanPing ", wydaje się, że jest to również -sn w nigdy wersjach nmap.

Odpowiedź

arping

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

Polecenie powinno zwrócić adres MAC w odpowiedzi. Coś w rodzaju

$ 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 jest dostarczane przez pakiet iputils-arping w Debianie.

Komentarze

  • arping również musi być poinformowany, którego interfejsu użyć, z -I.
  • Możesz użyć arping -f, aby wyjść po pierwszej odpowiedzi.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *