
Originariamente inviato da
Eribird
A volte nasce l'esigenza, spesso trascurata dai produttori di Android, e non solo di Android, di avere contemporaneamente attive sia l'interfaccia wifi, sia l'interfaccia dati su rete mobile (chiamiamola "apn").
Qualcuno potrebbe doverla usare per stampare su una stampante di rete wireless una pagina web a cui si sta accedendo via apn, qualcuno, come nel mio caso, per connettersi a due reti diverse senza dover continuamente commutare tra una e l'altra con le inevitabili perdite di tempo (ad es. Internet su wifi, Intranet aziendale su apn, o viceversa).
Non so se si può generalizzare il discorso per altre marche o modelli, ma almeno sul Motorola MB860 il sistema, che ho scoperto quasi casualmente, funziona.
Normalmente quando si attiva il wifi del telefonino la connettività dati mobile (apn) viene abbattuta dal sistema operativo. In altre parole, i due device, o interfacce che dir si voglia, eth0 e ppp0 non vengono lasciati convivere. Normalmente...
Su Windows Mobile, almeno sulla versione 6 che ho avuto su un HTC, questo non accade, con WM6 si possono definire regole di instradamento per "dirigere il traffico" su una o sull'altra interfaccia, invece su Android, o almeno sulla versione installata di serie sugli Atrix, non si potrebbe, "grazie" all'arbitro inflessibile che butta giù l'apn quando si accende il wifi.
C'è tuttavia un modo per fottere l'arbitro, che nel caso dell'Atrix pare non sia tanto attento. Il trucco consiste nel "killare" l'applicativo di sistema che gestisce la parte radio, lo trovate nella lista processi (comando linux "ps") sotto il nome com.android.phone.
Dopo aver terminato forzatamente il processo si può notare che dopo una temporanea perdita di "campo", il segnale ritorna, e insieme al segnale, miracolosamente, risorge l'apn, ANCHE CON WIFI ATTIVO.
Il passo successivo è, ovviamente, stabilire delle regole di routing per "dirigere il traffico". Da shell si può semplicemente usare il comando:
route -net X.0.0.0 netmask 255.0.0.0 dev ppp0
ripetendolo per tutti i subnet da reindirizzare verso l'apn piuttosto che verso il wifi.
Si può racchiudere l'intera procedura in un semplice file bash da lanciare con un semplice click tipo questo:
pkill com.android.phone
sleep 20
route -net 10.0.0.0 netmask 255.0.0.0 dev ppp0
Spero la cosa sia utile a qualcuno.