Kan du finne ut IP-adressen til en Pi i et nettverk hvor du ikke gjør det » t har administratortilgang (f.eks. offentlig Wi-Fi)? Kan du gjøre dette via selve Pi?
Svar
På Pi selv kan du finne IP-adressen med ip addr
eller hostname -I
kommandoer eller fra Network Manager GUI (sannsynligvis).
offisiell dokumentasjon har noen tips om hvordan du finner IP-adressen andre steder i nettverket, men noe som ping raspberrypi.local
kan være det enkleste å prøve først, avhengig av operativsystemet du har bruker på den andre enheten, og hvis du «har endret Pi-innstillingene dine.
Kommentarer
- Takk for disse forslagene. Jeg vil prøve dem.
- Og sjekk forresten min andre spørsmål på Google Drive (du kan gjøre dette via profilen min)
Svar
Hvis det lokale nettverket er lite (f.eks lokalt IPv4-segment) eller du vet den nøyaktige poolen av IP-adresser av interesse, kan du finne en åpen SSH-port på få sekunder ved hjelp av nmap
:
nmap -sS -p 22 192.168.10.0/24
Kommentarer
Svar
Åpne terminalen og skriv
ifconfig
Utgang: Den vil vise IP-adressen til LAN , Wifi osv.
Kommentarer
-
ifconfig
er utfaset. Du bør bedre råd om å brukeip addr
.
Svar
Hvis du har tilgang til Pi-en din, kan du bruke dette svaret . Hvis ikke, bruk kommandolinjen på din bærbare / linux pc / mac. Noen av dette vil ikke fungere i Windows med mindre du har installert cygwin eller bash-skallet for windows
Prøv dette først:
$ arp -a | grep --ignore-case b8:27:eb
Hvis du får et svar som ser slik ut, så er det IP-adressen din!
? (192.168.1.131) ved b8: 27: eb: cd: 2f: ff på en0 ifscope [ethernet]
Hvis ikke, så er din pi «s arp-cache har ikke IP-adressen ( detaljer hvis du er interessert ). Vi kan likevel finne den med et «brute force» -søk. er flere måter å gjøre søket på (f.eks. nmap
), men jeg vil vise en metode som bruker bash
«fordi det gir meg en mulighet for å øve 🙂
Kopier følgende til redigeringsprogrammet, lagre det som pingpong.sh
og gjør det kjørbart:
#!/bin/sh : ${1?"Usage: $0 ip subnet to scan. eg "192.168.0.""} subnet=$1 for addr in `seq 0 1 255 `; do ( ping -c 3 -t 5 $subnet$addr > /dev/null ) & done arp -a | grep b8:27:eb
Kjør skriptet med nettverksadressen din som det eneste argumentet (min macs IP er 192.168.1.75, og jeg vet at RPi er på samme nettverk):
$ ./pingpong.sh 192.168.1
Merk at skriptet bruker den samme arp
kommandoen som vi prøvde tidligere. Hvis det ikke fungerte da, var det fordi Pi-en din ikke var i datamaskinen din s arp cache
. Siden vi nå har pinget det, er det i arp cache
.
nmap -n -sP 192.168.10.0/24
(pingfeie, ingen navneløsning) fordi SSH-tjenesten kanskje ikke er aktiv på Raspberry PI. Faktisk er SSH deaktivert ved en standardinstallasjon. På den annen side vil Raspberry PI normalt alltid svare på en ping. Hvis du har mange maskiner på nettverket, kan du også filtrere ut ved å se på første halvdel av MAC-adressene (DC: A6: 32 eller B8: 27: EB). Denne nmap-skanningen må gjøres fra en annen maskin på samme nettverk.