- Nødvendige komponenter:
- Trin til opsætning af Raspberry Pi som trådløst adgangspunkt:
- Adgang til internettet fra Raspberry Pi's Wi-Fi Hotspot
- Test af Raspberry Pi trådløst adgangspunkt:
Hej fyre, i dag skal jeg vise, hvordan jeg omdanner Raspberry Pi til et trådløst adgangspunkt, som andre enheder kan oprette forbindelse til, grundlæggende gør vi hindbær pi til en trådløs "router". Som en bonus vil jeg også vise os, hvordan vi opsætter det trådløse adgangspunkt, der er oprettet for at give (del) internetadgang til (med) tilsluttede enheder. Så lad os begynde at oprette Wi-Fi Hotspot med Raspberry Pi.
Nødvendige komponenter:
Følgende komponenter er nødvendige for at opsætte en hindbær pi som et trådløst adgangspunkt:
- Hindbær Pi 2
- 8 GB SD-kort
- WiFi USB-dongle
- Ethernet-kabel
- Strømforsyning til Pi.
- Skærm (valgfri)
- Tastatur (valgfrit)
- Mus (valgfri)
Mens Raspberry Pi 3 og Pi zero er bredt tilgængelige og kunne have været brugt, til denne vejledning bruger jeg Raspberry Pi 2, fordi min Pi3 i øjeblikket har travlt med at udføre en tung computervisionsrelateret opgave, som jeg håber at dele i en tutorial her snart. Denne procedure fungerer dog også for pi 3 og skal (bemærk vægten) også fungere for Raspberry Pi zero W. Når du bruger Raspberry Pi 3 eller Zero W, er der ikke behov for et eksternt Wi-Fi-modul da disse to tavler allerede har Wi-Fi om bord.
For at definere målene i denne vejledning mere indviklet giver vi vores Raspberry Pi muligheden for at fungere som et trådløst adgangspunkt og for at opnå dette skal vi installere og opsætte en software, der udstyrer hindbær pi med denne funktionalitet sammen med en DHCP-serversoftware, der giver en netværksadresse til de enheder, der skal forbindes til adgangspunktet. For at opfylde dette softwarekrav bruger vi dnsmasq- og hostapd- softwaren.
Denne vejledning vil være baseret på Raspbian stretch OS, så for at fortsætte som normalt, antager jeg, at du er fortrolig med at opsætte Raspberry Pi med Raspbian stretch OS, og du ved, hvordan man SSH ind i hindbær pi ved hjælp af en terminal software som kitt. Hvis du har problemer med noget af dette, er der masser af Raspberry Pi-vejledninger på dette websted, der kan hjælpe.
Trin til opsætning af Raspberry Pi som trådløst adgangspunkt:
Ved at følge de følgende vigtige trin, den ene efter den anden, vil vi være i stand til at indstille hindbær pi som et trådløst adgangspunkt. Det skal bemærkes, at nogle trådløse USB-dongler ikke fungerer i AP-tilstand, men efter at have prøvet denne dongle, og det fungerede, er jeg fristet til at sige, at 5 ud af 8 dongler fungerer.
Trin 1: Opdater Pi
Som normalt opdaterer vi hindbær pi for at sikre, at vi har den nyeste version af alt. Dette gøres ved hjælp af;
sudo apt-get opdatering
efterfulgt af;
sudo apt-get opgradering
Når opdateringen er udført, skal du genstarte din pi for at foretage ændringer.
Trin 2: Installer " dnsmasq " og " hostapd "
Dernæst installerer vi softwaren, der gør det muligt at konfigurere pi'en som et trådløst adgangspunkt og også softwaren, der hjælper med at tildele netværksadresse til enheder, der opretter forbindelse til AP. Vi gør dette ved at løbe;
sudo apt-get install dnsmasq
efterfulgt af;
sudo apt-get install hostapd
eller du kan kombinere det ved at løbe;
sudo apt-get install dnsmasq hostapd
Trin 3: Stop softwaren fra at køre
Da vi endnu ikke har konfigureret softwaren, er der ingen mening med at køre den, så vi deaktiverer dem fra at køre i undergrunden. For at gøre dette kører vi følgende kommandoer for at stoppe systemdriften .
sudo systemctl stop dnsmasq sudo systemctl stop hostapd
Trin 4: Konfigurer en statisk IP-adresse til den trådløse port
Bekræft wlan- porten, hvor den trådløse enhed, der bruges, er tilsluttet. For min Pi er det trådløse på wlan0. Opsætning af Raspberry Pi til at fungere som en server kræver, at vi tildeler en statisk IP-adresse til den trådløse port. Dette kan gøres ved at redigere dhcpcd- konfigurationsfilen. For at redigere konfigurationsfilen skal du køre;
sudo nano /etc/dhcpcd.conf
Rul til bunden af konfigurationsfilen, og tilføj følgende linjer.
Grænseflade wlan0 statisk ip_adresse = 192.168.4.1 / 24
Efter tilføjelse af linjerne skal konfigurationsfilen se ud som billedet nedenfor.
Bemærk: Denne IP-adresse kan ændres, så den passer til din foretrukne konfiguration.
Gem filen og afslut ved hjælp af; ctrl + x efterfulgt af Y
Genstart dhcpcd- tjenesten for at foretage de ændringer, der er foretaget i konfigurationen ved hjælp af;
Sudo service dhcpcd genstart
Trin 5: Konfigurer dhcpcd- serveren
Med en statisk IP-adresse, der nu er konfigureret til Raspberry Pi wlan, er det næste for os at konfigurere dhcpcd- serveren og give den den række af IP-adresser, der skal tildeles enheder, der forbinder til det trådløse adgangspunkt. For at gøre dette er vi nødt til at redigere konfigurationsfilen til dnsmasq- softwaren, men konfigurationsfilen til softwaren indeholder alt for meget info, og meget kan gå galt, hvis den ikke redigeres korrekt, så i stedet for at redigere opretter vi en ny konfiguration fil med netop den mængde information, der er nødvendig for at gøre det trådløse adgangspunkt fuldt funktionelt.
Før vi opretter den nye konfigurationsfil, holder vi den gamle sikker ved at flytte og omdøbe den.
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.old
Start derefter editoren for at oprette en ny konfigurationsfil;
sudo nano /etc/dnsmasq.conf
med editoren startet, kopier nedenstående linjer og indsæt eller skriv direkte ind i den.
Interface = wlan0 # angiver kommunikationsinterfacet, som normalt er wlan0 for trådløst dhcp-interval = 192.168.4.2, 192.168.4.20, 255.255.255.0,24h
indholdet af filen skal se ud som billedet nedenfor.
Gem filen, og afslut. Indholdet af denne konfigurationsfil er bare for at specificere rækkevidden af IP-adresse, der kan tildeles enheder, der er tilsluttet det trådløse adgangspunkt.
Når dette er gjort, vil vi være i stand til at give en enhed til enheder på vores netværk.
Det næste sæt trin hjælper os med at konfigurere adgangspunktværtssoftwaren, opsætte ssid, vælge encrytpion osv.
Trin 6: Konfigurer hostapd til SSID og adgangskode
Vi er nødt til at redigere hostapd- konfigurationsfilen (kør sudo nano /etc/hostapd/hostapd.conf ) for at tilføje de forskellige parametre for det trådløse netværk, der konfigureres, inklusive ssid og adgangskode. Det skal bemærkes, at adgangskoden (adgangssætning) skal være mellem 8 og 64 tegn. Noget mindre fungerer ikke.
interface = wlan0 driver = nl80211 ssid = piNetværk hw_mode = g kanal = 7 wmm_enabled = 0 macaddr_acl = 0 auth_algs = 1 ignorere_broadcast_ssid = 0 wpa = 2 wpa_passphrase = emmanuel # brug en meget sikker adgangskode og ikke denne wpa_key_mgmt = WPA-PSK = WPA-PSK rsn_pairwise = CCM
Indholdet af filen skal se ud som billedet nedenfor.
Du er velkommen til at ændre ssid og adgangskode, så det passer til dine behov og ønsker.
Gem konfigurationsfilen, og afslut.
Når konfigurationsfilen er gemt, skal vi pege hostapd-softwaren til, hvor konfigurationsfilen er gemt. For at gøre dette skal du løbe;
sudo nano / etc / default / hostapd
find linjen med daemon_conf kommenteret som vist på billedet nedenfor.
Fjern kommentar til DAEMON_CONF-linjen, og tilføj nedenstående linje mellem anførselstegnene foran "lig med" -tegnet.
/etc/hostapd/hostapd.conf
Trin 7: Fyr det op
Da vi oprindeligt deaktiverede de to software, skal vi genstarte systemet efter konfiguration for at kunne konfigurere dem ordentligt for at gennemføre ændringerne.
Brug;
sudo systemctl start hostapd sudo systemctl start dnsmasq
Trin 8: Routing og maskerade for udgående trafik
Vi skal tilføje ruting og maskerade for udgående trafik.
For at gøre dette skal vi redigere konfigurationsfilen til systemctl ved at køre:
sudo nano /etc/sysctl.conf
Fjern kommentar til denne linje net.ipv4.ip_forward = 1 (fremhævet i billedet nedenfor)
Gem konfigurationsfilen, og afslut ved hjælp af ctrl + x efterfulgt af y.
Dernæst bevæger vi os for at skjule den udgående trafik. Dette kan gøres ved at foretage nogle ændringer i iptable-reglen. For at gøre dette skal du køre følgende kommandoer:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
gem derefter Iptables-reglen ved hjælp af:
sudo sh -c "iptables-save> /etc/iptables.ipv4.nat"
Trin 9: Opret trådløst adgangspunkt ved opstart:
For de fleste applikationer til trådløst adgangspunkt er det ofte ønsket, at adgangspunktet kommer op, så snart systemet starter. For at implementere dette på hindbær pi er en af de nemmeste måder at tilføje instruktioner til at køre softwaren i rc.local- filen, så vi lægger kommandoer til at installere de iptable regler ved opstart i rc.local-filen.
For at redigere rc.local-filen skal du køre:
sudo nano /etc/rc.local
og tilføj følgende linjer nederst i systemet lige før exit 0-erklæringen
iptables-gendan </etc/iptables.ipv4.nat
Trin 9: Genstart! og brug
På dette stadium er vi nødt til at genstarte systemet for at gennemføre alle ændringer og teste det trådløse adgangspunkt, der starter ved opstart med iptables-reglen opdateret.
Genstart systemet ved hjælp af:
sudo genstart
Så snart systemet tændes igen, skal du være i stand til at få adgang til det trådløse adgangspunkt ved hjælp af en hvilken som helst Wi-Fi-aktiveret enhed og den adgangskode, der blev brugt under opsætningen.
Adgang til internettet fra Raspberry Pi's Wi-Fi Hotspot
Åh ja, så jeg vil tilføje en bonusvejledning for at vise, hvordan det oprettede trådløse adgangspunkt kan bruges til at give internetforbindelse til de enheder, der er tilsluttet det. Internetadgangen, der distribueres til enhederne, leveres via Ethernet-porten på Pi'en, som kan tilsluttes en router eller lignende enheder.
For at implementere dette er vi nødt til at sætte en "bro" mellem den trådløse enhed og Ethernet-enheden på Raspberry Pi (det trådløse adgangspunkt) for at passere al trafik mellem de to grænseflader. For at konfigurere dette bruger vi bridge-utils- softwaren. Installer hostapd og bridge-værktøjer . Mens vi har installeret hostapd før, skal du køre installationen igen for at fjerne al tvivl.
sudo apt-get install hostapd bridge-utils
Dernæst stopper vi hostapd for at konfigurere softwaren.
sudo systemctl stop hostapd
Når der oprettes en bro, oprettes en konstruktion på et højere niveau over de to porte, der broes, og broen bliver således netværksenheden. For at forhindre konflikter er vi nødt til at stoppe tildelingen af IP-adresser af DHCP-klienten, der kører på Raspberry Pi, til eth0- og wlan0-portene. Dette gøres ved at redigere dhcpcd-klientens konfigurationsfil for at inkludere denyinterfaces wlan0 og denyinterfaces eth0 som vist på billedet nedenfor.
Filen kan redigeres ved at køre kommandoen;
sudo nano /etc/dhcpcd.conf
Bemærk: Fra dette tidspunkt skal du sikre dig, at du ikke frakobler Ethernet-kablet fra din pc, hvis du kører i hovedløs tilstand, da du muligvis ikke kan oprette forbindelse via SSH igen, da vi har deaktiveret Ethernet-porten. Hvis du arbejder med en skærm, har du intet at frygte.
Dernæst opretter vi en ny bro kaldet br0
sudo brctl addbr br0
Dernæst forbinder vi Ethernet-porten (eth0) til broen (br0) ved hjælp af;
sudo brctl addif br0 eth0
Dernæst redigerer vi interfaces-filen ved hjælp af sudo nano / etc / network / interfaces, så forskellige enheder kan arbejde med broen. Rediger grænsefladesfilen for at inkludere nedenstående oplysninger;
#Bridge setup auto br0 iface br0 inet manual bridge_ports eth0 wlan0
Endelig redigerer vi hostapd.conf-filen for at inkludere brokonfigurationen. Dette kan gøres ved at køre kommandoen: sudo nano /etc/hostapd.conf og redigere filen for at indeholde nedenstående oplysninger. Bemærk, at broen blev tilføjet under wlan0-grænsefladen, og driverlinjen blev kommenteret.
grænseflade = wlan0 bro = br0 # driver = nl80211 ssid = NameOfNetwork hw_mode = g kanal = 7 wmm_enabled = 0 macaddr_acl = 0 auth_algs = 1 ignorere_broadcast_ssid = 0 wpa = 2 wpa_passphrase = AardvarkBadgerHedgehog wpa_key_mgm = wp_passm
Når dette er gjort, skal du gemme konfigurationsfilen og afslutte.
For at foretage de ændringer, der er foretaget i Raspberry Pi, skal du genstarte systemet. Når det kommer tilbage, skal du nu være i stand til at få adgang til internettet ved at oprette forbindelse til det trådløse adgangspunkt oprettet af Raspberry Pi. Dette fungerer naturligvis kun, hvis internetadgang er tilgængelig for pi via Ethernet-porten.
Mens dette projekt kan bruges til at udvide Wi-Fi rundt om huset eller kontoret eller en hel forbindelse, er der flere applikationer, som jeg finder meget interessante og nyttige som hindbær pi som et hjemmeautomatiseringscenter, så flere Wi-Fi-aktiverede hjemmeautomatiseringsenheder kan oprette forbindelse til internettet ved hjælp af hindbær Pi's trådløse adgangspunkt. Har du en anden cool idé, som denne kan anvendes til, er du velkommen til at dele via kommentarsektionen for at inspirere andre.
Test af Raspberry Pi trådløst adgangspunkt:
For at teste disse instruktioner skal du bruge en mobiltelefon eller en hvilken som helst anden enhed, der er i stand til at oprette forbindelse til et WiFi-hotspot-netværk. Du bør se navnet poppe op. Du kan derefter oprette forbindelse til det ved hjælp af den forfærdelige adgangskode, som vi specificerede "emmanuel". Sørg for at bruge en mere sikker adgangskode, når du implementerer. Jeg brugte kun adgangskoden for at gøre tingene nemmere at følge.
Bemærk også, det kan tage et stykke tid, før det trådløse adgangspunkt bliver synligt efter genstart, da Pi skal starte, inden netværksaktiviteterne starter.
Det er det til denne tutorial fyre. Det er lang tid, tak fordi du tog dig tid til at læse. Feedback og kommentarer er altid velkomne.
Indtil næste gang!