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 в архітектурі pi? .. немає бінарних файлів для ARMv6hf
user2649476

Я отримав рішення лише з однією командою, програмне забезпечення не потрібно. Я підготував підручник з нього. https://www.youtube.com/watch?v=PWMVowAK6wg
Kraj Technocrates

Можливий дублікат Підготовки до ssh без екрана .

Відповіді:


19

Спробуйте Pi Finder для Mac, щоб виявити IP-адреси RPi за допомогою безголівкового блоку RPi.

Хоча у вашому відредагованому запитанні видається, що IP вказаний у розділі en0як 192.168.91.16, припускаючи, що ваш ifconfigвихід надходить із RPi.


Con gusto :) І fwiw, інші утиліти Pi Filler та Pi Copier теж дуже корисні.
einnocent

24

Ви можете шукати IP-адресу за іменем хоста. Якщо припустити ім'я хосту вашого Pi - "малиновий"

Ось як ви отримуєте IP-адресу за допомогою команди ping та імені хоста.

З Linux: ping raspberrypi
З Windows: ping raspberrypi
З OS X:ping raspberrypi.local

Для того, щоб команда працювала з Windows, вам потрібно мати Samba на своєму Pi. Ви можете встановити Samba за допомогою команди sudo apt-get install samba.


3
Використовувати samba на RPi просто для трансляції свого імені хоста - це як вбити муху кувалдою. Краще використовувати avahi. thomasloughlin.com/…
ripat

Деякі люди хочуть найпростішого рішення. Деякі люди хочуть найбільш ефективного рішення. Для тих, хто шукає простого рішення, встановити samba не може бути легше, ніж команда з одного рядка. Плюс рішення avahi, яке ви запропонували, працює легко лише з ОС X. Якщо ви хочете змусити його працювати з Windows, вам потрібен Bonjour, який ви отримаєте, встановивши iTunes. Таким чином, ви в основному замінюєте кувалду самби на кувалду iTunes.
геоджі

Хоча я вважаю, що кількість людей, у яких встановлений iTunes, тому що їм це потрібно для їх iDevice, більше, ніж кількість людей із Samba. @geoji
11684,

Вам не потрібно встановлювати samba на клієнтській машині. Samba потрібно встановити лише один раз на малиновому Пі. Недоліком підходу iTunes є те, що вам потрібно встановити його на кожній машині, з якої вам потрібно знайти IP-адресу.
геоджі

1
ping raspberrypi.local працює у Windows у веб-браузері та для 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


3
arp -aбуде працювати, якщо і тільки тоді, якщо Mac вже успішно перевірено або підключено до хоста. Спробуйте самі, перезавантаживши свій Mac і відобразивши таблицю арп. Це буде майже порожньо. Щоб заповнити цю таблицю, потрібно запустити щось на зразок сканування 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}'подивіться мій коментар до цієї
теми

... і вам потрібно виконати цю вище команду як rootsudo nmap .....
ripat

5

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

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


Супер! Чудово працює!
Федір Цапана

Випробуваний. Спостерігав: Помилково визнав Orange Pi як Pi! Однак не вдалося розпізнати Raspbian на Rpi 0 та Rpi 2, навіть коли відповідь хоста показує Raspbian.
Angsuman Chakraborty

Чи можете ви вставити знімок екрана?
Tho

2

Використання pingтаarp не працює для мене, тому що в моїй мережі малині було призначено інше ім'я хоста.

Але мені вдалося скористатися lsleases , це також рекомендується на сайті Raspberry PI.

Після встановлення lslease запустіть сервер sudo lsleases -s; потім перезавантажте ваш PI Raspberry і дочекайтеся появи 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.


1

'en1' - це ваша електронна мережа, використовуючи 'ifconfig'. Але вам не потрібно шукати IP-адреси - саме для цього призначені імена хостів і DNS. Ви кажете, що ви на mac, тому просто 'ssh pi@raspberrypi.local'. Нехай DNS виконує роботу у фоновому режимі. Якщо ви вказали ім'я свого власника, скажімо, "papagoose", і у вас є ім'я користувача "mama", введіть "ssh mama@papagoose.local". Якщо ви захищені обстрілами з ОС Windows, просто скиньте ".local".


1

Якщо ви хочете використовувати для нього GUI-додаток, ви можете використовувати Yakalaінструмент ( https://github.com/mozcelikors/yakala ) для Debian / Ubuntu. Цей інструмент допомагає вам не тільки шукати доступні мережі типу B і Type 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

Відмова: Я творець Якала. Будь-які пропозиції / помилки сприймаються дуже серйозно.


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 та малина знаходяться в одній мережі.

arp -na | grep b8:27

або ви можете використовувати nmap (Змініть CIDR зі своїм)

nmap -sn 192.168.1.0/24

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


Про використання arp та nmap вже було сказано в попередніх відповідях. Це не допомагає просто повторювати відповіді.
Інго
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.