RPi Zero W adHoc Wifi dhcp ti mostra come attivare una rete adHoc con dhcp su una Raspberry Pi Zero W
Hai letto nelle scorse settimane di alcuni esperimenti che ho eseguito con la RPi Zero W tra cui:
se il tuo progetto è autonomo e non necessita di un collegamento WiFi creato da un router è necessario che crei una rete wifi adHoc a cui connetterti con lo smartphone o altro device per controllarlo.
Ricerca Info sulla configurazione
Puoi iniziare la tua ricerca da Google, forse lo hai già fatto per arrivare a questa guida, e troveri anche alcuni link e tutorial interessanti come i seguenti:
entrambi dedicati a progetti per la Raspberry Pi 3 e che ho riadattato per la RPi Zero W adHoc Wifi dhcp.
Puoi considerare questo articolo un aggiornamento del primo link che ho pubblicato quando era disponibile solo la Raspberry Pi 1 Model A e contemporaneamente un momento per organizzare le idee con il nuovo Raspbian Jessie.
Configura RPi Zero W adHoc Wifi dhcp
Inizia ad installare il servizio hostapd usando il comando apt-get:
sudo apt-get install hostapd
e subito dopo averlo installato procedi a disabilitare il servizio per configurarlo:
sudo systemctl disable hostapd
procedi con la configurazione:
vi /etc/hostapd/hostapd.conf
inserisci nel file i seguenti parametri:
interface=wlan0 driver=nl80211 ssid=RPiBot hw_mode=g channel=11 wmm_enabled=0 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=12345678 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
di cui i più importanti sono:
interface: specifica l’interfaccia su cui attivare l’hostapd, se ne avessi più di una potresti decidere quale utilizzare o se utilizzarne due su due SSID differenti;
ssid: il nome che vuoi assegnare alla tua rete;
channel: il canale wifi da utilizzare, ho scelto l’11 dopo una scansione dei canali più liberi sulla mia WiFi;
wpa_passphrase: la password che assegnerai alla tua WiFi;
Per gli altri parametri puoi far riferimento al manuale dell’hostapd.
Passa a definire dove il file appena configurato verrà richiamato in fase di start del servizio:
sudo vi /etc/default/hostapd
cambia la linea relativa al parametro di configurazione come segue:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Il prossimo passo per configurare la tua RPi Zero W adHoc Wifi dhcp è proprio la configurazione del dhcp.
Configurazione dhcpd
Devi installare il demone dnsmasq:
sudo apt-get install dnsmasq
ed al termine dell’installazione puoi procedere con la configurazione:
sudo vi /etc/dnsmasq.conf
in cui aggiungerai le seguenti linee in fondo al file:
#Interface to use interface=wlan0 bind-interfaces dhcp-range=192.168.100.5,192.168.100.20,168h
in cui ho definito il range 192.168.100.5-192.168.100.20 con lease di 168h ( ore ) ossia 168 / 24 = 7 giorni
da cui puoi dedurre che il RPi Zero W adHoc Wifi dhcp assegnerà IP con tale lease.
Passa alla configurazione dell’interfaccia wlan0.
Configurazione interfaccia wlan0
La configurazione dell’interfaccia wlan0 puoi eseguirla partendo dall’editing del file:
sudo vi /etc/network/interfaces
in questo file sono definite tutte le interfacce di rete e agirai solo sulla wlan0:
auto lo iface lo inet loopback iface eth0 inet dhcp # iface wlan0 inet manual # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf auto wlan0 iface wlan0 inet static address 192.168.100.1 netmask 255.255.255.0 gateway 192.168.100.1
nota che ho commentato le linee preesistenti, inserite in fase di configurazione della RPi Zero W Wifi, ed il wpa_supplicant.conf ed aggiunto le linee per la wlan0 assegnando alla stessa il primo IP della nuova subnet (192.168.100.1) fuori dal range configurato.
Avvia il servizio hostapd:
sudo systemctl start hostapd
e avvia il servizio dnsmasq:
sudo systemctl start dnsmasq
riavvia l’interfaccia wlan0:
sudo ifdown wlan0
sudo ifup wlan0
e procedi a collegarti alla nuova interfaccia configurata:
e dopo aver inserito la password, vedrai che hai ottenuto un indirizzo IP valido:
A questo punto se sei collegato via USB-OTG non perdi la connessione in caso di errori di configurazione.
Ricorda di abilitare i servizi hostapd e dnsmasq all’avvio se già non sono configurati:
sudo systemctl enable hostapd
e
sudo systemctl enable dnsmasq
2 commenti
Buongiorno,
Sarebbe interessante che questo servizio partisse in caso di ‘guai’ con la configurazione iniziale, mi spiego, se io configuro il mio raspberry pi zero wifi portatile per connettersi alla rete di casa mia per prendere chessò, l’ora esatta, poi mi sposto in altro luogo con connessione wifi da amici di cui posso farmi dare ssid/pwd , sarebbe bello che il mio R PI 0 W avesse un qualche tipo di controllo per il quale se non riesce a connettersi al wifi con i parametri definiti nel wpa_supplicant.conf, mi attivasse una sua rete alla quale io mi posso collegare anche da cell, impostare i nuovi parametri ssid/pwd su interfaccia web che lui poi salvasse in un nuovo wpa_supplicant.conf rebootando per connettersi alla nuova rete.
Conosci nulla del genere?
Autore
Ciao Stefano,
quello che ti occorre è un software che gestisca la perte wifi con un “capture portal”, non ne conosco ma sono sicuro che in rete trovi certamente qualche software di questo tipo.