Come condividere una connessione Internet cablata con un telefono Android (tethering inverso)?


26

Ho provato a condividere la mia connessione Internet via cavo con il mio telefono Android. Tuttavia non sono riuscito a farlo. Qualcuno di voi è mai riuscito? I sistemi operativi che utilizzo sono i seguenti:

  • Ubuntu 10.10
  • Android 2.3

1
Ho provato a trovare una soluzione per qualche tempo a questo, e ho provato diverse cose, senza successo. Penso che l'opzione migliore sarebbe quella di creare una rete wireless su Ubuntu che NON sia una rete wifi Adhoc (perché Android non rileva tali connessioni). Ci sono istruzioni su come farlo là fuori, ma le trovo o troppo complicate o semplicemente non funzionano. Pertanto, una procedura dettagliata su come eseguire questa operazione sarebbe benvenuta.
geoffrey,

È probabile che dovrai specificare il nome della rete sul tuo dispositivo Android.
Jo-Erlend Schinstad,

Ancora nessuna risposta soddisfacente dopo il periodo di grazia, quindi suppongo che la risposta a questa domanda sia: è davvero difficile! Ho assegnato la generosità alla risposta più "votata", una risposta utile anche se non la soluzione che stavo cercando.
geoffrey,

@ Jo-ErlendSchinstad Grazie, ho provato questo ma non aiuta.
geoffrey,

Risposte:


10

Sì, è possibile. Ho Ubuntu 11.04, NetworkManager 0.8.4, Android Nexus One con Cyanogenmod 7.

Come descritto da Roman, fai clic con il pulsante destro del mouse sull'icona NetworkManager e scegli "Crea nuova rete wireless". Ho scelto di lasciare la connessione spalancata (no WPA, no WEP). Il mio telefono è stato in grado di vedere subito la rete e mi sono connesso senza problemi. Il collegamento è stato fatto automaticamente in modo da poter navigare in Internet senza configurare nulla in più.

Il motivo per cui hai problemi con il metodo sopra è perché Android 2.3 di serie non supporta le reti ad hoc. Per essere precisi, il wpa_supplicant di Android non mostra reti ad hoc. Esistono diversi modi per risolvere questo problema. Cercate su Google e andate a caccia nei forum degli sviluppatori xda. Probabilmente dovrai fare degli hacker sul tuo telefono che vanno oltre lo scopo di questa risposta.

Il mio consiglio personale: se il tuo telefono supporta Cyanogenmod, puoi installarlo per ottenere supporto ad-hoc e altre delizie da hacker. Dovrai eseguire il root del tuo telefono, che potrebbe essere o non essere di tuo gusto.

Un'altra alternativa è provare "Modalità infrastruttura". Dopo aver configurato la rete wireless ad hoc come sopra, fare clic sull'icona NetworkManager, selezionare "Modifica connessioni". Premi la scheda wireless e modifica la rete ad hoc appena creata. In Modalità, seleziona "Infrastruttura". Non sono sicuro se questo funzionerà per te poiché non ho un telefono Android di serie con cui provare. Il mio pensiero è se la modalità ad hoc è il problema, quindi un'altra modalità potrebbe essere la soluzione.

In bocca al lupo!


Grazie! Bene, capisco che il rooting di un Wildfire S non è così semplice, quindi non funzionerà per me. La "modalità infrastruttura" sembra interessante, ma finora non sono stato in grado di farlo funzionare: semplicemente non si connetteva. Proverò a cercare su google le soluzioni a questo problema ...
geoffrey,

3

Prima di tutto, come tutti sappiamo, la ROM di stock di Android, ovvero quella fornita con il telefono non supporta la modalità ad-hoc (sorprendentemente), e persino Ice-Cream Sandwich (Android 4.0) non supporterà la modalità ad-hoc.

Quindi, dobbiamo creare un punto di accesso utilizzando Ubuntu a cui qualsiasi telefono Android può facilmente connettersi. In Windows puoi utilizzare Connectify per farlo e funziona perfettamente ma con Ubuntu potresti avere alcuni problemi, a seconda che la tua scheda wifi supporti la modalità punto di accesso (modalità master) o meno.

Ora, anche se la tua scheda wifi supporta la modalità punto di accesso, il problema successivo è se il driver della tua scheda wifi supporta la modalità AP o meno, se lo fa, il problema è risolto e in caso contrario hai tre opzioni:

  1. Attendere fino a quando il driver riceve un aggiornamento per la modalità AP. (molti driver di schede wifi sono ancora in fase di gestione temporanea)

  2. Acquista un dongle wifi e assicurati che supporti la modalità AP su Ubuntu.

  3. Usa Windows, dove Connectify farà il lavoro per te.

Se sei interessato, puoi pubblicare il nome del driver della tua scheda wifi in modo che io possa aiutarti ulteriormente. Usa questo comando:

lshw -c network

Una soluzione funzionante, segui questo link: superuser.com/questions/407371/…
adnan kamili,

3

Ho trovato una soluzione funzionante per condividere la mia connessione Internet con il mio telefono tramite il tethering inverso USB, ma il mio laptop utilizza una connessione wireless per esso:

Internet -> Wireless -> Laptop -> Cavo USB -> Telefono Android

Quindi, se ciò fosse possibile per te, o se hai una seconda scheda Ethernet per il tuo PC, dovresti controllare l'app "Reverse Tether Trial" dal Play Store.

  1. Collega il tuo PC a Internet come al solito
  2. Collega il tuo telefono Android tramite USB al PC
  3. Attiva "USB-Tethering" nelle "Impostazioni" di Androids
  4. Creare una nuova connessione cablata nel gestore di rete Ubuntus come descritto qui
  5. Avviare Reverse Tether e seguire le istruzioni
  6. Naviga sul tuo telefono :)

2

Dai un'occhiata a questo link e dimmi se è più o meno quello che stai cercando.
https://help.ubuntu.com/community/WifiDocs/WirelessAccessPoint

Se sembra che sia (o è vicino a) quello che stai cercando fammi sapere.
Sono interessato a farlo da solo, solo con la leggera modifica del traffico diretto tramite ppp0. Che è una connessione vincolata.
Forse possiamo modificare queste istruzioni per fare ciò di cui abbiamo bisogno.

Modifica: sembra che funzioni meglio su una macchina dedicata (essenzialmente trasformandola in un router). Sto ancora esaminando le configurazioni, ma ciò potrebbe causare alcuni problemi a un laptop che utilizzeresti il ​​wireless per collegarti a varie posizioni.
Inoltre, sembrano esserci un paio di passaggi che coinvolgono un computer Windows che potremmo forse rinunciare.

Ti consigliamo di vedere anche questo. https://help.ubuntu.com/community/WifiDocs/MasterMode


Inoltre, ho provato a configurare il wireless tramite Network Manager (come suggerito da RocketScientist) senza alcun vero successo. Ciò non significa che non possa funzionare solo che non ha funzionato per me. C'è forse un'altra variabile che non avevo che ha. bridge-utils per esempio.
Argusvision,

grazie, sembra interessante (anche se piuttosto complicato). Sfortunatamente non ho tempo di esaminarlo prima di domenica, ma per favore segnala qualsiasi successo con questo.
geoffrey,

Spero di avere la possibilità di giocarci. Qualche possibilità che tu possa estendere la generosità a lunedì mattina, così posso farlo questo fine settimana?
Argusvision,

scusa, ma non credo di avere il potere di estendere la generosità ...
Geoffrey,

... ma c'è un periodo di "grazia" di 24 ore dopo la fine della taglia, quindi questo ti dà un altro giorno
geoffrey,

2

Seguiva una soluzione funzionante per me con cavo USB su Kubuntu 15.10 e Android 4.2.2 su un Samsung S3 mini

Requisiti

androide

  1. applicazione busybox installata
  2. Cavo USB per il tuo computer
  3. Debug USB abilitato sul tuo dispositivo Android (per poter adb dal tuo PC)

Computer

  1. Nella tua / etc / network / interfaces devi avere queste due linee altrimenti riceverai un no such deviceerrore

    allow-hotplug usb0
    auto usb0
    
  2. adb installato ( apt-get install android-tools-adb)

Connessione

  1. Nel tuo Android, abilita l'opzione Impostazioni-> Connessioni-> Connessioni di rete-> Tethering e hotspot portatile-> Tethering USB, questo creerà una connessione USB al tuo computer che puoi vedere con il ifconfigcomando sul tuo computer. Guarda @ il nome dell'interfaccia che per me è enxf6759e7fbebdquesta volta.

    enxf6759e7fbebd Link encap:Ethernet  HWaddr a2:61:3c:83:1c:38  
        UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
        RX packets:6 errors:0 dropped:0 overruns:0 frame:0
        TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000 
        RX bytes:464 (464.0 B)  TX bytes:0 (0.0 B)
    
    eth0      Link encap:Ethernet  HWaddr 50:e5:49:47:f4:fd  
        inet addr:192.168.178.20  Bcast:192.168.178.255  Mask:255.255.255.0
        UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
        RX packets:40894966 errors:0 dropped:0 overruns:0 frame:0
        TX packets:86312833 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000 
        RX bytes:20969506400 (20.9 GB)  TX bytes:120329513606 (120.3 GB)
    
    lo        Link encap:Local Loopback  
        inet addr:127.0.0.1  Mask:255.0.0.0
        UP LOOPBACK RUNNING  MTU:65536  Metric:1
        RX packets:30521 errors:0 dropped:0 overruns:0 frame:0
        TX packets:30521 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:0 
        RX bytes:10868749 (10.8 MB)  TX bytes:10868749 (10.8 MB)
    
  2. Assegna un indirizzo IP al tuo computer su questa interfaccia di rete con il seguente comando in sudo ifconfig enxf6759e7fbebd 192.168.42.135 netmask 255.255.255.0cui enxf6759e7fbebd è l'interfaccia ottenuta al passaggio precedente.

  3. Abilita la cancellazione IP con

    sudo -- sh -c  'echo 1 > /proc/sys/net/ipv4/ip_forward'
    
  4. Abilita nat sul tuo computer con

    sudo iptables -t nat -F
    sudo iptables -t nat -A POSTROUTING -j MASQUERADE
    
  5. Sul tuo computer connettiti al tuo dispositivo Android con

    adb shell
    su
    
  6. quindi già avendo la tua connessione puoi controllare con il busybox ifconfig -acomando

    rndis0    Link encap:Ethernet  HWaddr FA:08:D6:1A:35:90  
        inet addr:192.168.42.129  Bcast:192.168.42.255  Mask:255.255.255.0
        inet6 addr: fe80::f808:d6ff:fe1a:3590/64 Scope:Link
        UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
        RX packets:0 errors:0 dropped:0 overruns:0 frame:0
        TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000 
        RX bytes:0 (0.0 B)  TX bytes:564 (564.0 B)
    

puoi aggiungere il percorso predefinito all'indirizzo di rete del tuo computer che hai risolto al punto 2 busybox route add default gw 192.168.42.135 dev rndis0e basta (puoi controllare i tuoi percorsi con busybox routecomando)


1

Supponendo che nel computer sia presente anche una scheda wireless: in Network Manager, fai clic sul menu e "Crea nuova rete wireless ...". Successivamente, vedrai la rete sul tuo Android.


1

Puoi creare una rete wireless dal menu wifi del tuo computer. Fare clic con il tasto destro sull'icona wifi nella barra delle applicazioni e fare clic su Crea nuova rete. Compila le opzioni quindi connettiti ad esso dal tuo telefono. Assicurarsi che anche il computer sia collegato al cavo di rete cablato. Da quanto ho capito, il cavo dovrebbe essere automaticamente collegato al wireless e dovrebbe funzionare perfettamente.


Grazie per la risposta. Dopo aver creato una nuova rete wireless, non riesco a vedere questa rete sul mio telefono. Cosa ho fatto di sbagliato?
Erdem,

È molto strano. Sei sicuro che il tuo computer abbia una scheda wifi?
Romano,

2
Android non rileva il tipo di rete wireless "ad hoc" creato dal gestore della rete, quindi non funzionerà.
geoffrey,

0

Questo funziona per me

  • Ubuntu 12.04
  • Android 4.0.4

Installa hostapd

sudo apt-get install hostapd

In parole semplici, hostapd consente di creare punti di accesso wifi software che consentono una discreta quantità di opzioni di configurazione. Nel resto di questo post, mostrerò come creare un punto di accesso al software in Linux usando hostapd e condividere la tua Internet con i dispositivi attraverso di essa

Dopo aver installato hostapd, installare il server dhcp

sudo apt-get install dhcp3-server hostapd

Quindi, aprire un programma di editor di testo, ad esempio geditCopiare quanto segue in esso.

interface=wlan0
driver=nl80211
ssid=YOUR_SSID_NAME
hw_mode=g
channel=11
wpa=1
wpa_passphrase=YOUR_PASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
wpa_ptk_rekey=600

Modifica per inserire il nome della tua rete dopo ssid=, così come la password dopo wpa_passphrase=.

salva il file come hostapd.confnella tua cartella home

Crea un nuovo wireless ad hoc e collegalo.

Ora, apri il terminale e digita:

sudo hostapd hostapd.conf

Attiva il wifi del telefono e trova il tuo ssid.

Fonte da QUI


Questo mi avvicina molto ma il telefono è bloccato cercando di ottenere un indirizzo IP.
DavidG,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.