Как найти малину в сети

ⓘ Cet article peut avoir été partiellement ou totalement traduit à l’aide d’outils automatiques. Nous nous excusons des erreurs que cela pourrait engendrer.

В учебниках часто просят подключиться к IP-адресу Raspberry Pi, но как найти этот IP-адрес?

Давайте посмотрим, как найти локальный IP-адрес вашего Raspberry Pi 3 разными способами, с графическим интерфейсом или без него.

Обратите внимание: когда в учебнике рассказывается об IP-адресе Raspberry Pi, обычно речь идет об IP-адресе внутри вашей локальной сети. Общедоступный IP-адрес, он используется для вашей идентификации во всем Интернете и фактически направлен на ваш модем, а не на вашу личную машину. Вы можете легко найти его на таких интернет-сайтах, как myip.com.

Необходимое оборудование

Чтобы следовать этому руководству, вам потребуются следующие материалы:

  • Raspberry Pi, подключенный к вашей коробке (в Ethernet или в Wi-Fi, не важно).
  • Его источник питания
  • SD-карта с установленной вашей ОС
  • Экран, на котором хотя бы одна мышь подключена к Pi, компьютеру или внешнему телефону.

В остальном мы предполагаем, что ваш Raspberry Pi включен и подключен к вашему компьютеру.

Как найти IP-адрес Raspberry Pi под Raspbian, подключенного к экрану.

Первый случай, который мы собираемся обсудить, — ваш Raspberry Pi работает на Raspbian, имеет дисплей и мышь.

Это простейший случай, вам просто нужно навести указатель мыши на значок сети в правом верхнем углу строки меню Raspbian, и через несколько секунд появится всплывающая подсказка с вашим IP адрес !

Рабочий стол Raspbian с всплывающим IP-адресом
Ваш IP-адрес является частью формата X.X.X.X, обычно вы можете удалить / 24, что означает, что первые 24 бита (первые три X) являются общими для всех машин в сети.

Имейте в виду, что вы найдете относительно эквивалентные методы для большинства других операционных систем, совместимых с Raspberry Pi. Таким образом, вы обычно можете найти IP-адрес вашего Raspberry в той части системы, которая предназначена для сетевого подключения.

Для информации: если у вас нет рабочего стола и есть только экран с командной строкой, вы можете ввести следующую команду в терминале вашего Raspberry Pi, чтобы узнать его IP-адрес:

hostname -I

Как узнать IP через интерфейс администратора модема

Если ваш Raspberry Pi не подключен к какому-либо дисплею, вы можете найти его IP-адрес в интерфейсе администрирования вашего модема.

Чтобы получить к нему доступ, откройте браузер и перейдите по адресу, указанному в документации производителя. Некоторые провайдеры доступа пишут это прямо на этикетке, приклеенной к коробке.

Но прежде чем вы потрудитесь просмотреть свои документы, попробуйте следующие адреса: http://192.168.0.1, http://192.168.0.254, http://192.168.1.1 и http://192.168.1.254.

Скорее всего, один из них соответствует вашему интерфейсу администратора.

Затем вам нужно будет подключиться (и в этом нет никакого волшебства, вам нужно будет пойти и прочитать этикетку на коробке), чтобы получить доступ к интерфейсу администратора.

После подключения вы, скорее всего, найдете страницу в панели администрирования, на которой можно увидеть все оборудование, подключенное к вашему модему.

Оранжевый интерфейс администрирования.
У Orange, например, это выглядит так.

Этот метод прост с технической точки зрения, но имеет два больших недостатка. Во-первых, вам придется заглядывать в свои бумаги или копаться в кабелях, чтобы найти идентификаторы. Во-вторых, на некоторых модемах функционал работает настолько плохо, что не отображается половина периферии.

Если у вас нет мотивации просматривать свои документы или ваш модем не отображает Raspberry Pi, в этом случае я рекомендую вместо этого метод ниже.

Найдите IP-адрес своего Raspberry Pi с другого компьютера в той же сети.

Если у вашего Raspberry Pi нет дисплея, вы можете найти его адрес с другого компьютера, подключенного к тому же устройству.

Для этого мы собираемся использовать инструмент под названием Nmap, который позволяет выполнять множество действий, связанных с обнаружением машин и портов в сети.

Установите Nmap в Linux

Преимущество Nmap в том, что его можно установить в Linux, Windows, Mac OS и даже Android с приложением «NetworkMapper».

Установить Nmap в Linux нет ничего проще, скорее всего, он есть в репозиториях вашего дистрибутива. Поэтому используйте свой менеджер репозитория для установки Nmap. Таким образом, для всех баз данных Debian (Debian, Ubuntu, Raspbian и т. Д.) Это дает:

sudo apt install nmap -y

Установите Nmap в Windows и Mac OS

Установить Nmap в Windows или Mac не намного сложнее. Все, что вам нужно сделать, это зайти на официальный сайт Nmap в раздел «Скачать» и следовать инструкциям для вашей версии системы.

Интерфейс Zenmap
В Windows и Mac OS используйте Zenmap, графический интерфейс Nmap.

Найдите IP-адрес вашего Raspberry Pi с помощью Nmap

Теперь, когда Nmap установлен, все, что вам нужно сделать, это просканировать сеть, чтобы найти свой Raspberry Pi.

Но перед этим сначала выключите Raspberry Pi и подождите 30 секунд. Вскоре вы поймете, почему.

Вы ждали 30 секунд? Хорошо, теперь давайте просканируем сеть с помощью следующей команды:

nmap -sP 192.168.0.1/24

Для Linux введите его прямо в терминал, для Windows и Mac OS запустите графический интерфейс Nmap под названием Zenmap и введите команду в поле «Команда».

Обратите внимание: в зависимости от вашего поставщика услуг вам может потребоваться 192.168.1.1/24 на месте.

Эта команда фактически попросит Nmap отправить пинг всем машинам, принадлежащим сети. 192.168.0.*.

Затем вы получите ответ с IP-адресами всех машин в вашей сети (а иногда и с их именами хостов).

результаты сканирования nmap
Отображаются IP-адреса машин в сети, иногда с именем хоста.

Это хорошо, но как мне теперь найти Raspberry Pi? Все очень просто. Поскольку мы отключили Raspberry Pi перед сканированием сети, его IP-адрес не отображается в списке.

Снова включите Raspberry Pi, подождите, пока он подключится к сети, и повторите команду. Сравните два списка адресов, IP, которого не было в первом списке, — это ваш Raspberry Pi!

Результат команды nmap
На мой взгляд, у моего Raspberry Pi IP-адрес 192.168.0.14!

Учтите все-таки, может появиться сразу несколько IP, потому что один IP не ответил на первую команду, либо другой устройство тем временем подключилось к сети.

В этом случае вам просто нужно попробовать разные IP-адреса, обычно их немного. Например, попытавшись подключиться к нему по SSH, если вы его активировали.

Иногда вам даже повезет, и имя хоста (которое часто содержит raspberry) будет отмечен на IP-адресе Pi!

Вы знаете IP-адрес своего Raspberry Pi, все, что вам нужно сделать, это подключиться к нему!

Вопрос

Мне нужно найти IP-адрес Raspberry PI в локальной сети, не подключая Raspberry к монитору. Как мне это сделать в системах Linux или Mac OS?

Решение / Ответ

J. Costa

24-го февраля 2014 в 1:29

2014-02-24T13:29:43+00:00

#40044978

Все малиновые устройства MAC-адреса начинаются с B8: 27: EB .

Таким образом, в системах * nix это можно выполнить, выполнив следующую команду:

где 192.168.1.*будет ваша маска локальной сети. Вы получите ответ, как:

192.168.1.179 – это IP-адрес Raspberry Pi в вашей сети.

Если вы используете систему Mac , вы можете использовать Homebrew для установки nmap :

В Windows вы можете использовать Wireshark и использовать следующий фильтр отображения:

 mrded

Ответ на вопрос

19-го августа 2015 в 8:45

2015-08-19T08:45:27+00:00

#40044985

Если вы используете MacOS или Linux, попробуйте этот:

На окнах вы можете использовать:

 dfowler7437

Ответ на вопрос

27-го февраля 2014 в 9:22

2014-02-27T21:22:59+00:00

#40044981

Я использую mDNS / Bonjour, чтобы дать моему Пи местное имя, такое как pi.local. Мне не нужно знать, что это IP-адрес, и это работает для ярлыков и когда вам нужно встраивать ссылку…

Как и почему назначить локальное имя вашему Пи

 mozcelikors

Ответ на вопрос

18-го февраля 2018 в 11:33

2018-02-18T11:33:25+00:00

#40044989

Если вы хотите использовать приложение с графическим интерфейсом для него, вы можете использовать инструмент `Yakala (https://github.com/mozcelikors/yakala) для Debian / Ubuntu. Этот инструмент помогает вам не только искать доступные сети типа B и типа C, но также помогает вам напрямую подключаться к сети SSH:

или

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

Отказ от ответственности: Я создатель Якалы. Любые предложения / ошибки воспринимаются очень серьезно.

 jan

Ответ на вопрос

24-го июля 2014 в 6:48

2014-07-24T18:48:26+00:00

#40044982

По умолчанию малина называется малиновый. Вы можете просто «пинговать малиновый», и эхо-ответ ICMP дает вам IP-адрес. Это сработало для меня. Убедитесь, что сервер DHCP доступен, так как NIC малины по умолчанию находится в режиме клиента DHCP. В противном случае малина получает адрес APIPA.

 FreshTendrils

Ответ на вопрос

7-го мая 2015 в 1:59

2015-05-07T13:59:22+00:00

#40044984

В linux и MAC вы также можете ввести «arp – a» в терминале, и вы можете получить список подключенных устройств, найти тот, в котором есть B8, например: 192.168.4.5 @ B8… будет малиновый пи IP .

 FreshTendrils

Ответ на вопрос

7-го мая 2015 в 1:46

2015-05-07T13:46:06+00:00

#40044983

Если вы запускаете MacOS, используйте PiFinder, это приложение сообщит вам IP-адрес Raspberry Pi в вашей сети.

 FLBKernel

Ответ на вопрос

9-го января 2018 в 10:45

2018-01-09T10:45:24+00:00

#40044988

Или вы можете получить доступ к своему маршрутизатору через браузер и найти свое устройство Android – почти у каждого графического интерфейса маршрутизатора есть служба, где вы можете проверить все устройства, которые в данный момент подключены к вашей сети.

 Tuxpilgrim

Ответ на вопрос

13-го июля 2018 в 4:22

2018-07-13T16:22:38+00:00

#40044990

Я использую бесплатное приложение [Fing][1] в своем Android-смартфоне. Он сканирует сеть и показывает подключенные устройства по типу, включая Raspberry Pi, а также сканирует доступные порты. Удобно видеть, включены ли SSH, web или VNC и работают ли они.

[1]: https://play.google.com/store/apps/details?id = com.overvook.android.fing & hl = pt_BR

 Wolf

Ответ на вопрос

27-го февраля 2014 в 3:32

2014-02-27T15:32:51+00:00

#40044980

Скопируйте следующее в свой терминал / консоль / оболочку:

Пожалуйста, адаптируйтесь 192.168.1. к вашей отдельной сети.

Выход будет выглядеть примерно так:

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

192.168.1.109 будет IP вашего Raspberry Pi … 🙂

 linuxgnuru

Ответ на вопрос

16-го августа 2016 в 6:11

2016-08-16T18:11:21+00:00

#40044986

При использовании новой установки NOOBS или Raspbian имя хоста по умолчанию – «raspberrypi» и в некоторых конфигурациях сети (т.е. если mDNS используется и настроен), вы можете использовать «raspberrypi.local». Другой вариант – запустить arp -a и искать малину

ПРИМЕЧАНИЕ: это не будет работать для каждого экземпляра.

 darsie

Ответ на вопрос

29-го октября 2017 в 2:16

2017-10-29T14:16:24+00:00

#40044987

Поместите это в pi.php на вашем веб-сервере:

Возможно, вам придется создать файл pi на вашем веб-сервере с разрешениями на запись для вашего веб-сервера.

Положи

в /etc/rc.local на вашем пи.

Получите IP вашего пи, просмотрев http://yourwebserver/pi

 NomadMaker

Ответ на вопрос

13-го июля 2018 в 5:27

2018-07-13T17:27:29+00:00

#40044991

Мой маршрутизатор назначает вновь обнаруженным системам ip-адрес, начиная с 192.168.1.2, последовательно. Однажды я прошел через все системы в своем доме и зарезервировал для них адреса.

Таким образом, когда я создаю новую систему, есть вероятность, что ее IP-адрес будет 192.169.1.18.

Еще один способ использовать последовательную консоль. Вы можете использовать программу последовательного терминала, чтобы войти в свой малиновый пи. Я бы предложил использовать настройку 8N1 (8 бит, бит без четности, 1 стоп-бит) со скоростью (частота передачи) 115 200. Вам понадобится разъем USB-последовательный (3V3).

Andy Anderson

Ответ на вопрос

13-го июля 2018 в 5:49

2018-07-13T17:49:43+00:00

#40044992

«Fing» или «Net Analyzer» на Android. Показывает всю вашу сеть.

 javirs

Ответ на вопрос

24-го февраля 2014 в 1:42

2014-02-24T13:42:38+00:00

#40044979

Я предполагаю, что вы не можете подключиться к вам PI, иначе вы бы знали его IP .

Если вы перейдете на страницу маршрутизатора (обычно что-то вроде 192.168.1.1 в вашем браузере), у вас должен быть раздел с уже подключенными устройствами. Вы можете попытаться подключить и отключить PI (и одно устройство должно появиться / исчезнуть из списка)

У меня Raspberry Pi подключен к Интернету через локальную сеть или по беспроводной сети. Как я сканирую свою локальную сеть для ее IP-адреса, чтобы я мог SSH в нее?

Хотя я могу просто подключить его к монитору и вручную запустить ifconfig , я надеялся, что есть более простой способ, например, использование nmap .

Этот ответ на сайте Raspberry Pi Stack Exchange, кажется, отлично его заколачивает. Ключом является то, что все Raspberry Pi имеют MAC-адрес, который начинается с B8:27:EB поэтому вы можете использовать nmap для сканирования сети и фильтрации этого MAC-адреса следующим образом:

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

Конечно, 192.168.1.0/24 следует изменить, чтобы он соответствовал настройке сети вашего Raspberry Pi, но я предполагаю, что 192.168.1.0/24 – это диапазон Raspberry Pi по умолчанию.

Кроме того, на этой странице, кажется, есть еще один приятный метод достижения той же цели с помощью arp и grep для поиска трафика на основе только MAC-адреса; диапазон сети не требуется:

arp -a | grep b8:27:eb | grep -Eo '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}'

Предполагая, что вы на Linux, вы можете попробовать Nmap.
Вы можете попробовать что-то вроде:

$ nmap 192.168.1.0/24  

Nmap scan report for pi (192.168.1.10)  
Host is up (0.023s latency).  
Not shown: 999 closed ports  
PORT   STATE SERVICE  
22/tcp open  ssh  

Это перечислит все хосты в сети 192.168.1.0/24, и перечислит порты TCP, открытые на каждом из них. Как правило, ваш raspberry py имеет открытый порт 22, а некоторые другие, если у вас запущены другие службы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками linux wireless-networking ssh raspberry-pi.

I need to find the Raspberry PI IP address on local network without connect the Raspberry to a monitor. How do I do it on Linux or Mac OS systems?

Pavel Fedotov's user avatar

asked Feb 24, 2014 at 13:29

J. Costa's user avatar

2

All raspberry devices MAC addresses started with B8:27:EB (for RPi4 B they start with dc:a6:32, replace where appropriate).

So, on *nix systems, this can be accomplished by executing the following command:

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

where 192.168.1.* will be your local network mask. You will get an answer like:

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

The 192.168.1.179 is the Raspberry Pi IP address on you network.

If you are on a Mac system you can use Homebrew to install nmap:

brew install nmap

On Windows, you might use Wireshark and use the following display filter:

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

enedil's user avatar

answered Feb 24, 2014 at 13:29

J. Costa's user avatar

J. CostaJ. Costa

2,4233 gold badges14 silver badges12 bronze badges

12

If you’re running MacOS or Linux, try this one:

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

On windows, you can use:

arp -a | findstr b8-27-eb

On RPi 4B, you need to use different string for comparision (dc:a6:32:be:95). You can check it on your RPi by

ip -br link

There will be entries for each network card. eth0 is cable internet, wlan0 is the WiFi.

Ingo's user avatar

Ingo

41.4k15 gold badges81 silver badges192 bronze badges

answered Aug 19, 2015 at 8:45

mrded's user avatar

mrdedmrded

9616 silver badges5 bronze badges

6

I use mDNS/Bonjour to give my Pi a local name like pi.local. I dont need to know it’s IP address and this works for shortcuts and when you need to embed a link…

How and Why to assign a local name to your Pi

answered Feb 27, 2014 at 21:22

dfowler7437's user avatar

1

By default the raspberry’s name is raspberrypi. You can just ‘ping raspberrypi’ and the ICMP echo reply gives you the IP address. It worked for me. Make sure though the DHCP server is reachable as the raspberry’s NIC is by default in DHCP client mode. Otherwise the raspberry gets an APIPA address.

answered Jul 24, 2014 at 18:48

jan's user avatar

janjan

1111 silver badge2 bronze badges

2

If you want to use a GUI application for it, you can use Yakala tool (https://github.com/mozcelikors/yakala) for Debian/Ubuntu. This tool helps you not only search for available Type B and Type C networks, but also helps you to directly SSH into the network:

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

or

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

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

Disclaimer: I am the creator of Yakala. Any suggestions/bugs are taken very seriously.

answered Feb 18, 2018 at 11:33

mozcelikors's user avatar

mozcelikorsmozcelikors

2212 silver badges7 bronze badges

2

I use the free Fing app in my android smartphone. It scans the network and shows the connected devices by type, including Raspberry Pi, as well as scanning available ports. Handy to see if SSH, web or VNC are enabled and running.

Andy Anderson's user avatar

answered Jul 13, 2018 at 16:22

Tuxpilgrim's user avatar

TuxpilgrimTuxpilgrim

2212 silver badges6 bronze badges

In linux and MAC, you can also type in “arp – a” in the terminal and you can get a list of connected devices, look for the one with B8 in it, example: 192.168.4.5 @ B8… will be the raspberry pi IP.

answered May 7, 2015 at 13:59

FreshTendrils's user avatar

FreshTendrilsFreshTendrils

4631 gold badge7 silver badges13 bronze badges

Or you could access to your Router via browser and find your android device -almost every router GUI has a service where you can check all devices that are currently connected to your network.

answered Jan 9, 2018 at 10:45

FLBKernel's user avatar

FLBKernelFLBKernel

1611 silver badge2 bronze badges

If you run MacOS, use PiFinder, it is an application that will tell you the IP of a Raspberry Pi on your network.

Community's user avatar

answered May 7, 2015 at 13:46

FreshTendrils's user avatar

FreshTendrilsFreshTendrils

4631 gold badge7 silver badges13 bronze badges

In 2020, the accepted answer does not work anymore because the Raspberry Pi ships with a different range of MAC addresses. I could just add the “new” MAC as a comment, but the string could change again and again each model. Here is something that’s more future-proof.

$ sudo nmap -sP 192.168.150.0/24 |grep 'Raspberry Pi Trading' -B2
Nmap scan report for pi4-01.lan (192.168.150.186)
Host is up (0.037s latency).
MAC Address: DC:A6:32:1B:35:6A (Raspberry Pi Trading)

The main difference above: we don’t assume a MAC pattern, we just grep for the (summary), as this label is provided by nmap itself. Because nmap is continually updated, it contains internal tables of Raspberry Pi MAC addresses (or uses other criteria to detect) and we can assume that will continue working.

CAVEAT: If your scan does not identify all Pis you know are on the network, then repeat the scan — up to 10 times. A Pi which has networking Power Management:on might not always respond to a scan.

Power Management may be a problem for you if you are scanning for multiple Pis on a LAN, as repeat scans might detect one Pi but not another. In that case, repeat the scans look for differences. (To confirm if a Pi has Power Management enabled, ssh to the Pi and run: /sbin/iwconfig wlan0|grep Management)

answered Jun 9, 2020 at 11:50

Scott Prive's user avatar

Scott PriveScott Prive

2112 silver badges4 bronze badges

Copy the following into your Terminal/Console/Shell:

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

Please adapt 192.168.1. to your individual network.

The output will look something like this:

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

192.168.1.109 would be your Raspberry Pi’s IP… 🙂

answered Feb 27, 2014 at 15:32

Wolf's user avatar

WolfWolf

914 bronze badges

Put this in pi.php on your web server:

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

You may have to create the file pi on your web server with write permissions for your web server.

Put

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

in /etc/rc.local on your pi.

Get the IP of your pi by browsing http://yourwebserver/pi

answered Oct 29, 2017 at 14:16

darsie's user avatar

darsiedarsie

1511 silver badge1 bronze badge

When using a fresh install of NOOBS or Raspbian, the default hostname is “raspberrypi” and in some network configurations (i.e. if mDNS is in use and configured) you could use “raspberrypi.local”. Another option is to run arp -a and look for raspberrypi

NOTE: This won’t work for every instance.

answered Aug 16, 2016 at 18:11

linuxgnuru's user avatar

linuxgnurulinuxgnuru

62510 silver badges21 bronze badges

1

My router assigns newly discovered systems an ip-address starting at 192.168.1.2, sequentially. I went through every system in my home one day and reserved addresses for them.

That way when I create a new system, chances are that its ip-address will be 192.169.1.18.

Another way to use the serial console. You can use a serial terminal program in order to log into your raspberry pi. I would suggest using the 8N1 (8-bits, no parity bit, 1 stop bit) setting with a speed (baud rate) of 115,200. You’ll need a USB to serial (3V3) connector.

answered Jul 13, 2018 at 17:27

NomadMaker's user avatar

NomadMakerNomadMaker

1,5608 silver badges10 bronze badges

‘Fing’ or ‘Net Analyzer’ on Android. Shows your whole network.

answered Jul 13, 2018 at 17:49

Andy Anderson's user avatar

If you are on Windows I suggest you to try out this script.
It is mostly based on the “arp -a” command, but it saves you some extra digging and helps you when your Raspberry Pi is not already in the Arp table.

Create a text file with the following content and rename it as find_raspberry_pi.bat

@echo off
:: This script, run from a Windows (10) machine, finds a Raspberry Pi on local network

:: You can manually set subnet if needed
:: E.g.
::SET subnet=192.168.56
SET subnet=

:: --- No need to edit below this line ---

SET raspIp=
SET myip=

:: Get IP for local PC
FOR /f "tokens=1-2 delims=:" %%a IN ('ipconfig^|find "IPv4"') DO SET myip=%%b
SET myip=%myip:~1%
echo IP for local PC: %myip%

:: Retrieve subnet if not manually set
IF "%subnet%" == "" (
    SETLOCAL EnableDelayedExpansion
    SET subnet=%myip%
    FOR /l %%a IN (1,1,31) DO IF NOT "!subnet:~-1!"=="." SET subnet=!subnet:~0,-1!
    SET subnet=!subnet:~0,-1!
    SETLOCAL DisableDelayedExpansion
)

:: Show subnet
echo Subnet: %subnet%
echo.

:: Loop through arp table entries and look for Raspberry Pis MAC addresses
echo Discovering network...
:: Ping all IPs in subnet from 1 to 254
FOR /L %%N IN (1,1,254) DO start /b ping -n 1 -w 200 %subnet%.%%N >nul
timeout 1 >nul
FOR /f "tokens=1" %%f  IN ('arp -a ^| findstr "28-cd-c1 b8-27-eb e4-5f-01 dc-26-32"') DO (
    IF NOT "%%f"=="" echo Found Raspberry Pi having IP %%f
)
echo.
pause

Disclaimers:

  1. I am not the author of the original script, I just adapted it a little bit to work with a Raspberry Pi. Sadly, I cannot find the original contributor.
  2. It’s not bullet-proof, it will not work if the subnet it starts scanning is not the correct one if you want to scan a different subnet you need to manually edit the appropriate line at the beginning of the script.

Still, I used it many times and it’s a simple solution.

UPDATE 2022:

I updated this script. Now:

  • it can find multiple Raspberry Pis at once
  • it can find allegedly all types of Raspberry Pis (3, 4, etc.)
  • you can manually force a specific subnet if the autorecognize feature finds the wrong one

find all pis

answered Apr 29, 2020 at 13:44

Kar.ma's user avatar

Kar.maKar.ma

1434 bronze badges

Try this first:

arp -a | grep -E --ignore-case 'b8:27:eb|dc:a6:32'

The two hex strings (b8:27:eb|dc:a6:32) in this command reflect the two OUI values used by “The Foundation” for production of all RPi devices – through RPi ver 4B as of this writing. If your RPi isn’t in your arp cache this command won’t yield anything useful. If that’s the case, then create the following file in your favorite editor, and save/write it as pingpong.sh:

#!/bin/sh

: ${1?"Usage: $0 ip subnet to scan. eg '192.168.1.'"}

subnet=$1
for addr in `seq 0 1 255 `; do
( ping -c 3 -t 5 $subnet$addr > /dev/null ) &
done
arp -a | grep -E --ignore-case 'b8:27:eb|dc:a6:32'

make it executable, and run it (use your network address here, not necessarily 192.168.1.):

$ chmod 755 pingpong.sh
$ ./pingpong.sh 192.168.1. 

Your results may appear as follows:

raspberrypi3b.local (192.168.1.131) at b8:27:eb:1:2:3 on en0 ifscope [ethernet]
raspberrypi4b.local (192.168.1.184) at dc:a6:32:2:3:4 on en0 ifscope [ethernet]

In this case, the hostname appears courtesy of mDNS. If you don’t have/don’t use mDNS/avahi/etc the hostname will be replaced by the character: ?.

answered Aug 27, 2020 at 20:07

Seamus's user avatar

SeamusSeamus

20.2k3 gold badges30 silver badges64 bronze badges

1

Raspbian is using a thing called mDNS, which allows you to access your raspberry pi by a hostname raspberrypi.local.

So, you don’t need to search for an IP address anymore, just connect like so:

ssh pi@raspberrypi.local

answered Nov 19, 2020 at 12:48

mrded's user avatar

mrdedmrded

9616 silver badges5 bronze badges

I assume you cannot connect to you PI, otherwise you’d know its IP.

If you go to your router page (usually something like 192.168.1.1 in your browser) there you should have a section with the already connected devices. You can try to plug and unplug the PI (and one device should appear / dissapear from the list)

answered Feb 24, 2014 at 13:42

javirs's user avatar

javirsjavirs

6601 gold badge6 silver badges19 bronze badges

I wrote myself a bash script to find my OctoPi a while ago.
You can change the systype=”Raspberry Pi” to whatever type of device you are looking for. It finds the subnet itself so you need not guess 192.168.1.0 or whatever.
There are now 3 different OUI ranges for the Pi Foundation:
https://udger.com/resources/mac-address-vendor-detail?name=raspberry_pi_foundation

B8:27:EB:xx:xx:xx   B8-27-EB-xx-xx-xx   B827.EBxx.xxxx
DC:A6:32:xx:xx:xx   DC-A6-32-xx-xx-xx   DCA6.32xx.xxxx 
E4:5F:01:xx:xx:xx   E4-5F-01-xx-xx-xx   E45F.01xx.xxxx 

So the ping grep answers need to add those

[andy@localhost ~]$ sudo ./findpi.sh

Searching 192.168.68.0/24 for Raspberry Pi systems
My address is wlp0s20f3:192.168.68.128

Found 1 Raspberry Pi system 
    Raspberry Pi system found at 192.168.68.124

I fixed it up a little and here it is:

#!/bin/bash
#-----------------------------------------------------------------#
#  Find PI bash script 
#   Andy Richter  
#   05/19/2021  I really wrote it in 2019 when I got my printer
#  This script will search the local subnet for Raspberry Pi systems  
#  The script requires root access for nmap
#
#   There are no parms we find things for ourselves
#------------------------------------------------------------------#
systype="Raspberry Pi"
#systype=Unknown
me=$(readlink --canonicalize --no-newline $0)
if [ "$EUID" -ne 0 ]
  then echo >&2 "Please run as root or use sudo $me"
  exit
else 
  if ! command -v nmap &> /dev/null
    then
       echo "nmap not found on this system. Please install. exiting"
       exit
  fi
fi
# awk doesn't like variables between /.../ 
awkstr="/^Nmap/{ipaddress=$NF}/$systype/{print ipaddress}"
 
# Use ip route to get the active rout to the internet, IP address and interface 
#  Then use that interface to find the subnet 
myrout=`ip route get 8.8.8.8`
myaddr=`echo $myrout | grep src| sed 's/.*src (.* )/1/g'|cut -f1 -d ' '`
mydev=`echo $myrout | grep dev| sed 's/.*dev (.* )/1/g'|cut -f1 -d ' '`
# now get our subnet
mynet=`ip -o -f inet addr show $mydev | awk '/scope global/{sub(/[^.]+//,"0/",$4);print $4}'`

printf "nSearching $mynet for $systype systemsnMy address is $mydev:$myaddrn"

# Use nmap to find PI systems. 'Raspberry Pi' is found in NMAP for PI systems
foundSys=`sudo nmap -sP $mynet | awk "$awkstr"`
foundPI=`echo $foundSys`
numpi=`echo "$foundPI" | awk '{print NF}'`
s=$([[ ($numpi == 1) ]] && echo " " || echo "s")
# Now we know, print the list if any

printf "nFound $numpi $systype system$sn"
for ipaddr in $foundPI
   do
     printf "t$systype system found at $ipaddrn"
   done

exit 0

Nmap output looks like:

Starting Nmap 7.70 ( https://nmap.org ) at 2021-05-01 15:57 EDT
Nmap scan report for 192.168.68.124
Host is up (0.021s latency).
MAC Address: B8:27:EB:58:CA:8F (Raspberry Pi Foundation)

answered Jun 1, 2021 at 19:07

Andy Richter's user avatar

Каждое устройство в сети имеет Интернет-протокол или IP-адрес. IP-адрес — это то, как вы идентифицируете конкретное устройство в своей сети среди всех остальных, точно так же, как уличный или почтовый адрес. Если вы хотите подключиться к устройству в своей сети, вам необходимо знать его IP-адрес, а иногда его бывает сложно найти.

Эта статья покажет вам, как узнать IP-адрес Raspberry Pi это подключено к вашей сети. В некоторых случаях IP-адрес вашего Pi может быть динамическим. Значит, это может измениться. Если IP-адрес вашего Raspberry Pi изменился, вам нужен способ узнать его новый IP-адрес. Поскольку у вас может быть или нет дисплей, подключенный к вашему Pi, мы рассмотрим несколько способов найти IP-адрес вашего Pi с дисплеем и без него.

Самый простой способ узнать IP-адрес вашего Pi — напрямую войти в Pi, независимо от того, установлена ​​ли у вас ОС, которая включает рабочий стол с графическим интерфейсом пользователя.

Если у вас установлена ​​безголовая установка (нет рабочего стола Linux)

Если операционная система, установленная на вашем Pi, не включает рабочий стол с графическим интерфейсом пользователя, вы можете использовать окно терминала для поиска IP-адреса вашего Raspberry Pi.

  1. Войдите в свой Pi.
  2. Введите ip a и нажмите Enter.

  1. IP-адрес появится в следующем виде: inet 192.168.xx
  2. В приведенном выше примере Raspberry Pi подключен к сети через Ethernet, поэтому IP-адрес отображается в разделе eth0. Если бы он был подключен через Wi-Fi, IP-адрес отобразился бы в разделе wlan0.

Если у вас есть рабочий стол Linux

Если на вашем Pi установлена ​​ОС Raspberry Pi с рабочим столом, вы можете легко найти IP-адрес своего Pi, наведя указатель мыши на значок сети (две стрелки) в правом верхнем углу рядом с часами. Появится информационная панель, показывающая сетевые подключения вашего Raspberry Pi.

Если ваш Pi подключен к сети через Ethernet, вы увидите IP-адрес вашего Raspberry Pi после eth0. На изображении выше IP-адрес 192.168.1.179. Игнорируйте косую черту и цифры после нее. (Это говорит вам о подмаске.) Если ваш Pi подключен к вашей сети через Wi-Fi, вы увидите адрес вашего Pi после wlan0.

Как узнать IP-адрес вашего Pi с компьютера с Windows в той же сети

Вот несколько простых способов найти IP-адрес вашего Pi с другого компьютера в той же сети.

Используйте команду Hostname

Использование команды hostname — хороший способ узнать IP-адрес вашего Raspberry Pi с другого компьютера в той же сети.

  1. На компьютере с Windows, который находится в той же сети, что и ваш Pi, запустите командную строку, набрав cmd в поле поиска и нажав Enter.
  2. В окне командной строки введите nslookup raspberrypi.

  1. Как вы можете видеть выше, команда nslookup вернула два результата. Первый — это адрес шлюза (адрес вашего маршрутизатора), а второй — IP-адрес вашего Raspberry Pi.
  2. Примечание. Если команда возвращает «*** [NAME_OF_YOUR_NETWORK] не удается найти raspberrypi: несуществующий домен », это означает, что либо Pi не находится в той же сети, либо у вас есть опечатка в команде, либо у вашего компьютера нет доступа для запроса DNS-сервера.

Используйте команду Ping

На большинстве сетевых устройств включена команда ping, и в подавляющем большинстве образов ОС Raspberry Pi по умолчанию включен ping. Однако возможно, что команды ping были отключены на вашем Pi, поэтому этот метод определения IP-адреса вашего Pi не гарантированно работает.

Использование команды ping похоже на игру Марко Поло. Вы кричите «Марко», и ваше сетевое устройство отвечает «Поло», сообщая свое местоположение.

  1. На компьютере с Windows, который находится в той же сети, что и ваш Pi, запустите командную строку, набрав cmd в поле поиска и нажав Enter.
  2. В окне командной строки введите ping raspberrypi и нажмите Enter.

  1. На снимке экрана выше вы можете видеть, что IP-адрес отображается несколько раз. Если команда ping не работает, возвращаемый IP-адрес все еще может быть правильным, поэтому посмотрите, работает ли он.
  2. Примечание. Если ping не может найти Raspberry Pi в вашей сети, вы получите сообщение об ошибке: «Запрос Ping не может найти хост raspberrypi. Пожалуйста, проверьте имя и попробуйте снова.» В этом случае попробуйте один из следующих способов.

Как узнать IP-адрес вашего Pi с помощью сторонних инструментов

Инструменты сетевого сканера просматривают все возможные IP-адреса в вашей сети и пытаются обнаружить любые доступные хосты, такие как Raspberry Pi. Помните, что эти инструменты будут работать, только если ваш компьютер или телефон находится в той же сети (т. Е. Подключен к тому же маршрутизатору), что и Raspberry Pi.

Используйте Angry IP Scanner

Сердитый IP-сканер — это программа с открытым исходным кодом от Антона Кекса, которую любят многие пользователи Raspberry Pi. Лучше всего скачать Angry IP Scanner с его GitHub страница. Таким образом вы обязательно получите последнюю версию. Этот инструмент доступен для Windows, Mac OS и Linux.

Установите и запустите Angry IP Scanner на другом компьютере в той же сети, что и ваш Pi. Этот метод имеет то преимущество, что каждый устройство в вашей сети. Ищите результат с именем хоста, начинающимся с raspberrypi. Предупреждение: запускайте этот инструмент только в том случае, если у вас есть сеть!

Используйте приложение Fing на своем смартфоне

Fing — это приложение, доступное для Android и iPhone который сканирует вашу локальную сеть и отображает IP-адреса всех устройств в этой сети.

Запустив приложение Fing, вы получите список всех устройств в вашей сети. Найдите результат, начинающийся с raspberrypi, и будет указан IP-адрес вашего Pi.

Добавить комментарий