Jeg har fulgt (hvilken som helst av hundrevis) veiledning, og det fungerer ikke.
Hvordan setter jeg opp nettverk/WiFi/statisk IP-adresse på Raspberry Pi?
(Dette er en Dorothy Dixer for forhåpentligvis å fange opp hundrevis av lignende spørsmål.).
Hvis du bruker en Ethernet -tilkobling med en ruter, bør det ikke være behov for konfigurasjon, og det skal fungere ut av esken. Pi3B + og Pi4 har Gigabit Ethernet grensesnitt og vil bare fungere på en Gigabit Ethernet (1000BASE-T) ruter hvis en 8-leder CAT 5E-kabel brukes. Tidligere Pi-modeller som bare støttet 100BASE-T fungerer over 6-leder kabel.
MERK Pi3 / Pi Zero W innebygd WiFi støtter ikke 5GHz-nettverk, og kan ikke koble til Ch 12,13 på 2.4GHz-nettverk før trådløst reguleringsdomene er angitt.
WiFi på 5GHz-aktiverte enheter er deaktivert inntil wireless regulatory domain er angitt (Pi4B, Pi3B+, Pi3A+).
- Domenet kan angis gjennom
Raspberry Pi Configuration
(rc_gui),raspi-config
eller ved å settecountry=
til en passende ISO 3166 alpha2 landskode i/etc/wpa_supplicant/wpa_supplicant.conf
. Hvis du bruker WiFi og brukergrensesnittet satt opp ved å følge Foundation Guidelines. Hvis du bruker WiFi fra kommandolinjen, konfigureres det ved å følge Foundation Guidelines. Dette er den eneste måten å sette opp et nettverk som ikke senderSSID
. Dette kan også brukes til å sette opp et "hodeløst" system, f.eks. ved hjelp av en seriell konsollkabel, men det er MYE enklere hvis du kan låne en skjerm og tastatur for oppsett. Se nedenfor for en annen mulig metode ved hjelp av en Ethernet-kabel til en PC.Hodeløst Raspbian WiFi-oppsett ###.
Raspbian, siden mai 2016, sjekker innholdet i oppstartskatalogen for en fil som heter
wpa_supplicant.conf
, og vil kopiere filen til/etc/wpa_supplicant
, og erstatte enhver eksisterendewpa_supplicant.conf
-fil som kan være der. Filen i oppstartskatalogen fjernes deretter. Dette kan brukes til å aktivere hodeløst oppsett ved hjelp avwpa_supplicant.conf
-innstillingene som er beskrevet nedenfor. (Du vil sannsynligvis også ønske å aktiveressh
). Hva er IP-adressen min?Hvis du bare vil vite
IP-adressen
din Pi bruker, skriv innhostname -I
på kommandolinjen. SSHFra og med utgivelsen i november 2016 har Raspbian SSH-serveren deaktivert som standard. Du må aktivere den manuelt. Skriv inn
sudo raspi-config
i terminalen, velg førstavanserte alternativer
, naviger deretter tilssh
, trykkEnter
og velg Aktiver eller deaktiver ssh-server. For hodeløst oppsett kan SSH aktiveres ved å plassere en fil med navnet 'ssh', uten noen utvidelse, på oppstartspartisjonen på SD-kortet. NettverksfilerHvis du kjører en nyere Raspbian
/etc/network/interfaces
skal være som nedenfor. Hvis du har endret det, SETT DET TILBAKE (Eller påStretch
bare slett det - det gjør faktisk INGENTING).# interfaces(5) fil som brukes av ifup(8) og ifdown(8) # Vær oppmerksom på at denne filen er skrevet for å brukes med dhcpcd # For statisk IP, se /etc/dhcpcd.conf og man dhcpcd.conf; # Inkluder filer fra /etc/network/interfaces.d: source-directory /etc/network/interfaces.d---------- Filen `/etc/wpa_supplicant/wpa_supplicant.conf` vil bli opprettet/modifisert av de anbefalte oppsettmetodene, men kan settes opp for hånd. Nyere Raspbian har et alternativ i `raspi-config` for å angi SSID og passord. Det bør inneholde noe som følgende:-
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=AU
network={
ssid="ESSID"
psk="Your_wifi_password"
}
Hvis du trenger å koble til et privat nettverk (dvs. ingen broadcast SSID
), inkluder linjen scan_ssid=1
i network={⋯}
.
MERK Hvis du vil koble til forskjellige nettverk (f.eks. på jobben eller hjemme), kan du inkludere flere nettverk={⋯}
-oppføringer.
Hvis du har tilgang til flere nettverk og ønsker å koble til et bestemt nettverk, inkluderer du linjen
priority=100
inne inetwork={⋯}
-oppføringen.
Du kan velge en annen prioritet for hvert nettverk, det høyest prioriterte tilgjengelige nettverket vil bli valgt; standardinnstillingen er 0. *Det finnes mange andre alternativer som kan brukes, seman wpa_supplicant.conf
. Merknader om foreldede operativsystemerJessie inkluderer ikke
10-wpa_supplicant
-kroken for å administrere WiFi-grensesnitt, så koblinger til wpa_supplicant er nødvendig. Disse innstillingene er ikke kompatible med Predictable Network Interface Names./etc/network/interfaces
som brukes av Jessie bør være:- {{589842}}
# interfaces(5) file used by ifup(8) and ifdown(8)
# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
MERK å kalle dhcp i /etc/network/interfaces
vil deaktivere dhcpcd
.
Stretch
introduserte1 predictable network interface names som har vært brukt i andre distribusjoner i noen tid.
Nettverksgrensesnitt vil ha navn dannet av et prefiks en
- Ethernet eller wl
- wlan etterfulgt av x
som indikerer MAC
og MAC
, for eksempel enxb827eb123456
eller wlx00c140123456
.
Den innebygde WiFi på Pi4, Pi3 og PIZeroW som er tilkoblet via sdio
vil imidlertid bruke navnet wlan0
.
Dette kan være fordelaktig for de som bruker flere nettverksgrensesnitt, men for de fleste Pi-brukere vil et enkelt Ethernet- og WiFi-grensesnitt gjøre liten forskjell. De tidligere navnene eth0
og wlan0
kan gjenopprettes hvis du sender net.ifnames=0
på kjernens kommandolinje i /boot/cmdline.txt
.
Det finnes et alternativ i raspi-config
for å aktivere forutsigbare nettverksgrensesnittnavn.
1. Av en eller annen uforståelig grunn bestemte stiftelsen seg for å "Deaktivere forutsigbare nettverksgrensesnittnavn for Ethernet-enheter" bare 3 uker etter å ha introdusert den etterlengtede funksjonen. Det er et alternativ under Advanced Options
i raspi-config
for å bytte denne innstillingen.dhcpcd
-konfigurasjondhcpcd
for å administrere nettverksgrensesnitt. Dette er automatisk, og de fleste brukere trenger ikke gjøre mer enn å spesifisere SSID og passord for trådløse nettverk.
Det er mulig å konfigurere hvordan dhcpcd
fungerer ved å legge inn alternativer i /etc/dhcpcd.conf
; se man dhcpcd.conf
. Det finnes en god artikkel om dhcpcd
på https://wiki.archlinux.org/index.php/dhcpcd.
Det følgende beskriver noen av de vanligste konfigurasjonene:-
Fallback-profilDet er mulig å konfigurere en statisk profil i dhcpcd
og falle tilbake til den når DHCP-leien mislykkes. Dette er spesielt nyttig for hodeløse maskiner, der den statiske profilen kan brukes som "gjenopprettingsprofil" for å sikre at det alltid er mulig å koble til maskinen. Den statiske profilen konfigureres som alle andre statiske IP-adresser.
# definere statisk profilHindre `dhcpcd` fra å konfigurere et grensesnitt ------- Dette gjøres ofte for å gjøre det mulig for Pi å fungere som et [Access Point](https://www.raspberrypi.org/documentation/configuration/wireless/access-point.md) (som må konfigureres ved hjelp av andre filer), mens normal `DHCP`-konfigurasjon tillates på andre grensesnitt. Legg til `denyinterfaces wlan0` på slutten av filen (men over alle andre grensesnittlinjer som er lagt til). Hindre `dhcpcd` fra å konfigurere en gateway på et grensesnitt. ------- Hvis du vil at et grensesnitt ikke skal installere noen standardruter (ofte brukt i forbindelse med en statisk IP-adresse), spesifiserer duprofile static_eth0 static ip_address=⋯ static routers=⋯ static domain_name_servers=⋯ # fallback to static profile on eth0 interface eth0 fallback static_eth0
nogatewayVertsspesifikk konfigurasjon ------- `dhcpcd` kan konfigurere grensesnitt avhengig av vertsnettverket. Dette bruker Address Resolution Protocol (ARP) for å undersøke verter basert på MAC- eller IP-adresse før DHCP-oppløsning.
grensesnitt bge0 arping 192.168.0.1Du kan øke hastigheten på DHCP ved å deaktivere ARP-søking hvis du ikke bruker disse funksjonene og har et enkelt nettverk.# My specific 192.168.0.1 network profile dd:ee:aa:dd:bb:ee static ip_address=192.168.0.10/24 # A generic 192.168.0.1 network profile 192.168.0.1 static ip_address=192.168.0.98/24
noarpBruk forskjellige wpa_supplicant-filer ------- Det er mulig å konfigurere dhcpcd til å bruke forskjellige wpa_supplicant.conf-filer for et bestemt trådløst grensesnitt. Opprett en fil med navnet `wpa_supplicant-"$interface".conf` i `/etc/wpa_supplicant/`, f.eks. vil `wpa_supplicant-wlan0.conf` bare brukes av `wlan0`. `/etc/wpa_supplicant/wpa_supplicant.conf` vil bli brukt for alle andre trådløse grensesnitt. ---------- Koble en datamaskin til Pi ======= Nyere versjoner av Raspbian (som bruker `dhcpcd`) tillater `ssh` å fungere over en `link-local`-adresse og `avahi` (som er en zeroconf-implementering) gjør det mulig for programmer å oppdage verter som kjører på et lokalt nettverk. Dette betyr at du kan koble Pi til en datamaskin (med en Ethernet-kabel) eller en lokal nettverksruter og koble til uten å vite IP-adressen. Du kan enkelt koble til fra Linux og OS X med `ssh [email protected]` (standard vertsnavn er `raspberrypi`) Dette skal fungere med populære GUI `ssh`-programmer. Dette er noen ganger problematisk med noen versjoner av Windows og nettverk som bruker .local på en ikke-standard måte. (Se https://en.wikipedia.org/wiki/.local) MERK `.local`-oppløsning fungerer ikke alltid, f.eks. i `rsync`. Følgende skal oppløse IP (og kan inkluderes i `bash`-skript) `RemotePi=$(getent hosts vertsnavn.local | awk '{ print $1 }')` Hvis systemet ditt ikke har `getent` for å forespørre `hosts`, f.eks. macOS, kan du bruke følgende:- `RemotePi=$(arp -n vertsnavn.local | awk '{x = $2; gsub(/[()]/, "", x); print x }')` Hvis du har flere Pi, må du sørge for at hver Pi har et unikt vertsnavn. Du kan bruke en crossover-kabel, men du trenger ikke en (de fleste moderne grensesnitt oppdages automatisk). En ulempe med direkte tilkobling er at Pi ikke har tilgang til Internett og at datoen ikke blir satt. Du kan kopiere datoen fra verten ved å kjøre `ssh [email protected] sudo date -s$(date -Ins) ` før tilkobling. Omfang: ------ > * Denne opplæringen handler om å sette opp en normal Raspbian-installasjon for å få tilgang til Internett ved hjelp av den medfølgende programvaren. Den dekker også tilkoblinger til andre datamaskiner på samme nettverk*. Det er først og fremst rettet mot å hjelpe nye brukere som sliter med å få Pi (spesielt WiFi) til å fungere.
Det dekker IKKE:-
- Andre nettverksadministratorer.
- Kjøring av avansert nettverk på Pi (f.eks.
DHCP
-servere, Tunneling, VPN, Access Point).- Bruk av
ipv6
(selv om du har etipv6
-nettverk, bør dette fungere).- Alternative nettverksoppsett. (Det finnes mange forskjellige måter å sette opp nettverk på).
For en statisk IP-adresse på en Ethernet-tilkobling:
sudo nano /etc/dhcpcd.conf
.
Skriv inn følgende linjer øverst i filen:
interface eth0
static ip_address=192.168.1.XX/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
sudo omstart
Dette må gjøres for den siste Jessie-oppdateringen. /etc/network/interfaces
skal være i fred. Åpne nettleseren din og skriv inn ruteradressen din (192.168.1.1 for de fleste) og sjekk hjemmenettverket ditt for å sikre at Raspberry Pi vises som ' Statisk '.
Kort og idiotsikker metode hvordan du gjør dette med:
Dette vil sette en fast IP og aktivere ssh-demonen:
/boot/cmdline.txt
og legg til ip=192.168.1.20
på slutten av linjen./boot/ssh
.ssh [email protected]
passordet er raspberry
. Bruk Putty på Windows for å koble til via ssh.Jeg bruker dette for å få tilgang til Raspbian Jessie og Stretch som starter opp uten tilkoblet skjerm, bare med strøm og Ethernet. Etter å ha fått tilgang til det med et ssh-skall kan jeg fortsette oppsettet.
Etter denne behandlingen hadde Raspberry PI to IP-er: En fra den faste IP-en du spesifiserte og en fra dhcp-klienten som kjører på Raspberry Pi.
ifconfig
vil vise deg den faste IP-en. Mens det blå pil-ikonet øverst til høyre viser dhcpd-IP-en.