Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Introduktion
Truly WiFi Extender är en WiFi-repeater baserad på Raspberry Pi Zero W. Det är ett bra alternativ till en kommersiell WiFi-repeater som kombinerar låg kostnad (under 10USD) och mycket anpassningsbar programvara. Det kan också köra vissa annonsblockerande lösningar som pi-hole också. Detta projekt är unikt eftersom de flesta projekten på GitHub visar hur man skapar ett trådlöst AP för att dela Internetåtkomst som erhålls med Ethernet.
Se mitt projekt om Hackaday Hackaday
Se mitt projekt på GitHub Github
Se mitt projekt på Hackster Hackster
Steg 1: Förutsättningar
För att blinka bilden på SD -kortet har jag använt BalenaEtcher
- Ladda ner filen raspbian lite.iso från Raspberry Pi -webbplatsen
- När du har laddat ner, öppna BalenaEtcher, välj.iso -filen, välj SD -kortet, klicka på blixtknappen och vänta tills processen är klar.
- Öppna sedan startpartitionen och inuti den, skapa en tom textfil med namnet ssh utan tillägg.
- Slutligen skapar du en annan textfil som heter wpa_supplicant.conf i samma startpartition och klistrar in följande innehåll.
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdevupdate_config = 1 land = IN nätverk = {ssid = "mywifissid" psk = "mywifipassword" key_mgmt = WPA-PSK}
Ersätt mywifissid med namnet på WiFi och mywifipassword med wifi -lösenordet
- Slå på Raspberry pi. För att hitta dess IP kan du använda ett verktyg som Angry IP Scanner och skanna delnätet
- När du hittat IP: n, SSH till din Pi med ett verktyg som PuTTY eller bara ssh [email protected], ange lösenordet hallon och du är klar att gå
- Slutligen uppdatera paketlistan och uppgradera paketen och starta om Pi.
sudo apt update -y
sudo apt upgrade -y sudo reboot
Steg 2: Konfigurera Systemd-networkd
Från ArchWiki
systemd-networkd är en systemdemon som hanterar nätverkskonfigurationer. Det upptäcker och konfigurerar nätverksenheter som de visas; det kan också skapa virtuella nätverksenheter.
För att minimera behovet av ytterligare paket används networkd eftersom det redan är inbyggt i init -systemet, därför behövs inget dhcpcd.
Förhindra användning av dhcpd
Obs: Det krävs för att köra som root
sudo systemctl mask networking.service dhcpcd.service
sudo mv/etc/network/interfaces/etc/network/interfaces ~ sed -i '1i resolvconf = NO' /etc/resolvconf.conf
Använd det inbyggda systemd-nätverket d
sudo systemctl aktivera systemd-networkd.service systemd-resolved.service
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Steg 3: Konfigurera Wpa-supplikant
wlan0 som AP
Skapa en ny fil med kommandot
sudo nano /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
Lägg till följande innehåll och spara filen genom att trycka på Ctrl X, Y och Enter
land = IN
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 nätverk = {ssid = "TestAP-plus" läge = 2 key_mgmt = WPA-PSK psk = "12345678" frekvens = 2412}
Ersätt TestAP-plus och 12345678 med dina önskade värden.
Denna konfigurationsfil ska användas för den inbyggda wifi -adaptern wlan0 som ska användas för att skapa en trådlös åtkomstpunkt.
Ge användaren läs-, skrivbehörighet till filen
sudo chmod 600 /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
Starta om wpa_supplicant -tjänsten
sudo systemctl inaktivera wpa_supplicant.service
sudo systemctl aktivera [email protected]
Steg 4:
wlan1 som klient
Skapa en ny fil med kommandot
sudo nano /etc/wpa_supplicant/wpa_supplicant-wlan1.conf
Lägg till följande innehåll och spara filen genom att trycka på Ctrl X, Y och Enter
land = IN
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 nätverk = {ssid = "Asus RT-AC5300" psk = "12345678"}
Ersätt Asus RT-AC5300 och 12345678 med routerns SSID och lösenord.
Denna konfigurationsfil ska användas för USB WiFi -adaptern wlan01 som ska användas för att ansluta till en trådlös router.
Ge användaren läs-, skrivbehörighet till filen
sudo chmod 600 /etc/wpa_supplicant/wpa_supplicant-wlan1.conf
Starta om wpa_supplicant -tjänsten
sudo systemctl inaktivera wpa_supplicant.service
sudo systemctl aktivera [email protected]
Steg 5: Konfigurera gränssnitt
Skapa en ny fil med kommandot
sudo nano /etc/systemd/network/08-wlan0.network
Lägg till följande innehåll och spara filen genom att trycka på Ctrl X, Y och Enter
[Match]
Namn = wlan0 [Nätverk] Adress = 192.168.7. IPMasquerade = ja IPForward = ja DHCPServer = ja [DHCPServer] DNS = 1.1.1.1
Skapa en ny fil med kommandot
sudo nano /etc/systemd/network/12-wlan1.network
Lägg till följande innehåll och spara filen genom att trycka på Ctrl X, Y och Enter
[Match]
Namn = wlan1 [Nätverk] DHCP = ja
Starta om Raspberry Pi med
sudo starta om