Non di rado i router WIFI forniti dal nostro ISP (Internet Service Provider) sono di scarsa qualità o non sono abbastanza potenti da coprire l'intero perimetro della nostra abitazione in modo efficiente. Ecco perché sono ormai comunissime le configurazioni di mesh WIFI che combinano più hotpost WIFI per fornire all'utente una rete wireless più stabile e potente. Tuttavia tali sistemi hanno un costo non indifferente, soprattutto se si desidera coprire edifici di grandi dimensioni. Fortunatamente la community open source ha realizzato tutta una serie di progetti con cui potenziare il segnale WIFI o addirittura creare un router WIFI "home made" tramite la nota board ARM low cost Raspberry Pi.
In questa guida parleremo appunto di come sfruttare un Raspberry Pi come router WIFI. Attenzione in questo tutorial non vi spiegheremo come sostituire interamente il modem fornito del vostro provider, si tratta invece di un setup che prevede l'affiancamento di un dispositivo extra, ovvero il Raspberry Pi, con lo scopo di potenziare il segnare in una determinata zona del vostro appartamento.
Requisiti hardware e software
Per realizzare tale progetto serve ovviamente il Raspberry Pi, l'ultimo modello in commercio è la nostra scelta consigliata ma anche il meno recente Raspberry Pi 3 può andare bene per tale scopo. Inoltre dovrete dotarvi di un alimentatore USB, di un cavo ethernet cat 6, cosi da assicurare una connessione veloce e stabile al modem, e di una microSD per poter eseguire il sistema operativo che andremo ad utilizzare per animare il dispositivo.
Installazione e configurazione di Openwrt
Openwrt è una distribuzione Linux dedicata ai cosiddetti "embedded device" come appunto i router. Potenzialmente questo sistema è capace di gestire tutta una serie di prodotti IoT (Internet of Things) o i vari dispositivi elettronici integrati. Openwrt offre un vasto set di funzionalità integrate come ad esempio un sistema di ad-block per bloccare agilmente gli annunci pubblicitari presenti nelle pagine Web.
Iniziamo eseguendo il download del media d'installazione di Openwrt dal sito ufficiale del progetto, noi vi consigliamo di affidarvi alla versione EXT4. Successivamente possiamo procedere alla sua installazione nella microSD tramite un imaging tool. Potete affidarvi ad esempio all'ottimo Balena Etcher, un tool davvero completo ed user-friendly. Una volta avviata l'utility basta cliccare sul tasto "Flash from File", per indicare al programma il file ISO di Openwrt che abbiamo scaricato poco prima. Successivamente selezioniamo la nostra microSD con l'opzione "Select Target" ed infine pigiamo su "Flash!" per avviare la procedura.
Il tutto dovrebbe durare non più di 10 minuti, al termine dell'operazione potremo rimuovere la microSD dal computer per poi inserirla nell'apposito alloggiamento su Raspberry Pi. Ora non dovremo fare altro che collegare il device all'alimentazione elettrica.
Prima di connetterci a Raspberry Pi dobbiamo annottarci un dato che ci farà comodo successivamente: il gateway IP del modem dell'ISP. Quindi, se siamo su Windows, apriamo Power Shell o il classico prompt dei comandi e digitiamo:
Ipconfig
Sotto la voce "Default Gateway" dovrebbe comparire un dato simile a questo: 192.168.1.1
.
Se invece utilizzate una distribuzione Linux il comando da inserirei in bash e questo:
ip route show
oppure:
route -n
o in alcune distribuzioni:
netstat -rn
Quindi lasciamo lavorare il device per qualche minuto in modo tale che completi in autonomia la procedura di boot. Successivamente disconnettiamo il computer dalla router principale e connettiamo il PC a Raspberry Pi tramite cavo ethernet.
Arrivati a questo punto dovremo poterci connettere tramite SSH ad Openwrt. Per farlo basta digitare tale comando nella shell:
ssh root@IpdelRaspberry
Se non conoscete l'IP del Raspberry Pi potete utilizzare due metodi, se siete su Windows digitate da Power Shell o dal prompt:
arp -a
Dovreste ricevere come output una serie di IP presenti nella vostra rete locale. Essendo connessi unicamente al Raspberry Pi non dovrebbero essere presenti altri device, quindi l'IP potrebbe essere ad esempio: 192.168.1.2
. Se invece utilizzate una distribuzione Linux:
sudo nmap -sT 192.168.1.1/24
Di base nmap potrebbe non essere presente nella vostra distribuzione, se le cose stanno così riconnettetevi alla vostra rete primaria per installarlo via APT (Advanced Packaging Tool):
sudo apt-get install nmap
Una volta dentro Openwrt potremo inserire una nostra password personale digitando:
passwd
Una volta impostate le credenziali d'accesso possiamo avviare la configurazione generale del nuovo router WIFI. Spostiamoci quindi nella directory con i diversi file di setting:
cd /etc/config
Dobbiamo modificare il file chiamato network
con il gateway IP corretto del modem individuato in precedenza:
vim network
Una volta aperto il documento pigiamo il tasto "i" per poter modificare il testo. Dovremo aggiungere queste due voci sotto il parametro chiamato "Option ipaddr":
option dns '192.168.x.x'
option gateway '192.168.x.x'
Ovviamente ricordiamoci di sostituire le X con il valore corretto che nel nostro esempio è 1.1
option dns '192.168.1.1'
option gateway '192.168.1.1'
Ora è necessario modificare l'opzione ipaddr
in modo tale che l'ultima cifra sia progressiva rispetto agli IP inseriti nelle opzioni dns
e gateaway
. Quindi:
option ipaddr '192.168.1.2'
Per salvare queste modiche basta premere il tasto ESC e poi digitare:
:wq
Ora passiamo al file chiamato wireless
:
vim wireless
In questo caso dobbiamo modificare i parametri "option disabled" in modo tale che passino dal valore 1 a 0. Mentre l'opzione "encryption" va cambiata da "none" a "psk2". A questo punto possiamo scegliere la password per connetterci al nuovo router aggiungendo una nuova opzione chiamata "option key "nuovapassword"".
Salviamo le aggiunte al file come spiegato in precedenza e conferiamo le modifiche tramite tale comando:
reboot network /etc/init.d/network restart
Cosi facendo viene anche terminata la sessione SSH quindi se bash "vi butta fuori" non preoccupatevi, è normale. Ora potete anche staccare il cavo ethernet dal computer e connettere Raspberry Pi, sempre tramite il medesimo cavo, al modem dell'ISP.
Ora dal vostro network manager dovrete poter vedere la nuova rete WIFI chiamata "Openwrt". Per connettervi ad essa basta appunto digitare la password che avete scelto in precedenza.