Znajdź adres Raspberry PI w sieci lokalnej


Odpowiedzi:


90

Wszystkie adresy MAC urządzeń malinowych zaczęły się od B8: 27: EB .

Tak więc w systemach * nix można to zrobić, wykonując następującą komendę:

sudo nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'

gdzie 192.168.1.*będzie twoja maska ​​sieci lokalnej. Otrzymasz odpowiedź w rodzaju:

Nmap scan report for raspberrypi.localnetwork.lan (192.168.1.179)

192.168.1.179 to adres IP Raspberry Pi w twojej sieci.

Jeśli korzystasz z systemu Mac , możesz użyć Homebrew do zainstalowania nmap :

brew install nmap

W systemie Windows możesz użyć Wireshark i użyć następującego filtru wyświetlania:

eth.addr[0:3] == B8:27:EB

2
Lub z mniejszą nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
— ilością

2
Dzięki @ripat, to jest o wiele bardziej zwięzłe - zaktualizowane! Jeden mały szczegół, musisz uruchomić jako administrator, inaczej nmap nie wyświetli adresu MAC.
— J. Costa

3
Nie doceniłbyś znaczenia tej odpowiedzi, dopóki nie spróbujesz bezgłowo zlokalizować swojego raspberrypi w ustawieniu biurowym, w którym adresy IP są usuwane za pomocą DHCP. Pozdrowienia dla tego @ripat
— Voke Ransom Anighoro

1
Ta odpowiedź nie działała dla mnie, ponieważ nmap nie wyrzucał za mnie nazw hostów. Jednak zainspirowało mnie to do wyszukiwania otwartych portów ssh za pomocą nmap, co pozwoliło mi znaleźć pi: sudo nmap -p 22 --open -sV 192.168.0.0/24 na postie tego faceta .
— Ross Rogers,

nie wystarcza „sudo nmap -sP 192.168.1.0/24” (dla mnie to działało)?
— Marian Paździoch

48

Jeśli korzystasz z systemu MacOS lub Linux, spróbuj tego:

$ arp -na | grep -i b8:27:eb

W systemie Windows możesz użyć:

arp -a | findstr b8-27-eb

3
To rozwiązanie jest znacznie szybsze niż rozwiązanie nmap!
— ryanm

To rozwiązanie działało dla mnie, w przeciwieństwie do rozwiązania nmap, które dało tylko część listy.
— Wilbert

7
To pokaże tylko hosty, które dostały się do twoich tabel arp, więc czasami brakuje ci cichych. Przydałoby się najpierw wykonać skanowanie nmap.
— Joseph Sheedy

Może, ale dla mnie to nigdy nie zawiodło. Dodatkowo jest to łatwa pierwsza próba.
— amenthes

Dzięki za to. Zmodyfikowałem go nieco i używam arp -n | awk '/b8:27:eb/ {print $1}'teraz.
— 0x01

8

Używam mDNS / Bonjour, aby nadać mojemu Pi lokalną nazwę, taką jak pi.local. Nie muszę wiedzieć, że to adres IP i działa to na skróty, a kiedy trzeba osadzić link ...

Jak i dlaczego przypisać nazwę lokalną do swojego pi


Niesamowite! Kiedyś bawiłem się /etc/hostslokalnie, aby uzyskać tę funkcjonalność na pulpicie, jest to O wiele lepsze rozwiązanie! Dzięki bardzo za wskaźnik!
— 0x01

7

Jeśli chcesz do tego użyć aplikacji GUI, możesz użyć Yakalanarzędzia ( https://github.com/mozcelikors/yakala ) dla Debiana / Ubuntu. To narzędzie pomaga nie tylko wyszukiwać dostępne sieci typu B i typu C, ale także pomaga bezpośrednio połączyć SSH z siecią:

sudo add-apt-repository ppa:mozcelikors/yakala
sudo apt-get update
sudo apt-get install yakala

lub

git clone https://github.com/mozcelikors/yakala
cd yakala && sudo ./install.sh

https://raw.githubusercontent.com/mozcelikors/yakala/master/docs/img/peekx2.gif

Oświadczenie: Jestem twórcą Yakala. Wszelkie sugestie / błędy są traktowane bardzo poważnie.


1
Klasowe sieciowanie zostało porzucone w 1993 roku, co jest bardzo dawno temu.
— Wyścigi lekkości na orbicie

Co to jest sieć klasowa?
— Denis

6

Domyślnie nazwa maliny to raspberrypi. Możesz po prostu „pingować raspberrypi”, a odpowiedź echa ICMP podaje adres IP. To zadziałało dla mnie. Upewnij się, że serwer DHCP jest osiągalny, ponieważ karta sieciowa maliny domyślnie znajduje się w trybie klienta DHCP. W przeciwnym razie malina otrzyma adres APIPA.


4

W systemie Linux i MAC możesz także wpisać „arp-a” w terminalu i uzyskać listę podłączonych urządzeń, poszukaj urządzenia z B8, na przykład: 192.168.4.5 @ B8 ... raspberry pi IP.


3

Lub możesz uzyskać dostęp do routera za pomocą przeglądarki i znaleźć swoje urządzenie z Androidem - prawie każdy interfejs GUI routera ma usługę, w której możesz sprawdzić wszystkie urządzenia, które są aktualnie podłączone do twojej sieci.



3

Korzystam z bezpłatnej aplikacji Fing w moim smartfonie z Androidem. Skanuje sieć i pokazuje podłączone urządzenia według typu, w tym Raspberry Pi, a także skanuje dostępne porty. Przydatne, aby sprawdzić, czy SSH, sieć lub VNC są włączone i działają.


2

Skopiuj następujące elementy do terminala / konsoli / powłoki:

for i in $(jot - 1 254); do ping -t 1 192.168.1.$i && arp -a | cut -f 2,4 -d " " | tr [:lower:] [:upper:] | grep B8:27:EB; done

Proszę dostosować 192.168.1. do Twojej indywidualnej sieci.

Dane wyjściowe będą wyglądać mniej więcej tak:

(192.168.1.109) B8: 27: EE: DD: CC: A

192.168.1.109 to adres IP twojego Raspberry Pi… :)


2

Umieść to w pi.php na swoim serwerze internetowym:

<?php
$fp = fopen('pi', 'w');
fwrite($fp, $_REQUEST['ip'],1000);
fclose($fp);
?>

Konieczne może być utworzenie pliku pi na serwerze WWW z uprawnieniami do zapisu dla serwera WWW.

Położyć

curl http://yourwebserver/pi.php -d ip=`hostname -I`

w /etc/rc.local na twoim pi.

Uzyskaj adres IP swojej pi, przeglądając http: // yourwebserver / pi


2

W przypadku nowej instalacji NOOBS lub Raspbian domyślna nazwa hosta to „raspberrypi”, aw niektórych konfiguracjach sieciowych (tj. Jeśli mDNS jest używany i skonfigurowany), można użyć „raspberrypi.local”. Inną opcją jest uruchomienie arp -ai poszukiwanie raspberrypi

UWAGA: To nie zadziała dla każdej instancji.


Ta odpowiedź wydaje się mieszać kilka rzeczy: różne wersje IP, DNS i być może mDNS. To, czy .localmożna go użyć, zwykle nie zależy od IPv6, a także od obecności routera. Gdy dostępna jest obsługa mDNS, oznacza to, że pi-name.local rozwiązuje IPv6 lub nie. Niektóre domowe routery używają również .local jako lokalnej domeny DNS, ponownie jest to niezależne od IPv6 i zależy od modelu routera. Niektóre routery domowe używają różnych domen, na przykład pi-name.fritz.box.
— TheDiveO,

2

Mój router przypisuje nowo odkrytym systemom adres IP zaczynający się od 192.168.1.2. Pewnego dnia przejrzałem wszystkie systemy w moim domu i zarezerwowałem dla nich adresy.

W ten sposób, kiedy tworzę nowy system, istnieje szansa, że ​​jego adres IP to 192.169.1.18.

Kolejny sposób korzystania z konsoli szeregowej. Możesz użyć szeregowego programu terminalowego, aby zalogować się do swojego Raspberry Pi. Sugerowałbym użycie ustawienia 8N1 (8 bitów, brak bitu parzystości, 1 bit stopu) przy prędkości (szybkości transmisji) wynoszącej 115 200. Będziesz potrzebował złącza USB to serial (3V3).


1

Zakładam, że nie możesz połączyć się z tobą PI, w przeciwnym razie poznałbyś jego adres IP.

Jeśli przejdziesz na stronę routera (zwykle coś takiego jak 192.168.1.1 w przeglądarce), powinieneś mieć sekcję z już podłączonymi urządzeniami. Możesz spróbować podłączyć i odłączyć PI (a jedno urządzenie powinno pojawić się / zniknąć z listy)


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.