SSH в Raspberry Pi, не зная IP-адрес

35

У меня Raspberry Pi подключен к Ethernet и с Mac (хотя USB-кабель).

Я пытаюсь SSH в Pi, но я не знаю IP-адрес. Я пытался :

 ifconfig

но я не вижу eth0

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=3<RXCSUM,TXCSUM>
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
    inet 127.0.0.1 netmask 0xff000000 
    inet6 ::1 prefixlen 128 
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
        ether a8:20:66:09:f8:36 
    media: autoselect (none)
    status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 7c:d1:c3:d8:b5:dd 
    inet6 fe80::7ed1:c3ff:fed8:b5dd%en1 prefixlen 64 scopeid 0x5 
    inet 192.168.91.16 netmask 0xffffff00 broadcast 192.168.91.255
        media: autoselect
    status: active
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
        lladdr 00:3e:e1:ff:fe:7f:a0:82 
    media: autoselect <full-duplex>
    status: inactive
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
    ether 0e:d1:c3:d8:b5:dd 
    media: autoselect
        status: inactive
Алекс Гарулли
источник
Как вы установили lseases на архитектуру пи? .. нет бинарных файлов для ARMv6hf
user2649476
Я получил решение с помощью одной команды, программное обеспечение не требуется. Я подготовил учебник по этому вопросу. https://www.youtube.com/watch?v=PWMVowAK6wg
Край Технократ
Возможный дубликат Prepare для ssh без экрана .
Возможный дубликат Как получить IP-адрес Raspberry Pi для SSH
Брайан Карлтон

Ответы:

19

Попробуйте Pi Finder для Mac, чтобы узнать IP-адрес RPi с помощью безголового RPi-устройства.

Хотя в вашем отредактированном вопросе, кажется, что IP указан в списке en0как 192.168.91.16, при условии, что ваш ifconfigвывод поступает из RPi.

einnocent
источник
Con gusto :) И fwiw, другие утилиты Pi Filler и Pi Copier тоже довольно полезны.
einnocent
24

Вы можете искать IP-адрес по имени хоста. Предполагая, что имя вашего Pi - "raspberrypi"

Вот как вы получаете IP-адрес с помощью команды ping и имени хоста.

Из Linux: ping raspberrypi
Из Windows: ping raspberrypi
Из OS X:ping raspberrypi.local

Чтобы команда работала из Windows, вам нужно запустить Samba на вашем Pi. Вы можете установить Samba с помощью команды sudo apt-get install samba.

geoji
источник
3
Использование samba на RPi просто для того, чтобы транслировать его имя хоста, все равно что убить муху кувалдой. Лучше использовать авахи. thomasloughlin.com/...
Рипат
Некоторые люди хотят самое простое решение. Некоторые люди хотят наиболее эффективного решения. Для тех, кто ищет простое решение, установить samba проще, чем однострочная команда. Кроме того, предложенное вами решение avahi легко работает только с OS X. Если вы хотите, чтобы оно работало с Windows, вам понадобится Bonjour, который вы получите, установив iTunes. Таким образом, вы в основном заменяете кувалду самбы на кувалду iTunes.
Geoji
Хотя я думаю, что число людей, у которых установлен iTunes, потому что они все равно нуждаются в нем для своего iDevice, больше, чем число людей с Samba. @geoji
11684
Вам не нужно устанавливать Samba на клиентском компьютере. Samba нужно установить только один раз на Raspberry Pi. Недостатком подхода iTunes является то, что он должен быть установлен на каждом компьютере, с которого вам нужно найти IP-адрес.
Geoji
1
ping raspberrypi.local работает на окнах в веб-браузере и для ssh в новой системе raspbian из коробки с файлом ssh в загрузке. и самба, и itunes не нужны.
Кодовый клан
11

Pi и Mac находятся в одной сети? В таком случае я просто arp -aнашел его. Существует ряд других методов, перечисленных здесь: https://apple.stackexchange.com/questions/19783/how-do-i-know-the-ip-addresses-of-other-computers-in-my-network ? RQ = 1

11684
источник
3
arp -aбудет работать, если и только если Mac уже успешно прощупан или подключен к хосту. Попробуйте сами, перезагрузив Mac и отобразив таблицу arp. Это будет почти пусто. Чтобы заполнить эту таблицу, вам нужно выполнить что-то вроде ping-сканирования:nmap -sP 192.168.91.0/24
ripat
@ripat Ого, это делает его почти бесполезным.
11684
1
nmap -sP 192.168.91.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
Обходной путь
... и вам нужно выполнить sudo nmap .....
указанную
5

Я разработал кроссплатформенный инструмент для быстрого поиска локального IP-адреса Raspberry Pi:

Статья об этом: Pi-oi: инструмент для поиска локального IP-адреса вашего Raspberry Pi

Тхо
источник
Супер! Работает отлично!
Федир Цапана
Проверено. Заметил: ошибочно признал Orange Pi как Pi! Однако не может распознать Raspbian на Rpi 0 и Rpi 2, даже если ответ хоста показывает Raspbian.
Ангсуман Чакраборти
Можете ли вы вставить снимок экрана?
То,
2

Использование pingи arpне будет работать для меня, потому что в моей сети малине было назначено другое имя хоста.

Но мне удалось использовать lsleases , это также рекомендуется на сайте Raspberry PI.

После установки lsleases запустите сервер с помощью sudo lsleases -s; затем перезагрузите Raspberry PI и дождитесь появления IP-адреса.

$ sudo lsleases -s
[sudo] password for sebastian: 
2015/01/15 15:36:40 startup -  version:  1.4.0
2015/01/15 15:36:40 enable active check - ping every: 15m

# Reboot your Raspberry PI and wait

2015/01/15 15:37:10 new DHCP Lease: '132.231.71.116  b8:27:eb:f5:c3:4a raspberrypi'

Вуаля ...

Себастьян
источник
1

Если это ваша домашняя сеть, вы можете легко войти в свой маршрутизатор, так как большинство из них отображает IP-адреса клиентов где-то там. Чтобы узнать IP-адрес маршрутизатора, введите ipconfig(Windows) или ifconfig(Mac, Linux и т. Д.), И он будет указан в разделе « Шлюз» . IP роутера обычно 192.168.1.1.

jeffresc
источник
1

'en1' - ваш сетевой адрес, используя 'ifconfig'. Но вам не нужно искать IP-адреса - для этого нужны имена хостов и DNS. Вы говорите, что находитесь на Mac, так что просто 'ssh pi@raspberrypi.local'. Пусть DNS делает работу в фоновом режиме. Если вы дали вашему PI имя хоста, скажем, «papagoose», и у вас есть имя пользователя «mama», введите «ssh mama@papagoose.local». Если вы выполняете безопасный обстрел из ОС Windows, просто удалите «.local».

Водочные молоточки
источник
1

Если вы хотите использовать приложение с графическим интерфейсом для него, вы можете использовать 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

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

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

mozcelikors
источник
0

Вот как я могу войти в свой Raspberry Pi:

IP=$(sudo nmap -p 22 --open -sV 192.168.0.0/24 | grep 192 | awk '{print $NF}') && ssh pi@$IP

Найдите открытый порт SSH в локальной сети, вставьте в него IP, SSH.

Эрвин Ройяккерс
источник
0

Я трачу на это немного времени, чтобы выяснить и, наконец, одно решение, которое работало нормально

Посмотрите на это http://angryip.org/download/#windows

Я верю, что "arp -a" также даст IP, но инструмент, который я упомянул выше, предоставит информацию в деталях.

введите описание изображения здесь

Джиксон Джонсон Кооттала
источник
0

Для меня arp работает отлично в большинстве случаев, если вы mac и raspberry находитесь в одной сети.

arp -na | grep b8:27

или вы можете использовать nmap (смените CIDR на ваш)

nmap -sn 192.168.1.0/24

https://installvirtual.com/find-ip-of-raspberry-pi/

Четан Капур
источник
Использование arp и nmap уже было сказано в предыдущих ответах. Это не помогает просто повторять ответы.
Инго