Questo documento rappresenta una breve guida all’utilizzo di Zeroshell nella funzione di router per collegamenti mobili in GPRS, EDGE, UMTS e HSDPA (conosciuta spesso come ADSM ovvero ADSL Mobile). Per raggiungere tale risultato è necessario disporre di un modem 3G Mobile che venga visto dal Kernel Linux come dispositivo USB o di un telefono cellulare connesso mediante cavo USB. Si discute inoltre della possibilità di incrementare le prestazioni delle connessioni mobili dotando il router di più modem e facendoli lavorare contemporaneamente bilanciando il carico.
Questo documento è suddiviso nelle seguenti sezioni:
- Perché utilizzare un router 3G Mobile?
- Modem 3G supportati
- Configurare una connessione UMTS/HSDPA
- Load balancing e Failover tra più connessioni a Internet
Perché utilizzare un router 3G Mobile?
Nella maggior parte dei casi, le connessioni dati alla rete telefonica cellulare avvengono mediante un modem (o un telefonino) direttamente connesso al proprio laptop. Ciò è giustificato dal fatto che tali connessioni sono spesso utilizzate quando si è in viaggio e non si può accedere alla propria connessione a larga banda (ADSL, Wi-Fi o WiMAX) di casa o dell’ufficio. Queste ultime sono senz’altro più performanti, affidabili e meno costose, ma difficilmente fruibili in mobilità. D’altra parte, il problema del Digital Divide relativo alla non omogenea distribuzione di connessioni a banda larga, anche all’interno dello stesso paese, fa si che i collegamenti dati alla rete telefonica cellulare siano usate in maniera sistematica anche nella propria abitazione o ufficio, qualora non ci sia altra alternativa. Infine, con l’avvento di HSDPA, che ha una banda di trasmissione teorica di 14.4Mbit/s (in download) e che sta via via sostituento lo standard UMTS, si può fruire dei contenuti multimediali che Internet mette a disposizione, con una qualità paragonabile a quella che si avrebbe nel caso di un collegamento xDSL. Su HSDPA, anche applicazioni di tipo VoIP (Voice over IP) funzionano ragionevolmente bene e permettono di effettuare chiamate telefoniche con le tariffe tipiche della telefonia fissa, spesso, decisamente più convenienti di quelle della fonia mobile.
Premesso tutto ciò, rispondiamo finalmente alla domanda “Perché utilizzare un router 3G Mobile?”. Semplice, piuttosto che utilizzare l’abbonamento dati con un operatore di telefonia mobile su di un solo Personal Computer per volta è meglio condividere tale risorsa su più client contemporaneamente. Di conseguenza, non bisogna connettere il modem 3G con dentro la SIM ad un PC, ma invece ad un router che si incarichi di effettuare la connessione IP verso la compagnia telefonica mobile e di distribuire il traffico su Ethernet e Wi-Fi. Eventuali telefoni VoIP potranno essere connessi via Ethernet direttamente al router, evitando di dover tenere accesso notte e giorno un computer per ricevere le chiamate. Un router consuma meno di un decimo dell’energia necessaria ad un PC e soprattutto non ha ventole di raffreddamento e hard disk che si usurino e facciano rumore.
Se il router è dotato di un software come Asterisk per svolgere il compito di PBX e dispone di un’interfaccia FXS (l’interfaccia FXS di una linea telefonica analogica è quella lato centrale e si identifica con la presa al muro, mentre l’interfaccia FXO e quella presente dietro il telefono analogico) è possibile connettere un telefono tradizionale (non VoIP) o addirittura l’intero impianto telefonico di casa al router.
Un’ultima motivazione, che induce all’uso di un router UMTS/HSDPA, è la possibilità di collocarlo in posizioni dove il segnale del proprio operatore mobile è più forte (per esempio in soffitta) lasciando libero l’utente di connettersi a Internet tramite wireless dalla stanza che preferisce. Inoltre, benché le emissioni elettromagnetiche di un modem mobile, equivalenti a quelle di un telefono cellulare, non dovrebbero essere nocive per la salute, è sempre meglio, precauzionalmente, tenere tali oggetti il più lontano possibile se li si usa per un tempo prolungato. Le emissioni elettromagnetiche delle schede di rete e dei router WiFi sono di molto inferiori a quelle dei cellulari ed è pertanto preferibile avere acceso sul proprio PC portatile un dispositivo WiFi che un modem per reti cellulari. In quest’ultimo caso, se si tratta di un modem USB, si potrebbe far uso di una prolunga per allontanarlo dal proprio corpo.
Modem 3G supportati
La maggior parte dei modem UMTS/HSDPA hanno un’interfaccia USB che viene vista dal Kernel di Linux come convertitore USB-Seriale e vengono riconosciuti senza problemi. Vale lo stesso discorso per buona parte dei modem PCMCIA e MiniPCI Express, poiché emulano al loro interno un host USB. Anche i telefonini connessi tramite cavo USB sono spesso riconosciuti con la stessa modalità.
I modem USB testati con successo sono:
- Huawei E220
- Huawei E172
- Huawei E169
- Onda MT503HS
Mentre quelli MiniPCI Express testati sul PC Embedded Alix 6b2 ideale per queste applicazioni perché dotato di due slot per alloggiare le SIM delle compagnie telefoniche mobili:
- Novatel 5520 Mobile
- UMTS/HSDPA Sierra Wireless MC8775
- N7010 per il quale è stato necessario caricare manualmente il modulo Kernel usbserial.ko
Mentre l’unico telefonino cellulare testato è: In alcuni casi, così come per il telefono cellulare HSDPA N7010, è necessario associare manualmente il modulo di conversione USB-Seriale al dispositivo. Per esempio, nel caso sopra indicato si è usato il comando
modprobe usbserial vendor=0x05C6 product=0x6000
Per automatizzare il caricamento del modulo Kernel al boot è sufficiente inserire il comando modprobe citato sopra, all’interno dello script di Pre Boot usando la sezione [Setup][Startup/Cron] dell’interfaccia web di Zeroshell. Se non si conosce a priori i valori da assegnare ai parametri vendor e product, è sufficiente digitare il comando dmesg qualche secondo dopo aver connesso il modem al sistema. Tali parametri saranno visualizzati dal dmesg come idVendor e idProduct.
Configurare una connessione UMTS/HSDPA
Per creare una connessione UMTS/HSDPA utilizzare l’interfaccia web premendo il pulsante [New 3G Modem] nella sezione [Setup][Network]. Comparirà una finestra come quella illustrata nella figura sotto da cui effettuare la configurazione.
Configurazione connessione UMTS/HSDPA. Fai click sull’immagine per ingrandire.
Vediamo ora il significato di ogni singola voce configurabile in questo form:
- Description: Si tratta di una descrizione della connessione. È buona norma indicare in questo campo il nome della compagnia telefonica mobile con cui ci si sta connettendo.
- Modem connected to: Scegliere dall’elenco disponibile il device corrispondente alla connessione USB del modem 3G. Spesso, questi modem creano più di una porta di cui una sola è quella dati, mentre le altre sono di controllo. Purtroppo non vi è una regola fissa con cui ciò avviene ed è quindi necessario procedere per tentativi finché non si individua il device USB da utilizzare.
- APN: anche conosciuto come Access Point Name, indica il punto di accesso con cui il provider fornisce i servizi IP. Tale parametro dipende quindi dall’operatore telefonico mobile con cui si vuole instaurare la connessione. Alcuni esempi validi per alcune compagnie italiane sono:
- internet.wind (Wind Telecomunicazioni)
- web.omnitel.it (Vodafone Italia)
- ibox.tim.it (Telecom Italia Mobile)
- tre.it (3 Italia)
- Dial string: indica il numero della connessione e dipende dal modem o telefonino. Spesso corrisponde a *99***1#.
- Optional AT string: utilizzare questo campo se si vuole mandare al modem o telefonino una stringa di inizializzazione mediante il linguaggio AT. Nella maggior parte dei casi questo campo va lasciato vuoto. Puoi utilizzarlo per sbloccare la SIM, se questa è protetta dal PIN, mediante la stringa AT+CPIN=XXXX dove XXXX è il codice PIN.
- Autostart the connection at boot: se impostato su Yes abilita la connessione automatica al boot del sistema. Altrimenti bisogna far partire la connessione manualmente.
- Make this interface the Default Route: scegliendo Yes l’interfaccia point-to-point (ppp0, ppp1, …) viene automaticamente impostata come default route senza la necessità di impostare manualmente una route statica per raggiungere tale scopo. Nella maggior parte delle volte il valore di default (Yes) va bene.
- Enable NAT on this interface: poiché il provider ci fornisce un unico IP mentre noi vogliamo connettere al nostro router più client contemporaneamente, impostare questo valore a Yes per abilitare il NAT (Network Address Translation) sull’interfaccia point-to-point.
Load balancing e Failover tra più connessioni a Internet
Infine, grazie alla possibilità di connettere più di un modem 3G al router e utilizzando il modulo di Net Balancer di Zeroshell, si possono ottenere delle configurazioni che bilanciano le connessioni su più operatori e con Failover. Questo argomento è trattato in dettaglio da uno specifico documento, mentre nella figura sotto è illustrata una configurazione in cui viene bilanciato l’accesso a Internet su di un accesso ADSL e 3 connessioni UMTS/HSDPA.
Load balancing e Failover con una ADSL e 3 UMTS/HSDPA. Fai click sull’immagine per ingrandire.