6

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

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

2 ответа2

6

Этот ответ на сайте 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}'
1

Предполагая, что вы на 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, а некоторые другие, если у вас запущены другие службы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .