Kan du finde ud af IP-adressen på en Pi på et netværk, hvor du ikke ” har du ikke administratoradgang (f.eks. offentlig Wi-Fi)? Kan du gøre dette via selve Pi?
Svar
På Pi selv kan du finde IP-adressen med ip addr
eller hostname -I
kommandoer eller fra Network Manager GUI (sandsynligvis).
officiel dokumentation har nogle tip til, hvordan man finder IP-adressen andre steder på netværket, men noget i retning af ping raspberrypi.local
kan være den lettere at prøve først, afhængigt af hvilket operativsystem du har bruger på den anden enhed, og hvis du “har ændret dine Pi-indstillinger.
Kommentarer
- Tak for disse forslag. Jeg vil prøve dem.
- Og forresten, tjek min anden spørgsmål på Google Drev (du kan gøre dette via min profil)
Svar
Hvis det lokale netværk er lille (for eksempel lokalt IPv4-segment) eller du kender den nøjagtige pool af IP-adresser af interesse, kan du finde en åben SSH-port på få sekunder ved hjælp af nmap
:
nmap -sS -p 22 192.168.10.0/24
Kommentarer
Svar
Åbn terminalen og type
ifconfig
Output: Det viser IP-adressen til LAN , Wifi osv.
Kommentarer
-
ifconfig
er udfaset. Du bør bedre råd til at brugeip addr
.
Svar
Hvis du har fået adgang til din Pi, kan du bruge dette svar . Hvis ikke, skal du bruge kommandolinjen på din bærbare / linux pc / mac. Nogle af dette fungerer ikke i Windows, medmindre du har installeret cygwin eller bash shell til windows
Prøv dette først:
$ arp -a | grep --ignore-case b8:27:eb
Hvis du får et svar, der ser sådan ud, er der din IP-adresse!
? (192.168.1.131) ved b8: 27: eb: cd: 2f: ff på en0 ifscope [ethernet]
Hvis ikke, så er dine pi “s arp-cache har ikke IP-adressen ( detaljer, hvis du er interesseret ). Vi kan dog stadig finde den med en “brute force” søgning. er flere måder at søge på (f.eks. nmap
), men jeg vil vise en metode ved hjælp af bash
“, fordi det giver mig en mulighed for at øve dig 🙂
Kopier følgende til din editor, gem det som pingpong.sh
og gør det eksekverbart:
#!/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
Kør scriptet med din netværksadresse som det eneste argument (min macs IP er 192.168.1.75, og jeg ved, at min RPi er på det samme netværk):
$ ./pingpong.sh 192.168.1
Bemærk, at scriptet bruger den samme arp
kommando, som vi prøvede tidligere. Hvis det ikke fungerede da, var det fordi din Pi ikke var på din computer s arp cache
. Da vi nu har pinget det, er det i arp cache
.
nmap -n -sP 192.168.10.0/24
(ping-feje, ingen navneopløsning), fordi SSH-tjenesten muligvis ikke er aktiv på Raspberry PI. Faktisk er SSH deaktiveret ved en standardinstallation. På den anden side vil Raspberry PI normalt altid svare på en ping. Hvis du har mange maskiner på netværket, kan du også filtrere ud ved at se på første halvdel af MAC-adresserne (DC: A6: 32 eller B8: 27: EB). Denne nmap-scanning skal udføres fra en anden maskine på det samme netværk.