Encontre o endereço PI de framboesa na rede local

76

Preciso encontrar o endereço IP do Raspberry PI na rede local sem conectar o Raspberry a um monitor. Como faço isso em sistemas Linux ou Mac OS?

J. Costa
fonte
possível duplicata de SSH em pi framboesa sem saber o endereço IP
RPiAwesomeness
O aplicativo Lan Scan no smartphone exibirá todos os dispositivos da sua rede.

Respostas:

90

Todos os endereços MAC dos dispositivos raspberry começaram com B8: 27: EB .

Portanto, nos sistemas * nix , isso pode ser feito executando o seguinte comando:

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

onde 192.168.1.*será sua máscara de rede local. Você receberá uma resposta como:

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

192.168.1.179 é o endereço IP do Raspberry Pi na sua rede.

Se você estiver em um sistema Mac , poderá usar o Homebrew para instalar o nmap :

brew install nmap

No Windows , você pode usar o Wireshark e usar o seguinte filtro de exibição:

eth.addr[0:3] == B8:27:EB
J. Costa
fonte
2
Ou com menos canos:nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
ripat
2
Obrigado @ripat, isso é muito mais conciso - atualizado! Um pequeno detalhe, você precisa executar como administrador ou o nmap não exibirá o endereço MAC.
J. Costa
3
Você não apreciaria a importância dessa resposta até tentar localizar o raspberrypi sem cabeça em um ambiente de escritório em que os IPs sejam distribuídos usando DHCP. Cheers for this @ripat
Voke Ransom Anighoro
1
Essa resposta não funcionou para mim, pois o nmap não estava cuspindo os nomes de host para mim. No entanto, isso me inspirou a procurar por portas ssh abertas com o nmap e isso me permitiu encontrar o pi: sudo nmap -p 22 --open -sV 192.168.0.0/24 pela postagem desse cara .
Ross Rogers
o "sudo nmap -sP 192.168.1.0/24" não é suficiente (ele me cansou)?
Marian Paździoch
48

Se você estiver executando o MacOS ou Linux, tente este:

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

No Windows, você pode usar:

arp -a | findstr b8-27-eb
mrded
fonte
3
Esta solução é muito mais rápida que uma solução nmap!
Ryanm
Esta solução funcionou para mim, ao contrário da solução nmap, que forneceu apenas parte da lista.
Wilbert
7
Isso mostrará apenas os hosts que entraram em suas tabelas arp, e às vezes perde os silenciosos. Pode ser útil fazer uma varredura nmap uma vez primeiro.
3111 Joseph Sheedy
Pode, mas para mim isso nunca falhou. Além disso, é uma primeira tentativa fácil.
amenthes
Obrigado por isso. Eu o modifiquei um pouco e uso arp -n | awk '/b8:27:eb/ {print $1}'agora.
0x01
8

Eu uso o mDNS / Bonjour para dar ao meu Pi um nome local como pi.local. Eu não preciso saber o seu endereço IP e isso funciona para atalhos e quando você precisa incorporar um link ...

Como e por que atribuir um nome local ao seu Pi

dfowler7437
fonte
Impressionante! Eu costumava mexer /etc/hostslocalmente para obter essa funcionalidade no meu desktop, essa é uma solução MUITO melhor! Muito obrigado pelo ponteiro!
0x01
7

Se você deseja usar um aplicativo GUI, pode usar a Yakalaferramenta ( https://github.com/mozcelikors/yakala ) para Debian / Ubuntu. Essa ferramenta ajuda você a pesquisar não apenas as redes Tipo B e Tipo C disponíveis, mas também ajuda a fazer o SSH direto na rede:

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

ou

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

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

Disclaimer: Eu sou o criador de Yakala. Quaisquer sugestões / erros são levados muito a sério.

mozcelikors
fonte
1
As redes de classe foram abandonadas em 1993, há muito tempo.
Lightness Races em órbita
O que são redes classfull?
Denis
6

Por padrão, o nome da framboesa é raspberrypi. Você pode simplesmente 'ping raspberrypi' e a resposta de eco do ICMP fornece o endereço IP. Funcionou para mim. Verifique se o servidor DHCP está acessível, pois a NIC da framboesa está por padrão no modo de cliente DHCP. Caso contrário, a framboesa recebe um endereço APIPA.

jan
fonte
4

No linux e no MAC, você também pode digitar "arp - a" no terminal e obter uma lista de dispositivos conectados, procure aquele com o B8, por exemplo: 192.168.4.5 @ B8 ... será o IP de raspberry pi.

FreshTendrils
fonte
3

Ou você pode acessar o seu roteador através do navegador e encontrar o seu dispositivo Android - quase todas as interfaces gráficas do roteador têm um serviço onde você pode verificar todos os dispositivos atualmente conectados à sua rede.

FLBKernel
fonte
3

Se você executa o MacOS, usa o PiFinder , é um aplicativo que informa o IP de um Raspberry Pi na sua rede.

FreshTendrils
fonte
3

Eu uso o aplicativo gratuito Fing no meu smartphone Android. Ele examina a rede e mostra os dispositivos conectados por tipo, incluindo Raspberry Pi, além de verificar as portas disponíveis. Útil para ver se SSH, web ou VNC estão ativados e em execução.

Tuxpilgrim
fonte
2

Copie o seguinte no seu 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

Por favor, adapte 192.168.1. à sua rede individual.

A saída será mais ou menos assim:

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

192.168.1.109 seria o IP do seu Raspberry Pi… :)

Lobo
fonte
2

Coloque isso em pi.php no seu servidor da web:

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

Pode ser necessário criar o arquivo pi no servidor da web com permissões de gravação para o servidor.

Colocar

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

em /etc/rc.local no seu pi.

Obtenha o IP do seu pi navegando em http: // yourwebserver / pi

darsie
fonte
2

Ao usar uma nova instalação do NOOBS ou Raspbian, o nome do host padrão é "raspberrypi" e em algumas configurações de rede (ou seja, se o mDNS estiver em uso e configurado), você poderá usar "raspberrypi.local". Outra opção é executar arp -ae procurar raspberrypi

NOTA: Isso não funcionará para todas as instâncias.

linuxgnuru
fonte
Essa resposta parece misturar várias coisas: diferentes versões de IP, DNS e talvez mDNS. A .localpossibilidade de utilização geralmente não depende do IPv6, e também de não haver um roteador presente. Quando o suporte a mDNS estiver disponível, o pi-name.local será resolvido, IPv6 ou não. Alguns roteadores domésticos também usam .local como seu domínio DNS local, novamente isso é independente do IPv6 e depende do modelo do roteador. Alguns roteadores domésticos usam domínios diferentes, como pi-name.fritz.box.
TheDiveO
2

Meu roteador atribui aos sistemas recém-descobertos um endereço IP a partir de 192.168.1.2, sequencialmente. Passei por todos os sistemas em minha casa um dia e reservei endereços para eles.

Dessa forma, quando eu crio um novo sistema, é provável que seu endereço IP seja 192.169.1.18.

Outra maneira de usar o console serial. Você pode usar um programa de terminal serial para fazer login no seu raspberry pi. Eu sugeriria o uso da configuração 8N1 (8 bits, sem paridade, 1 bit de parada) com uma velocidade (taxa de transmissão) de 115.200. Você precisará de um conector USB para serial (3V3).

NomadMaker
fonte
1

Presumo que você não possa se conectar ao seu PI, caso contrário, você saberia o seu IP.

Se você for para a página do roteador (geralmente algo como 192.168.1.1 no seu navegador), deverá ter uma seção com os dispositivos já conectados. Você pode tentar conectar e desconectar o PI (e um dispositivo deve aparecer / desaparecer da lista)

javirs
fonte
1

'Fing' ou 'Net Analyzer' no Android. Mostra toda a sua rede.

Andy Anderson
fonte