Innehållsförteckning:
- Tillbehör
- Steg 1: Konfigurera Raspberry Pi
- Steg 2: 70-persistent-net.rules
- Steg 3: Hostapd.conf
- Steg 4: Dnsmasq.conf
- Steg 5: Gränssnitt
- Steg 6: Wpa_supplicant.conf
- Steg 7: Hostapdstart -skript
- Steg 8: Rc.local
- Steg 9: Starta om
Video: Raspberry Pi Enterprise Network WiFi Bridge: 9 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:41
Av: Riley Barrett och Dylan Halland
Målet med detta projekt är att tillåta en IoT-enhet, till exempel en Weemo Smart Plug, Amazon Echo, Gaming Console eller någon annan Wi-Fi-aktiverad enhet att ansluta till ett WPA_EAP Enterprise Network med hjälp av en Raspberry Pi Zero W som ett paket vidarebefordringsanordning. Ytterligare konfigurationssteg krävs för enheter som ansluter till ett företagsnätverk, och många enheter är inte kompatibla alls. Genom att använda en Wi-Fi Bridge kan alla enheter enkelt få tillgång till internet genom att ansluta till Pi.
Systemet kan implementeras på antingen ett trådlöst kort eller två separata kort beroende på användarens krav. För system som kräver högre signalstyrka och snabbare uppladdnings-/nedladdningshastigheter är det bäst att använda ett dedikerat trådlöst kort för att vara värd för åtkomstpunkten. För system där signalstyrkan och bandbredden är mindre viktiga, eller där en mer kostnadseffektiv lösning önskas, kan ett enda kort delas av åtkomstpunkten och nätverksanslutningen.
Tillbehör
Raspberry Pi Zero W
Tillgång till tangentbord och bildskärm
Vissa kunskaper om programmering (för felsökning, Raspberry Pi -installation)
Extern WiFi -adapter/dongel (tillval)
Steg 1: Konfigurera Raspberry Pi
Börja med att ansluta din Pi till ett tangentbord och en bildskärm (kan kräva en HDMI -adapter).
Sedan kan du börja med att skriva kommandot:
sudo su
Detta säkerställer att du har de rättigheter som krävs för att ändra filer på pi: n.
Nu vill du installera dnsmasq och hostapd med kommandot:
apt-get install dnsmasq hostapd
Du kan nu börja konfigurera WiFi -bron.
OBS - Följande handledning kommer att innehålla information för dem som använder det enda inbyggda trådlösa kortet för både åtkomstpunkten och för anslutning till nätverket. Det är också möjligt att konfigurera systemet för att köra på två separata kort. För att göra detta, leta bara efter de kommenterade "wlan1" -raderna i de medföljande filerna och ersätt dem med de angränsande "ap0" -raderna.
Steg 2: 70-persistent-net.rules
Börja med att hitta MAC -adressen för din pi genom att skriva:
iw dev
Skapa följande fil:
nano /etc/udev/rules.d/70-persistent-net.rules
och redigera det så att det innehåller följande
SUBSYSTEM == "ieee80211", ACTION == "add | change", ATTR {macaddress} == "b8: 27: eb: c0: 38: 40", KERNEL == "phy0", / RUN+= "/sbin/ iw phy phy0 -gränssnitt lägg till ap0 typ _ap ", / RUN+="/bin/ip -länkuppsättning ap0 -adress b8: 27: eb: c0: 38: 40"
Denna fil berättar för systemet att allokera en enhet för åtkomstpunkten vid start. Här bör MAC -adressen ersättas med den för din egen pi, som du just hittade.
(Två trådlösa kort) Den här filen krävs inte när du använder två trådlösa kort.
Steg 3: Hostapd.conf
Därefter redigerar du sedan filen hostapd.conf genom att ange följande:
nano /etc/hostapd/hostapd.conf
Ändra filen så att den matchar följande konfiguration:
ctrl_interface =/var/run/hostapd
ctrl_interface_group = 0 #gränssnitt = ap0-gränssnitt = wlan1-drivrutin = nl80211 ssid = testnet hw_mode = g kanal = 6 wmm_enabled = 0 macaddr_acl = 0 auth_algs = 1 wpa = 2 wpa_passphrase = 0123456789 wpa_key_mgmt = WPA-PSK_WP_PWK_pc_wp_pair_pc_wp_pa_pk_wp_pa_pk_wp_pa
Observera att medan min kanal här är inställd på 6, kan du behöva ändra detta värde för att matcha kanalen som wlan0 är på. På vissa nätverk ändras kanalen automatiskt för att åtkomstpunkten ska matcha wlan0, men detta var inte min erfarenhet av företagsnätverket. Du kan kontrollera vilka kanaler som används för närvarande och vilka gränssnitt genom att skriva
iwlist -kanal
(Två trådlösa kort) Avmarkera bara raden som innehåller wlan1 och kommentera den som innehåller ap0.
Steg 4: Dnsmasq.conf
Nu kommer du att redigera filen dnsmasq.conf:
nano /etc/dnsmasq.conf
Avmarkera eller lägg till följande rader:
gränssnitt = lo, ap0
#interface = lo, wlan1 no-dhcp-interface = lo bind-interfaces server = 8.8.8.8 domänbehovet falsk-priv dhcp-range = 192.168.2.100, 192.168.2.200, 12h
Du kan använda ditt eget undernät här om du vill, bara vara säker på att du är konsekvent.
(Två trådlösa kort) Kommentera raden som innehåller wlan1 och kommentera den som innehåller ap0.
Steg 5: Gränssnitt
Därefter måste du ändra gränssnittsfilen:
nano/etc/network/interfaces
auto lo
auto ap0 #auto wlan1 auto wlan0 iface lo inet loopback iface eth0 inet dhcp allow-hotplug ap0 #allow-hotplug wlan1 iface ap0 inet static #iface wlan1 inet static address 192.168.2.1 netmask 255.255.255.0 hostapd /etc/hostapd/hostapd.conf allow -hotplug wlan0 iface wlan0 inet dhcp pre -up wpa_supplicant -B -Dwext -i wlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf post -down killall -q wpa_supplicant
Det är värt att notera att wlan0 -gränssnittet MÅSTE komma efter vilket gränssnitt du vidarebefordrar till det, annars fungerar inte systemet korrekt.
(Två trådlösa kort) Avmarkera alla rader som innehåller wlan1 och kommentera alla som innehåller ap0.
Steg 6: Wpa_supplicant.conf
Nu kommer du att ändra filen wpa_supplicant.conf som finns på:
nano /etc/wpa_supplicant/wpa_supplicant.conf
Vissa nätverk är konfigurerade annorlunda än andra så den här delen kan kräva lite pyssel, här är filen wpa_supplicant.conf som gjorde att jag kunde ansluta till nätverket på Cal Poly:
country = USctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "SecureMustangWireless" scan_ssid = 1 key_mgmt = WPA-EAP pairwise = CCMP TKIP group = CCMP TKIP eap = PEAP identitet = "användarnamn@ calpoly.edu "password =" your_password "phase1 =" peapver = 0 "phase2 =" MSCHAPV2 "}
Den här filen används för att konfigurera wlan0 för att ansluta till ditt företagsnätverk. Vissa företagsnätverk kräver ett CA -certifikat för att ansluta. Cal Polys campusnätverk kräver inget certifikat, så jag har hoppat över den här delen, men du kan enkelt ladda ner rätt certifikat och lägga till dem i din wpa_supplicant -fil med raden
ca_cert = "/sökväg/till/cert.pem"
Steg 7: Hostapdstart -skript
Det sista som återstår att göra är att skriva ett skript som startar båda gränssnitten och ställer in paket vidarebefordran när systemet startar. Skapa en fil som heter hostapdstart genom att skriva:
nano/usr/local/bin/hostapdstart
Lägg till följande i filen
sudo ifdown --force wlan0 && sudo ifdown --force ap0 && sudo ifup ap0 && sudo ifup wlan0
#sudo ifdown --force wlan0 && sudo ifdown --force wlan1 && sudo ifup wlan1 && sudo ifup wlan0 sudo sysctl -w net.ipv4.ip_forward = 1 sudo iptables -t nat -A POSTROUTING -s 192.168.2.0/24! -d 192.168.2.0/24 -j MASQUERADEsudo systemctl starta om dnsmasq
Detta skript tar ner båda gränssnitten, tar sedan tillbaka dem i rätt ordning, berättar för pi att du vill vidarebefordra paket från ett gränssnitt till ett annat och slutligen startar om dnsmasq så att ändringarna påverkar.
(Två trådlösa kort) okommenterad rad med wlan1 och kommentar ut rad med ap0.
Steg 8: Rc.local
Slutligen vill vi att systemet ska starta när systemet startar, så vi kommer att ändra filen rc.local, som körs vid start:
nano /etc/rc.local
Lägg bara till följande rad i slutet av filen:
hostapdstart> 1 &
Din fil ska se ut ungefär så här:
_IP = $ (värdnamn -I) || trueif ["$ _IP"]; skriv sedan ut "Min IP -adress är %s / n" "$ _IP" fi
hostapdstart> 1 &
avsluta 0
Steg 9: Starta om
Och det är allt! Om du nu har allt rätt konfigurerat och din WiFi -dongel är ansluten (om du använder en) behöver du bara starta om din Raspberry Pi med kommandot:
starta om
När din Pi har startat om bör du kunna se namnet på din åtkomstpunkt på vilken enhet som helst (telefon, bärbar dator etc.). När du har anslutit med ditt angivna lösenord bör det ansluta dig direkt till ditt önskade Enterprise -nätverk!
Ett särskilt tack till följande länkar för att ge oss en uppfattning om hur vi ska närma oss detta projekt:
- https://blog.thewalr.us/2017/09/26/raspberry-pi-ze…
- https://www.raspberrypi.org/forums/viewtopic.php?p…
- https://www.raspberrypi.org/forums/viewtopic.php?f…
Låt oss veta om du har några frågor, kommentarer eller förslag!
Tvåa i IoT -utmaningen
Rekommenderad:
Billig NMEA/AIS Hub - RS232 till Wifi Bridge för användning ombord: 6 steg
Billig NMEA /AIS -hubb - RS232 till Wifi Bridge för användning ombord: Uppdatering 9 januari 2021 - Tillagd extra TCP -anslutning och återanvänd den sista anslutningen Om fler klienter ansluter Uppdaterad 13 december 2020 - Tillagde ingen konfigurationsversion av koden för båtar med befintliga routrar Inledning Denna NMEA / AIS RS232 till WiFi -bron är
LLDPi - Raspberry Pi Network Tool (Colorado State University): 7 steg
LLDPi - Raspberry Pi Network Tool (Colorado State University): LLDPi -projektet är ett inbäddat system tillverkat av en Raspberry Pi och LCD som kan hämta LLDP (Link Layer Discovery Protocol) information från angränsande enheter i ett nätverk, till exempel systemnamn och beskrivning , portnamn och beskrivning, VLA
Raspberry Pi Ethernet till Wifi Bridge: 7 steg
Raspberry Pi Ethernet till Wifi Bridge: Jag har ett testnätverk av olika hallonpajer, enheter och andra datorer och nätverksutrustning, de hanteras alla av en Ubiquity -brandvägg/router och jag vill ha den ansluten till internet så att jag kan dra uppdateringar, programvara etc. Unfortuna
Så här konfigurerar du Defence Enterprise -e -post i Windows 10: 10 steg
Så här konfigurerar du Defense Enterprise-e-post på Windows 10: FRISKRIVNING: Det finns inga potentiella faror eller faror för att utföra dessa steg! Att följa dessa instruktioner resulterar vanligtvis i
Enkel WiFi till BLE (Bluetooth Low Energy) Bridge: 9 steg (med bilder)
Enkel WiFi till BLE (Bluetooth Low Energy) Bridge: Uppdatering 4 december 2017 - reviderade Feather nRF52 -skisser och felsökningstips. Tillagda bilder på bron monterad i lådan. Detta enkla projekt ger WiFi -åtkomst till alla Bluetooth Low Energy (BLE) -moduler som implementerar Nordics UART med TX Notify. Det