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
Prima di inserire un commento, per favore, leggi il regolamento
2 pings