Как мне узнать IP-адрес моего RPI без головы?


16

Я настроил свой RPi без заголовка и подключил его к маршрутизатору. Как мне узнать локальный IP-адрес, чтобы я мог подключиться к нему по ssh?

Обновление: множество документов указывают на то, что вы можете войти в маршрутизатор и посмотреть таблицу DHCP. Что делать, если у вас нет учетных данных для входа в маршрутизатор? (Я прошу прощения за добавление этого ограничения постфактум!)


В 90% случаев люди никогда не меняют учетные данные для входа в систему по умолчанию. Если вы действительно можете получить доступ к маршрутизатору, есть очень хороший шанс, что имя пользователя - admin, а пароль - серийный номер. Или просто найдите марку и модель и поищите в Google учетные данные по умолчанию.
Дбо

Попробуйте сказать это Verizon / FIOS! :) (В моем случае роутер находится в квартире моего зятя, и Verizon установил пароль, когда они его установили.)
fearless_fool

Ответы:


12

Пытаться:

arp -a

Вы также можете попробовать tcpdump, но это не так ясно.

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

Машина времени / экспресс от Apple делает это легко.

С любого другого маршрутизатора вам, вероятно, придется искать вкладку LAN, а затем вкладку распределения IP-адресов.


Комментировал бы ваш тип роутера, но недостаточно репутации.
Дбо

arp -a намного быстрее, чем nmap -sS, и не требует прав доступа root! Спасибо за чаевые.
fearless_fool

@fearless_fool мое удовольствие
Dbo

Как ни странно: сразу после первой загрузки моего RPi, arp -aне находит его, но sudo nmap -sS 192.168.1.0/24делает. Пусть покупатель будет бдителен.
fearless_fool

7

Пользоваться им arp -aбыстро и легко, но я обнаружил, что при определенных обстоятельствах в нем перечислены не все устройства. (Кроме того, я не знаю, почему это происходит. Есть идеи?) Вот подход, который - пока - кажется, всегда работает. Это займет больше времени ...

В окне оболочки на вашем хост-компьютере (вы сказали, что хотите войти в систему, используя ssh, верно?), Введите:

sudo nmap -sS 192.168.1.0/24

(Предполагается, что ваша локальная сеть 192.168.1.xxx). Это будет сканировать устройства в локальной сети. Это может занять некоторое время, но по завершении он распечатает несколько записей, в том числе такую, которая выглядит примерно так:

Nmap scan report for raspberrypi.home (192.168.1.8)
Host is up (0.016s latency).
Not shown: 997 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
5900/tcp open  vnc
6000/tcp open  X11
MAC Address: 80:1F:02:DA:AF:0D (Edimax Technology Co.)

Исходя из этого, мы знаем, что DHCP-адрес назначен 192.168.1.8. Если вы используете учетную запись пользователя по умолчанию, теперь можно войти через:

$ ssh pi@192.168.1.8

4

Редактировать:

При настройке вашего автономного RPi вы можете подключить его непосредственно к порту Ethernet вашего компьютера (должна быть модель B).

На Mac вы должны включить «Общий Интернет» в «Системных настройках». Это позволит вашему компьютеру создать соединение между вашим WiFi и портом Ethernet, к которому должен быть подключен ваш пи.

В этом сценарии «Общий Интернет» ваш компьютер будет использовать IP-адрес 192.168.2.1(по умолчанию) при создании DHCP-сервера в 192.168.2.Xдиапазоне.

Попытка 192.168.2.2- это то, к чему я почти всегда подключался, когда у меня не было монитора. Если бы не это, я бы всегда получал 192.168.1.3.

Когда вы, наконец, получите удаленный доступ, запишите IP и MAC-адреса. Как только вы их получили, посмотрите на DHCP Reservation и сопоставление портов. Опять же, в зависимости от вашего роутера, это может быть очень просто или очень сложно.

Просто используйте arp -a


Но это не правда. Ваш маршрутизатор раздает адреса в зависимости от того , что подключен к нему, так что вы не можете предположить , что RPi находится в xxx.xxx.xxx.2
fearless_fool

@fearless_fool Полностью изменил мой ответ. Это связано с подключением напрямую к вашим компьютерам RJ45.
1 ''

Поднимаю мысль: мне показалось удобным подключить мой новый RPI без головы к моему enet-порту MacBook. Я обнаружил, что мне нужно сделать следующее: Share From: Wi-Fi. К компьютерам, использующим: Ethernet (и включен Internet Sharing). Затем мой RPi появился в подсети 2, как вы сказали, в 192.168.2.2. (Возможно, один из нас должен отредактировать ваш ответ!)
fearless_fool

2

Я использую решение, которое требует доступа в Интернет. Это может быть чем-то вроде обходного пути, но для меня это хорошо:

При загрузке мой Raspberry Pi автоматически отправляет письмо с собственным IP-адресом на учетную запись Gmail, которую я создал исключительно для этой цели. В своей рабочей тетради я использую thunderbird для автоматической пометки любого письма, полученного через эту учетную запись gmail, как прочитанного, поэтому меня это не раздражает. Если мне нужно ssh, я смотрю на последнюю электронную почту и там указывается IP.

Сценарий работает следующим образом: cron запускает скрипт python при загрузке (см. Здесь ), который затем отправляет электронное письмо: elinux wiki - Python Script.

Надеюсь, это поможет,

Lukas


Хех. Настройка RPi для отправки вам электронной почты означает, что у вас был способ связи с ним в первую очередь, например, клавиатура и дисплей. Вот чего мы пытаемся здесь избежать.
fearless_fool

Вы также можете редактировать соответствующие файлы непосредственно на SD-карте с другого компьютера;) Вот как я это делаю ...
LuWi

Скрипт в вики-ссылке у меня не работал. Он разбился, когда я попытался запустить его. Я нашел этот скрипт сработал: gist.github.com/johnantoni/8199088
Левибостян

0

Не совсем отвечаю на ваш вопрос, но мне проще назначить фиксированные IP-адреса для моего RPis. В моем маршрутизаторе я настраиваю параметры DHCP, чтобы они выделялись в диапазоне (скажем, 100-255), а затем я назначаю фиксированные IP-адреса в диапазоне ниже 100 для некоторых на моих машинах.

Предполагая, что я хочу назначить IP-адрес 192.168.0.42, а myrouter (шлюз) - 192.168.0.1, мой файл / etc / network / interfaces выглядит следующим образом:

# loopback
auto lo
iface lo inet loopback

# Мой конфиг, статический IP
auto eth0
iface eth0 inet статический
адрес 192.168.0.42
шлюз 192.168.0.1
маска сети 255.255.255.0

# Сетевой адрес «семейной»
сети 192.168.0.0
широковещательный 192.168.0.255


Да, это работает. Требуется, чтобы вы знали диапазон DHCP, назначенный вашим маршрутизатором. И есть проблема с начальной загрузкой: редактировать / etc / network / interfaces без клавиатуры и монитора довольно сложно.
fearless_fool

Вы правы по поводу начальной загрузки. У меня есть запасная клавиатура, мышь и монитор, которые я использую при настройке PI. Как только я закончу основы (например, сетевое взаимодействие), я стану без головы. Было бы хорошо иметь возможность построить настроенную установку, скажем, с другой машины, но это немного за мной.
Дерек Найт

Я сделал довольно подробно поподробнее (но простой) по настройке RPI с нуля ж / габаритная клавиатуры или мыши в RPI форуме: raspberrypi.org/forums/viewtopic.php?f=91&t=74176
fearless_fool

0

если вы не можете получить доступ к пи, потому что у вас нет монитора или что-то еще, вы можете получить доступ к маршрутизатору и проверить подключенные устройства.

В вашем рабочем компьютере типа ifconfig(если Linux) или ipconfig(если Windows) вы увидите свой собственный IP и ваш шлюз по умолчанию. Для меня, например, это: мой IP 192.168.1.101 и мой шлюз 192.168.1.1. Ваши, вероятно, будут выглядеть похожими.

Затем перейдите в браузер и зайдите http://192.168.1.1(открывшийся вами шлюз), и вы попадете на веб-страницу своего маршрутизатора. Если он запрашивает пароль для просмотра случая маршрутизатора, он может быть напечатан где-нибудь, или в документах, которые они дали вам с маршрутизатором, или попробовать admin ... это действительно работает довольно часто.

В роутере у вас будет куча опций, но всегда есть один раздел, где вы можете проверить состояние устройства и уже подключенных устройств (особенно если вы находитесь в Wlan)

Если ни одно устройство не имеет четкого имени (например, Raspberry или что-то, что вы установили в малине), попробуйте отключить и снова подключить raspi и посмотреть, какое устройство исчезнет и снова появится в списке. Это твоя малина :)


0

Вы можете настроить Avahi Daemon так, чтобы ваш Pi всегда слушал по адресу raspberrypi.local. Смотрите Шаг 1

Вы также можете использовать расширенный IP-сканер для поиска.

Надеюсь это поможет!


Но вы можете настроить Ahavi Daemon, только если у вас есть клавиатура и дисплей для подключения к нему. Вот чего мы пытаемся избежать! :) И, как указывает Dbo, вы можете использовать, arpа не коммерческий продукт, чтобы найти адрес RPi.
fearless_fool

0

Я просто попытался получить IP-адрес моего нового RasPi 2. Первая загрузка и в сети DHCP работает. Так вот как вы получаете адрес:

1) Подключите его к сети, загрузите RasPi и подождите не менее 20 секунд, пока индикатор SD-карты не погаснет. 2) Отключите RasPi и подключите его к ноутбуку или компьютеру, на котором работает wireshark, и просмотрите пакеты с MAC-адресом, начинающимся с «Raspberr_cd: 38: 32», cd: 38: 32 - мои последние 3 цифры моего MAC, так что ваш будет другим. 3) Вы должны увидеть некоторые пакеты, у которых есть запрос arp, говорящий «у кого есть IP-адрес: xxxx», а также «Tell nnnn», где nnnn - это адрес RasPi.

HTH, Дэн


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.