ponte2 - Fonera as Repeater and Access Point / AP client |
|
|
leggimi
Per capire il modo corretto di configurare ponte2
e' utile esaminare gli ambiti di impiego e quindi il seguente schema logico ed individuare cosi' dove e come operano le sezioni e i relativi parametri della pagina web di configurazione:
source master
Con questo nome si indica il dispositivo WiFi esterno (AP o WiFi router) al quale deve associarsi la fonera tramite il client link. Il segnale del source master sara' quindi ripetuto dal repeater access point. Il source master viene individuato tramite uno dei seguenti modi:
- auto connect - viene individuato quello dal quale si riceve il segnale piu' forte
- SSID - viene individuato (se esiste ed e' attivo) quello che trasmette il SSID indicato
- MAC - viene individuato (se esiste ed e' attivo) quello corrispondente al MAC indicato
client link
Il client link ha il compito di guadagnare la rete dal source master precedentemente individuato, realizzando un wireless transparent bridge la cui interfaccia IP e' ath1. In pratica, il client link ed il source master si trovano sulla stessa subnet. La configurazione IP dell'interfaccia ath1 puo' essere realizzata:
- dinamicamente - mediante un servizio DHCP attivo sul source master (soluzione da preferire)
- staticamente - mediante configurazione manuale. In questo caso occorre ricordare che ath1 deve trovarsi (come visto) sulla stessa subnet del source master e quindi per la sua corretta configurazione e' necessario conoscere:
- lo spazio di indirizzamento IP usato sulla subnet del source master
- un indirizzo IP che sia libero sulla subnet del source master
- gli indirizzi IP del gateway di defualt per la subnet del source master
- gli indirizzi IP dei name server
Ad esempio:
WiFi-Router XYZ123 (rappresenta il source master) indirizzo IP: 192.168.1.1
netmask: 255.255.255.0
gateway indirizzo IP: 192.168.1.1
dns-1 IP: 151.99.125.2
dns-2 IP: 151.99.125.3
allora il client link sara' cosi'configurato:
[link IP configuration (ath1) ]
IP address: 192.168.1.100 (deve appartenere sulla subnet del Router XYZ123 ed essere libero, non assegnato!)
Netmask: 255.255.255.0
default gateway: 192.168.1.1 (che e' quello impostato sulla subnet del Router XYZ123 !)
nameserver1 e nameserver2 come quelli impostati sulla subnet del Router XYZ123
Se la rete a cui e' connesso il source master e' protetta occorre sapere ed inserire la modalita' di protezione attuata (WEP oppure WPA-PSK) e quindi le relative chiavi di autenticazione
repeater access point
E' l'access point locale che ritrasmette il segnale di rete se catturato con successo dal client link. Il repeater access point realizza un hotspot con SSID che puo' essere:
- auto rilevato - in questo caso, se il SSID del source master e' ad esempio "rete-ufficio" allora il SSID ritrasmesso dal repeater sara' "relay_rete-ufficio"
- assegnato manualmente - ad esempio "ripetitore"
E' possibile nascondere il segnale di broadcast del repeater access point.
L'interfaccia di rete con la quale la wlan del repeater access point comunica con la fonera e' ath0 e deve essere configurata manualmente su una subnet diversa da quella sulla quale e' attestato il client link (ath1) e da quella utilizzata su eth0. E' anche possibile attivare un servizio DHCP che autoconfiguri i client wireless che desiderano associarsi al repeater access point.
A questo proposito, e' possibile proteggere la wlan del repeater access point tramite:
- filtraggio dei MAC address dei dispositivi wireless che intendono associarsi. Se utilizzato, puo' alternativamente realizzare
- una white list (only allow) che consentira' l'accesso ai soli MAC address di seguito specificati (metodo da preferire)
- una black list (only deny) che blocchera' l'accesso ai soli MAC address di seguito specificati
- chiavi di autenticazione, alternativamente
- metodo WEP
- metodo WPA (in automatico, se e' stata scelta la medesima opzione nella sezione del client link. In questo caso non si deve settare l'opzione WEP!)
ethernet interface
E' l'interfaccia ethernet eth0 individuata dal connettore RJ45 sulla fonera: su questa si puo'cablare un LAN su switch (o hub) oppure collegare direttamente un pc o altro dispositivo di rete privo di interfacce wireless.
L'interfaccia eth0 deve essere configurata manualmente su una subnet diversa da quella sulla quale e' attestato il client link (ath1) e da quella usata dal repeater access point (ath0). E' anche possibile attivare un servizio DHCP che autoconfiguri i client connessi allo switch/hub sull' RJ45.
Lasciando 0.0.0.0 come indirizzo IP, l'interfaccia eth0 - e di conseguenza la LAN fonera - non viene attivata ed il collegamento con la fonera avviene esclusivamente attarverso la WLAN su ath0.
Rimane comunque inalterato l'alias eth0:1 con IP di emergenza 169.254.255.1 tramite il quale e' sempre possibile aprire una sessione ssh con la fonera.
port forwarding
Viene utilizzato per particolari applicazioni e permette di raggiungere host che si trovano sia in hotspotting (dietro a ath0) oppure sulla LAN (dietro eth0). Sono gia' preconfigurate le porte per BitTorrent e per xMule.
ricapitolando le reti in gioco...
- ath0 e ath1 sono interfacce ethernet virtuali, non direttamente accessibili dall'esterno a differenza di eth0 che rappresenta l'interfaccia LAN o, in alcuni casi, l'interfaccia del bridge realizzato fra ath0 e eth0 ed indicato come br0).
- ath0 - WLAN repeater access point viene configurata manualmente
- ath1 - (wireless) transparent bridge viene configurata dinamicamente via DHCP attivo sul source master (soluzione da preferire) oppure manualmente
- eth0 - LAN fonera viene configurata manualmente
- sulle due reti (WLAN su ath0 e LAN su eth0) la Fonera fa da gateway, operando il forward del traffico verso il suo router di default raggiunto tramite il transparent bridge su ath1 e occupandosi del NAT.
ad esempio:
- ath1 192.168.1.200 - configurato manualmente o ricevuto dal DHCP del source master (preferibile) e' l'indirizzo di inoltro della Fonera tramite il quale viene raggiunto il default gateway sulla rete remota
- ath0 10.10.0.1 - e' defaut gateway per i client wireless della WLAN 10.10.0.0/255.255.255.0 (hotspot)
- eth0 10.20.0.1 - e' default gateway per i PC della LAN 10.20.0.0/255.255.255.0 (rete cablata sull'RJ45)
in buona sostanza:
tutto quello che esce dalla Fonera verso l'esterno e' inoltrato via ath1 al client-link e di qui tramite transparent bridge al source master, dove raggiunge - se esiste - il gateway remoto verso le altre reti (Internet compresa)
.
monitor station
E' possibile attivare un secondo access point in modalita' passiva con interfaccia ath2 priva, ovviamente, di indirizzo IP. Essendo in modalita' monitor non e' possibile associarsi a questo access point, che risulta peraltro invisibile.
Lo scopo della modalita' monitor e' quello di usare la sua interfaccia ath1 per eseguire programmi tipo kismet o airsnort ma anche analizzatori di protocollo piu' classici quali tcpdump o iptraf per esaminare il traffico di rete. E' ooportuno ricordare le differenze fra le modalita' promiscuo e monitor:
- promiscuo - cattura tutti i pacchetti in transito sulla rete dove e' attestata l'interfaccia posta in tale modalita'
- monitor - cattura tutti i pacchetti on air in maniera indipendente dall'interfaccia
In modalita' monitor e' possibile indicare il tipo di header che viene anteposto al livello fisico Ethernet: per default viene selezionato l'header Prism2 in alternativa ai descrittori Atheros, 802.11 o Radiotap.
significato del led WLAN
il led WLAN della Fonera lampeggia lentamente (ciclo di 3 secondi) a segnalare l'avvenuta associazione del client link con il source master
note sul comando iwconfig
il comando iwconfig ath1
dato sulla fonera mostra alcune interessanti informazioni circa il link con il source master, fra queste il valore link quality e signal level. In particolare, questa e' la spiegazione di alcuni parametri ottenibili:
- Link quality
In generale la qualità del segnale. Può essere basata sul livello di conflittualità o interferenza, il bit o il frame error rate, quanto è buona la ricezione del segnale, qualche sincronizzazione, o altre questioni dell'hardware. Questo è un valore aggregato, e dipende totalmente dal driver e dall'hardware.
- Signal level
Resistenza del segnale ricevuto (RSSI - quanto è potente il segnale ricevuto). Potrebbe essere in unità arbitraria o dBm, iwconfig utilizza le informazioni del driver per interpretare il valore grezzo ottenuto da /proc/net/wireless mostra l'unità adatta o il valore massimo (utilizzando 8 bit artimetici). In modalità Ad-Hoc questo potrebbe non essere definito e si dovrebbe utilizzare iwspy. iwspy.
- Noise level
Livello di rumore di fondo (quando nessun pacchetto viene trasmesso). Commenti simili per Signal level.
- Rx invalid nwid
Numero di pacchetti ricevuti con un differente NWID o ESSID. Utilizzato per verificare errori di configurazione o esistenza di reti adicenti, operanti sulla stessa frequenza.
- Rx invalid crypt
Numero di pacchetti che il sistema non è stato in grado di decrittare. Questo può essere usato per verificare impostazioni di crittografia invalide.
- Rx invalid frag
Numero di pacchetti che il sistema non è stato in grado di riassemblare correttamente i frammenti dello strato fisico (solitamente uno è stato perso).
- Tx excessive retries
Numero di pacchetti che il sistema non è stato in grado di spedire. Molti protocolli MAC riprovano a spedire il pacchetto un numero di volte prima di rinunciarvi.
- Invalid misc
Altri pacchetti persi in specifiche operazioni.
- Missed beacon
Numero di beacons periodici in arrivo dalla Cella o dall'Access Point che sono stati persi. I beacons sono spediti ad un intervallo regolare per mantenere la coordinazione della cella, la mancata ricezione di questi solitamente indica che la scheda è fuori campo.
Piu' istanze dello stesso comando, date anche ad intervallo di uno o due secondi, possono mostrare valori differenti dato che in tempo reale possono cambiare le situazioni di fading, interferenze,stato del canale ec.
tips and tricks
- Normalmente ponte2 viene salavato nella directory /etc per eseguirlo a linea di comando. Per eseguire lo script in automatico dopo un reboot, salvare lo script nella directory
/etc/init.d
come S98ponte2
e renderlo eseguibile.
- Nelle prime righe ponte2 abbatte tutte le connessione wlan esistenti, per cui se hai lanciato lo script tramite una connessione wlan viene perso il collegamento con la Fonera.
- Il consiglio e' quello di lanciare ponte2 da una connessione ethernet, meglio se tramite la eth0:1 ovvero attestando il pc su un indirizzo tipo 169.254.255.0/24 (ad esclusione di quello della Fonera 169.254.255.1)
-
Anche dopo aver lanciato ponte2 e' sempre possibile accedere alla fonera attraverso il suo IP (di salvataggio) 169.254.255.1 Ponte2 non altera questa impostazione.
-
Una volta che la configurazione e' soddisfacente puoi lanciare ponte2 senza passare piu' dal form della pagina web: questa pagina infatti non ha altri compiti che scrivere il file di configurazione che sara' poi letto da ponte2 al suo avvio. Volendo e' possibile rinominare uno o piu' file di configurazione-ad-hoc ed usarli a seconda delle funzionalita' che si vogliono ottenere.
Antonio Anselmi (email me)
al mondo ci sono 10 tipi di persone: chi capisce il binario e chi no!