Ik moet het Raspberry PI IP-adres op het lokale netwerk vinden zonder de Raspberry op een monitor aan te sluiten. Hoe doe ik het op Linux- of Mac OS-systemen?

Opmerkingen

Antwoord

Alle MAC-adressen van Raspberry-apparaten begonnen met B8: 27: EB (voor RPi4 B beginnen ze met dc:a6:32, vervang waar van toepassing).

Dus op * nix systemen, kan dit worden bereikt door het volgende commando uit te voeren:

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

waarbij 192.168.1.* uw lokale netwerkmasker is. Je krijgt een antwoord als:

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

De 192.168.1.179 is het Raspberry Pi IP-adres op je netwerk.

Als je dat bent op een Mac systeem kun je Homebrew gebruiken om te installeren nmap :

brew install nmap 

Op Windows , kunt u Wireshark gebruiken en het volgende weergavefilter gebruiken:

eth.addr[0:3] == B8:27:EB 

Opmerkingen

  • Of met minder buizen: nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
  • Bedankt @ripat, dat is veel meer beknopt – bijgewerkt! Een klein detail, je moet als administrator draaien, anders geeft de nmap het MAC-adres niet weer.
  • Je zou het belang van dit antwoord pas waarderen als je hebt geprobeerd je raspberrypi zonder hoofd te lokaliseren in een kantooromgeving waar IP ‘ s worden uitgedeeld met behulp van DHCP. Proost hiervoor @ripat
  • Dit antwoord werkte niet ‘ voor mij aangezien nmap niet ‘ hostnamen voor mij. Het inspireerde me echter om te zoeken naar open ssh-poorten met nmap en dat stelde me in staat om de pi: sudo nmap -p 22 --open -sV 192.168.0.0/24 te vinden guy ‘ s bericht .
  • isn ‘ t ” sudo nmap -sP 192.168.1.0/24″ genoeg (het werkte voor mij)?

Antwoord

Als je “MacOS of Linux draait, probeer dan deze:

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

In Windows kun je gebruik:

arp -a | findstr b8-27-eb 

Op RPi 4B moet u een andere tekenreeks gebruiken voor vergelijking (dc:a6:32:be:95). U kunt controleer het op uw RPi door

ip -br link 

Er zullen vermeldingen zijn voor elke netwerkkaart. eth0 is kabelinternet, wlan0 is de wifi.

Reacties

  • Deze oplossing is veel sneller dan een nmap-oplossing!
  • Deze oplossing werkte voor mij, in tegenstelling tot th e nmap-oplossing die slechts een deel van de lijst gaf.
  • Dit toont alleen hosts die in je arp-tabellen zijn terechtgekomen, dus mist soms de rustige. Het kan helpen om eerst een nmap-scan uit te voeren.
  • Misschien wel, maar voor mij is dit nooit mislukt. Bovendien is het ‘ een gemakkelijke eerste poging.
  • Bedankt hiervoor. Ik heb het enigszins aangepast en gebruik nu arp -n | awk '/b8:27:eb/ {print $1}'.

Antwoord

Ik gebruik mDNS / Bonjour om mijn Pi een lokale naam te geven, zoals pi.local. Ik hoef het IP-adres niet te weten en dit werkt voor snelkoppelingen en wanneer u een link moet insluiten …

Hoe en waarom toewijzen een lokale naam voor je Pi

Opmerkingen

  • Geweldig! Vroeger rommelde ik met /etc/hosts lokaal om deze functionaliteit op mijn bureaublad te krijgen, dit is een VEEL betere oplossing! Heel erg bedankt voor de aanwijzer!

Antwoord

Als je er een GUI-applicatie voor wilt gebruiken, kun je de Yakala tool ( https://github.com/mozcelikors/yakala ) voor Debian / Ubuntu. Deze tool helpt je niet alleen te zoeken naar beschikbare Type B- en Type C-netwerken, maar helpt je ook om rechtstreeks SSH in het netwerk te krijgen:

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

of

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

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

Disclaimer: Ik ben de maker van Yakala. Alle suggesties / bugs worden zeer serieus genomen.

Opmerkingen

  • Klassiek netwerken werd stopgezet in 1993, wat erg lang geleden is.
  • Wat is klassevol netwerken?

Antwoord

Standaard is de naam van de raspberry raspberrypi.U kunt gewoon “raspberrypi pingen” en het ICMP-echoantwoord geeft u het IP-adres. Het werkte voor mij. Zorg ervoor dat de DHCP-server bereikbaar is, aangezien de NIC van de Raspberry standaard in de DHCP-clientmodus staat. Anders krijgt de Raspberry een APIPA-adres.

Answer

In linux en MAC kun je ook “arp – a” typen in de terminal en je kunt een lijst met aangesloten apparaten krijgen, zoek degene met B8 erin, bijvoorbeeld: 192.168.4.5 @ B8 … wordt de Raspberry pi IP.

Antwoord

Ik gebruik de gratis Fing -app op mijn Android-smartphone. Het scant het netwerk en toont de aangesloten apparaten op type, inclusief Raspberry Pi, en scant beschikbare poorten. Handig om te zien of SSH, web of VNC zijn ingeschakeld en actief.

Answer

Of u kunt via de browser toegang krijgen tot uw router en uw Android-apparaat vinden – bijna elke router-GUI heeft een service waar u alle apparaten kunt controleren die momenteel op uw netwerk zijn aangesloten.

Answer

Als je MacOS draait, gebruik dan PiFinder , het is een applicatie die je het IP-adres van een Raspberry Pi op je netwerk vertelt.

Antwoord

Kopieer het volgende naar uw 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 

Pas 192.168.1. aan uw individuele netwerk aan.

De output zal er ongeveer zo uitzien:

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

192.168.1.109 zou het IP-adres van je Raspberry Pi zijn … 🙂

Antwoord

Zet dit in pi.php op uw webserver:

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

Mogelijk moet u het bestand pi op uw webserver maken met schrijfrechten voor uw web server.

Zet

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

in /etc/rc.local op uw pi.

Haal het IP-adres op van uw pi door te bladeren door http://yourwebserver/pi

Antwoord

Wanneer u een nieuwe installatie van NOOBS of Raspbian gebruikt, is de standaardhostnaam “raspberrypi” en in sommige netw ork-configuraties (bijv. als mDNS in gebruik en geconfigureerd is), zou je “raspberrypi.local” kunnen gebruiken. Een andere optie is om arp -a uit te voeren en raspberrypi te zoeken

OPMERKING: dit werkt niet voor elke instantie.

Opmerkingen

  • Dat antwoord lijkt verschillende dingen door elkaar te halen: verschillende IP-versies, DNS en misschien mDNS. Of .local kan meestal niet worden gebruikt ‘ t is afhankelijk van IPv6, en ook niet van het hebben van een router. Als mDNS-ondersteuning beschikbaar is, lost pi-name.local op, IPv6 of niet. Sommige thuisrouters gebruiken ook .local als hun lokale DNS-domein, ook dit is onafhankelijk van IPv6 en hangt af van het routermodel. Sommige thuisrouters gebruiken verschillende domeinen, zoals pi-name.fritz.box.

Antwoord

Mijn router wijst nieuw ontdekte systemen opeenvolgend een IP-adres toe vanaf 192.168.1.2 Ik heb op een dag elk systeem in mijn huis doorlopen en adressen voor hen gereserveerd.

Op die manier is de kans groot dat wanneer ik een nieuw systeem maak, het IP-adres 192 zal zijn .169.1.18.

Een andere manier om de seriële console te gebruiken. U kunt een serieel terminalprogramma gebruiken om in te loggen op uw raspberry pi. Ik zou willen voorstellen om de instelling 8N1 (8-bits, geen pariteitsbit, 1 stopbit) te gebruiken met een snelheid (baudrate) van 115.200. Je hebt een USB-naar-serieel (3V3) connector nodig.

Answer

“Fing” of “Net Analyzer” op Android . Toont je hele netwerk.

Answer

Als je Windows gebruikt, raad ik je aan dit script uit te proberen. Het is meestal gebaseerd op het “arp -a” commando, maar het bespaart je wat extra graafwerk en helpt je wanneer je Raspberry nog niet in de Arp-tabel staat.

Maak een tekstbestand met de volgende inhoud en hernoem het als find_raspberry_pi.bat

@echo off :: This script, run from a Windows (10) machine, finds a Raspberry Pi on local network set raspIp= set myip= set subnet= :: Get IP for local PC for /f "tokens=1-2 delims=:" %%a in ("ipconfig^|find "IPv4"") do set myip=%%b set myip=%myip:~1% echo IP for local PC: %myip% :: Get subnet set subnet=%myip% setlocal enabledelayedexpansion for /l %%a in (1,1,31) do if NOT "!subnet:~-1!"=="." set subnet=!subnet:~0,-1! set subnet=%subnet:~0,-1% setlocal disabledelayedexpansion echo Subnet: %subnet% echo. :top :: Loop through arp table entries and look for Raspberry Pi"s MAC address for /f "tokens=1" %%f in ("arp -a ^| findstr b8-27-eb") do (set raspIp=%%f) if "%raspIp%"=="" ( echo Discovering network... :: Ping all IPs in subnet from 1 to 254 for /L %%N in (1,1,254) do start /b ping -n 1 -w 200 %subnet%.%%N >nul timeout 1 >nul goto :top ) else ( echo Found Raspberry PI with IP: %raspIp% ) echo. pause 

Disclaimers :

  1. Ik ben niet de auteur van het originele script, ik heb het net een beetje aangepast om met een Raspberry Pi te werken. Helaas kan ik de originele bijdrager niet vinden.
  2. Het is niet bullet-proof, het zal niet werken als het subnet dat het begint te scannen niet het juiste is.

Toch heb ik het vaak gebruikt en het is een simpele oplossing

Antwoord

In 2020 werkt het geaccepteerde antwoord niet meer omdat de Raspberry Pi wordt geleverd met een andere reeks MAC-adressen. Ik zou gewoon de “nieuwe” MAC als commentaar kunnen toevoegen, maar de string zou bij elk model steeds weer kunnen veranderen. Hier is iets dat meer toekomstbestendig is.

$ sudo nmap -sP 192.168.150.0/24 |grep "Raspberry Pi Trading" -B2 Nmap scan report for pi4-01.lan (192.168.150.186) Host is up (0.037s latency). MAC Address: DC:A6:32:1B:35:6A (Raspberry Pi Trading) 

Het belangrijkste verschil hierboven: we gaan niet uit van een MAC-patroon, we grepen alleen voor de (samenvatting), aangezien dit label wordt geleverd door nmap zelf. Omdat nmap voortdurend wordt bijgewerkt, bevat het interne tabellen met Raspberry Pi MAC-adressen (of gebruikt andere criteria om te detecteren) en we kunnen aannemen dat blijft werken.

CAVEAT: Als uw scan niet alle Pis identificeert waarvan u weet dat ze op het netwerk en herhaal de scan – tot 10 keer. Een Pi met netwerk Power Management:on reageert mogelijk niet altijd op een scan.

Energiebeheer kan zijn een probleem voor u als u naar meerdere Pis scant op een LAN, aangezien herhaalde scans één Pi kunnen detecteren maar niet een andere . In dat geval herhaalt u de scans en zoekt u naar verschillen . (Om te bevestigen of Power Management op een Pi is ingeschakeld, ssh naar de Pi en voer het volgende uit: /sbin/iwconfig wlan0|grep Management)

Answ er

Ik neem aan dat je geen verbinding kunt maken met je PI, anders zou je het IP-adres weten.

Als je naar je routerpagina gaat (meestal iets zoals 192.168.1.1 in uw browser) daar zou u een sectie moeten hebben met de reeds verbonden apparaten. U kunt proberen de PI aan te sluiten en los te koppelen (en één apparaat zou uit de lijst moeten verschijnen / verdwijnen)

Antwoord

Probeer dit first:

arp -a | grep -E --ignore-case "b8:27:eb|dc:a6:32" 

De twee hexadecimale strings (b8:27:eb|dc:a6:32) in dit commando weerspiegelen de twee OUI -waarden gebruikt door ” The Foundation ” voor de productie van alle RPi-apparaten – via RPi ver 4B op het moment van schrijven. Als uw RPi niet “t in uw arp-cache deze opdracht levert niets nuttigs op. Als dat het geval is, maak dan het volgende bestand in uw favoriete editor, en sla het op / schrijf het als pingpong.sh:

#!/bin/sh : ${1?"Usage: $0 ip subnet to scan. eg "192.168.1.""} subnet=$1 for addr in `seq 0 1 255 `; do ( ping -c 3 -t 5 $subnet$addr > /dev/null ) & done arp -a | grep -E --ignore-case "b8:27:eb|dc:a6:32" 

maak het uitvoerbaar en voer het uit (gebruik uw netwerkadres hier, niet noodzakelijk 192.168.1. ):

$ chmod 755 pingpong.sh $ ./pingpong.sh 192.168.1. 

Uw resultaten kunnen er als volgt uitzien :

raspberrypi3b.local (192.168.1.131) at b8:27:eb:1:2:3 on en0 ifscope [ethernet] raspberrypi4b.local (192.168.1.184) at dc:a6:32:2:3:4 on en0 ifscope [ethernet] 

In dit geval verschijnt de hostnaam met dank aan mDNS. Als je mDNS / avahi / etc niet / hoeft te gebruiken, zal de hostnaam worden vervangen door het teken: ?.

Antwoord

Raspbian gebruikt een ding genaamd mDNS, waarmee je toegang hebt tot je Raspberry Pi via een hostnaam raspberrypi.local.

Dus je hoeft niet “Je hoeft niet meer naar een IP-adres te zoeken, maak gewoon verbinding als volgt:

ssh [email protected] 

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *