Sådan opretter du en Raspberry Pi som et trådløst adgangspunkt
Raspberry Pi kan forbinde til et Wi-Fi-netværk ved hjælp af en USB-dongle, men ved hjælp af samme dongle kan du også gøre din Raspberry Pi til et trådløst adgangspunkt. Når den er konfigureret korrekt, vil dette tillade andre trådløse enheder at oprette forbindelse til din Pi, og du kan eventuelt rute enhver trafik ud via Ethernet-porten og videre til internettet (via routeren fra din internetudbyder).
Men før man ser på de skridt, der er nødvendige for at få det til at fungere, et advarselsord. Den nødvendige konfiguration kan være lidt kompleks, og hvis tingene ikke fungerer som de burde så kan fejlfinding problemet være svært. Også for at dette fungerer korrekt, har du brug for en WiFi USB dongle, der kan fungere som et adgangspunkt. Det bedste sted at finde oplysninger om din særlige dongle og Raspberry Pi er på den integrerede Linux Raspberry Pi Wi-Fi adaptere side.
For at konfigurere et hotspot kræves flere trin:
- Konfigurer den trådløse adapter med en statisk IP-adresse
- Installer og konfigurer en DHCP-server
- Installer og konfigurer adgangspunktdemonen
- Konfigurer IP-routing mellem trådløst og Ethernet
I dette eksempel bruger det trådløse netværk adresseområdet 192.168.42.n
og det kablede Ethernet vil bruge adressesortimentet 192.168.1.n
Konfigurer den trådløse adapter med en statisk IP-adresse
Rediger "/ etc / network / interfaces" og tilføj den statiske IP-adresse information for wlan0
. Du kan lære om statiske IP-adresser i vores SSH og statiske IP-adresse tutorial.
sudo nano / etc / network / interfaces
Anbring et "#" tegn foran alle de linjer, der nævner wlan0
og wpa
, bortset fra " allow hotplug wlan0
". Tilføj derefter følgende linjer til filen:
iface wlan0 inet statisk adresse 192.168.42.1 netmask 255.255.255.0
Den nederste halvdel af filen vil nu se sådan ud:
Genstart nu.
Installer og konfigurer en DHCP-server
Installer DHCP-serveren:
sudo apt-get installer isc-dhcp-server
Du kan sikkert ignorere eventuelle fejl om ikke at kunne starte DHCP-serveren på dette tidspunkt. Rediger nu sin konfigurationsfil:
sudo nano /etc/dhcp/dhcpd.conf
Tilføj et "#" tegn foran linjene " option domain-name
" som dette:
#option domænenavn "example.org"; #option domænenavn-servere ns1.example.org, ns2.example.org;
Fjern "#" tegn foran " authoritative;
"Erklæring som denne:
# Hvis denne DHCP-server er den officielle DHCP-server til det lokale # netværk, bør det autoritative direktiv ikke kommenteres. autoritative;
Tilføj nedenstående linjer nederst i filen:
subnet 192.168.42.0 netmask 255.255.255.0 {interval 192.168.42.10 192.168.42.50; option broadcast-adresse 192.168.42.255; option routere 192.168.42.1; standard leasingtid 600; max leasingtid 7200; option domænenavn "lokal"; option domænenavn-servere 8.8.8.8, 8.8.4.4; }
Afslut fra nano med "Ctrl + X".
Gør den trådløse adapter standard til DHCP-anmodningen:
sudo nano / etc / default / isc-dhcp-server
Skift " INTERFACES=""
" til " INTERFACES="wlan0"
"
Afslut fra nano med "Ctrl + X".
Genstart DHCP-serveren:
sudo service isc-dhcp-server genstart
Installer og konfigurer adgangspunktdemonen
Installer hostapd:
sudo apt-get install hostapd
Rediger hostapd-konfigurationsfilen og opret et trådløst netværk:
sudo nano /etc/hostapd/hostapd.conf
Tilføj følgende linjer:
interface = wlan0 driver = nl80211 # driver = rtl871xdrv ssid = MyPi hw_mode = g kanal = 6 macaddr_acl = 0 auth_algs = 1 ignore_broadcast_ssid = 0 wpa = 2 wpa_passphrase = raspberry wpa_key_mgmt = WPA-PSK wpa_pairwise = TKIP rsn_pairwise = CCMP
Dette vil oprette et adgangskodebeskyttet netværk kaldet MyPi
på kanal 6 med password raspberry
.
Fortæl værtssted hvor du skal finde sin konfigurationsfil ved at indstille standardplaceringen:
sudo nano / etc / default / hostapd
Fjern "#" foran " DAEMON_CONF
" og ændre linjen for at læse:
DAEMON_CONF = "/ etc / hostapd / hostapd.conf"
Konfigurer IP-routing mellem trådløst og Ethernet
Rediger " /etc/sysctl.conf
" for at aktivere IP-videresendelse:
sudo nano /etc/sysctl.conf
Find linjen, der læser " Uncomment the next line to enable packet forwarding for IPv4
" og uncomment den næste linje som denne:
# Ukomment næste linje for at aktivere pakkeforsendelse til IPv4 net.ipv4.ip_forward = 1
Kør følgende kommando for at aktivere videresendelse nu:
sudo sh -c "echo 1> / proc / sys / net / ipv4 / ip_forward"
Nu drej Pi til en router med følgende kommandoer:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo iptables -A FORWARD -i eth0 -o wlan0 -m state -state RELATERET, OPSTÅET -J ACCEPT sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPTERE
Og gem routingstabellerne i filen " /etc/iptables.ipv4.nat
"
sudo sh -c "iptables-save> /etc/iptables.ipv4.nat"
Rediger " /etc/network/interfaces
":
sudo nano / etc / network / interfaces
Og tilføj følgende linje til slutningen af filen. Denne linje vil gendanne routingstabellen, når Pi'en startes:
pre-up iptables-gendan </etc/iptables.ipv4.nat
Du skal nu genstarte din Pi og teste den trådløse adgang ved hjælp af en bærbar computer, smartphone, tablet eller anden Wi-Fi-aktiveret enhed.
Fejlfinding
Da denne konfiguration er ret kompleks, kan det nemt gå galt. Hvis du løber i problemer, skal du dobbeltklikke alle konfigurationsfiler. Det er også værd at køre på Pi, da det er muligt for USB-donglen at komme ind i en udefineret tilstand.
Du har muligvis bemærket, at filen "hostapd.conf" havde to " driver=
" linjer, og en af dem blev kommenteret. Hvis din USB Wi-Fi dongle bruger nl80211
driveren, skal ovenstående konfiguration fungere OK. Men hvis din dongle bruger rtl871xdrv
som den gør for adaptere baseret på Realtek RTL8188CUS chipset, så er der nogle ekstra trin, der er nødvendige.
Først installer iw
pakken:
sudo apt-get installere iw
Kør nu følgende kommando:
iw liste
Hvis output af kommandoen er " nl80211 not found
", skal du bruge rtl871xdrv
driveren. Men du vil også have brug for en særlig version af hostapd.
Adafruit har en præ-kompileret version af hostapd til rtl871xdrv
driveren. For at installere det skal du bruge følgende kommandoer:
wget http://www.adafruit.com/downloads/adafruit_hostapd.zip unzip adafruit_hostapd.zip sudo mv / usr / sbin / hostapd /usr/sbin/hostapd.ORIG sudo mv hostapd / usr / sbin sudo chmod 755 / usr / sbin / hostapd
Hvis du har spørgsmål om at gøre din Pi til et trådløst adgangspunkt, så spørg nedenstående, og vi vil gøre vores bedste for at hjælpe!