Мені потрібно знайти ІР-адресу Raspberry PI в локальній мережі, не підключаючи Raspberry до монітора. Як це зробити в системах Linux або Mac OS?
Мені потрібно знайти ІР-адресу Raspberry PI в локальній мережі, не підключаючи Raspberry до монітора. Як це зробити в системах Linux або Mac OS?
Відповіді:
MAC-адреси всіх малинових пристроїв розпочалися з B8: 27: EB .
Отже, у * nix системах це можна зробити, виконавши таку команду:
sudo nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
де 192.168.1.*
буде ваша маска локальної мережі. Ви отримаєте відповідь на кшталт:
Nmap scan report for raspberrypi.localnetwork.lan (192.168.1.179)
192.168.1.179 - це IP-адреса Raspberry Pi у вашій мережі.
Якщо ви перебуваєте в системі Mac, ви можете використовувати Homebrew для встановлення nmap :
brew install nmap
У Windows ви можете використовувати Wireshark та використовувати наступний фільтр дисплея:
eth.addr[0:3] == B8:27:EB
nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
sudo nmap -p 22 --open -sV 192.168.0.0/24
за посадою цього хлопця .
Якщо ви використовуєте MacOS або Linux, спробуйте це:
$ arp -na | grep -i b8:27:eb
У Windows можна використовувати:
arp -a | findstr b8-27-eb
arp -n | awk '/b8:27:eb/ {print $1}'
зараз використовую .
Я використовую mDNS / Bonjour, щоб дати мій Pi локальну назву, як pi.local. Мені не потрібно знати, що це IP-адреса, і це працює для ярликів, і коли вам потрібно вставити посилання ...
/etc/hosts
локально, щоб отримати цю функціональність на робочому столі, це набагато краще рішення! Дякую за покажчик!
Якщо ви хочете використовувати для нього GUI-додаток, ви можете використовувати Yakala
інструмент ( https://github.com/mozcelikors/yakala ) для Debian / Ubuntu. Цей інструмент допомагає вам не тільки шукати доступні мережі типу B і типу C, а й допомагає безпосередньо SSH в мережі:
sudo add-apt-repository ppa:mozcelikors/yakala
sudo apt-get update
sudo apt-get install yakala
або
git clone https://github.com/mozcelikors/yakala
cd yakala && sudo ./install.sh
Відмова: Я творець Якала. Будь-які пропозиції / помилки сприймаються дуже серйозно.
За замовчуванням назва малини - малинова. Ви можете просто "ping malberrypi", і відповідь ICMP відлуння дає вам IP-адресу. Це працювало для мене. Переконайтеся, що хоч сервер DHCP доступний, оскільки NIC малини за замовчуванням у клієнтському режимі DHCP. Інакше малина отримує адресу APIPA.
У Linux і MAC ви також можете ввести "arp - a" в терміналі, і ви можете отримати список підключених пристроїв, шукайте той, у якому є B8, наприклад: 192.168.4.5 @ B8 ... буде малиновий пі IP.
Якщо ви запускаєте MacOS, використовуйте PiFinder , це програма, яка повідомить вам IP Raspberry Pi у вашій мережі.
Я використовую безкоштовний додаток Fing у своєму смартфоні Android. Він сканує мережу та показує підключені пристрої за типом, включаючи Raspberry Pi, а також сканує доступні порти. Зручно перевірити, чи включені SSH, веб або VNC.
Скопіюйте наступне у свій термінал / консоль / оболонку:
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
Будь ласка, адаптуйте 192.168.1. до вашої індивідуальної мережі.
Вихід буде виглядати приблизно так:
(192.168.1.109) B8: 27: EE: DD: CC: A
192.168.1.109 буде IP-адресою вашого Raspberry Pi… :)
Помістіть це у pi.php на своєму веб-сервері:
<?php
$fp = fopen('pi', 'w');
fwrite($fp, $_REQUEST['ip'],1000);
fclose($fp);
?>
Можливо, вам доведеться створити файл pi на своєму веб-сервері з дозволом на запис для вашого веб-сервера.
Покладіть
curl http://yourwebserver/pi.php -d ip=`hostname -I`
в /etc/rc.local на вашому пі.
Отримайте IP вашого pi, переглянувши http: // yourwebserver / pi
Під час використання нової установки NOOBS або Raspbian, ім'я хоста за замовчуванням - "малинова", а в деяких мережевих конфігураціях (тобто, якщо mDNS використовується та налаштовано), ви можете використовувати "raspberrypi.local". Ще один варіант - бігти arp -a
і шукати малинові
ПРИМІТКА. Це працюватиме не для кожного примірника.
.local
можна використовувати, зазвичай не залежить від IPv6, а також не від наявності маршрутизатора. Якщо доступна підтримка mDNS, тоді pi-name.local вирішує, IPv6 чи ні. Деякі домашні маршрутизатори також використовують .local як свій локальний DNS-домен, знову ж таки це не залежить від IPv6 та залежить від моделі маршрутизатора. Деякі домашні маршрутизатори використовують різні домени, наприклад pi-name.fritz.box.
Мій маршрутизатор призначає нововиявленим системам ip-адресу, починаючи з 192.168.1.2, послідовно. Я пройшов через кожну систему свого будинку один день і зарезервував для них адреси.
Таким чином, коли я створюю нову систему, велика ймовірність, що її ip-адреса буде 192.169.1.18.
Ще один спосіб використання послідовної консолі. Ви можете використовувати серійну програму терміналу для того, щоб увійти до вашого малинового пі. Я б запропонував використовувати налаштування 8N1 (8-біт, без біття парності, 1 стоп-біт) зі швидкістю (швидкість передачі даних) в 115200. Вам знадобиться роз'єм USB до послідовного (3V3).
Я припускаю, що ви не можете підключитися до вашого PI, інакше ви знаєте його IP.
Якщо ви переходите на сторінку свого маршрутизатора (зазвичай це щось на зразок 192.168.1.1 у вашому браузері), там ви повинні мати розділ з уже підключеними пристроями. Ви можете спробувати підключити і вимкнути мережу PI (і один пристрій повинен з’явитися / відключитися зі списку)
"Фінг" або "Чистий аналізатор" на Android. Показує всю вашу мережу.