WIFi extender con raspberry – Seconda Parte

WIFi extender con raspberry –  Seconda Parte

Nel primo articolo abbiamo visto come installare i driver per un dongle WIFi su Raspberry 3.

In questo articolo vedremo come servircene per realizzare un WiFi extender.

I due pacchetti fondamentali che andremo ad installare e ad utilizzare per questo scopo sono: dnsmasq e hostapd.

dnsmasq fungerà da dhcp server per le nostre connessioni.

hostapd questo è il pacchetto che ci permetterà di configurare la nostra dongle Wi-Fi come punto di accesso

Installiamo anzitutto i due pacchetti:

sudo apt-get install dnsmasq

sudo apt-get install hostapd

Prima di configurarli andiamo a settare la rete Wi Fi a cui si connetterà il Rasperry.

Per motivi di ricezione useremo il dongle WIFi per connetterci al router e la scheda Wifi interna per fare da extender.

Editiamo il file wpa_supplicant.conf

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

In questo file inseriamo i dati della nostra rete Wifi domestica inserendo i nostri dati

network=
        ssid="networkname"
        psk="networkpassword"
}

Salviamo e successivamente andiamo a settare un indirizzo IP statico per il nostro Raspberry modificando il file dhcpcd.conf e imponendo un indirizzo all’interfaccia wlan1 che in questo caso corrisponderà al dongle Wifi.

sudo nano /etc/dhcpcd.conf

in questo file aggiungiamo i seguenti dati o altri compatibili con la nostra configurazione di rete Wifi domestica.

interface wlan1
static ip_address=192.168.1.77/24
static routers=192.168.1.1

Configuriamo anche l’indirizzo ip della nostra scheda wifi interna (wlan0) che fungerà da extender.

interface wlan0
    static ip_address=192.168.4.1/24
    nohook wpa_supplicant

Tutti i dispositivi che si connetteranno all’extender avranno, come vedremo meglio in seguito, indirizzi compatibili con la rete 192.168.4.1/24

A questo punto eseguiamo un restart del servizio dhcpcd

sudo service dhcpcd restart

Adesso andiamo a modificare il file hostapd.conf con il comando

sudo nano /etc/hostapd/hostapd.conf

In questo file andremo ad inserire le seguenti configurazioni:

interface=wlan0
driver=nl80211

hw_mode=g
channel=6
ieee80211n=1
wmm_enabled=1
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]
macaddr_acl=0
ignore_broadcast_ssid=0

auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

ssid=Pi3-Extender
wpa_passphrase=raspberry

In particolare le istruzioni ssid=Pi3-Extender wpa_passphrase=raspberry definiranno SSID e passphrase della rete che fungerà da wifi extender.

Se decidete di usare la dongle come extender allora non dovete fare altro che sostituire nel rigo driver= il nome corrispondente al suo driver.

Di seguito andiamo a dire dove si trova il file di configurazione di hostapad

Editiamo il file

sudo nano /etc/default/hostapd

e dentro inseriamo

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Per lo stesso motivo editiamo un secondo file

sudo nano /etc/init.d/hostapd

anche in questo file andremo ad inserire DAEMON_CONF=/etc/hostapd/hostapd.conf

Finita la configurazione di hostapd adesso andiamo a configurare dnsmasq.

Apriamo il file di configurazione con il comando sudo nano /etc/dnsmasq.conf

Inseriamo i comandi seguenti che configurano il pool di indirizzi che il dhcp server assegnerà ai dispositivi che si collegheranno con l’extender.

interface=wlan0

dhcp-range=192.168.4.1,192.168.4.100,255.255.255.0,12h

Fatto questo, effettuiamo uno start dei due servizi.

sudo systemctl start hostapd
sudo systemctl start dnsmasq

Adesso dobbiamo fare in modo che tutto il ttraffico proveniente da wlan0 sia ridirezionato su wlan1.

Editiamo il file sysctl.conf

sudo nano /etc/sysctl.conf

e inseriamo in esso net.ipv4.ip_forward=1

Andiamo quindi a configurare il nat tra wla1 e wlan0

sudo iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE
sudo iptables -A FORWARD -i wlan1 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o wlan1 -j ACCEPT

Di seguito salviamo le regole di nat in un file

sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

Infine facciamo in modo che il file con queste regole sia caricato ad ogni riavvio. Editiamo il file rc.local

sudo nano /etc/rc.local

Inseriamo nel rigo sopra all’istruzione che contiene exit 0 il seguente comando:

iptables-restore < /etc/iptables.ipv4.nat

A questo punto basterà effettuare il reboot per verificare il wifi extender èa ttivo e funzionante.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.