¿Cómo compartir una conexión a Internet por cable con un teléfono Android (conexión inversa)?

26

He estado tratando de compartir mi conexión a Internet por cable con mi teléfono Android. Sin embargo, no pude lograrlo. ¿Alguno de ustedes alguna vez tuvo éxito? Los sistemas operativos que uso son los siguientes:

  • Ubuntu 10.10
  • Android 2.3
Erdem
fuente
1
He estado tratando de encontrar una solución por algún tiempo para esto, y he intentado varias cosas, sin éxito. Creo que la mejor opción sería crear una red inalámbrica en Ubuntu que NO sea una red wifi Adhoc (porque Android no detecta tales conexiones). Hay instrucciones sobre cómo hacer esto, pero las encuentro demasiado complicadas o simplemente no funcionan. Por lo tanto, un recorrido paso a paso sobre cómo hacer esto sería bienvenido.
geoffrey
Es probable que tenga que especificar el nombre de la red en su dispositivo Android.
Jo-Erlend Schinstad
Todavía no hay una respuesta satisfactoria después del período de recompensa, así que supongo que la respuesta a esta pregunta es: ¡es realmente difícil! Le he otorgado la recompensa a la respuesta más "votada", una respuesta útil incluso si no es la solución que estaba buscando.
geoffrey
@ Jo-ErlendSchinstad Gracias, probé esto pero no ayuda.
geoffrey

Respuestas:

10

Sí, es posible. Tengo Ubuntu 11.04, NetworkManager 0.8.4, teléfono Android Nexus One con Cyanogenmod 7.

Como lo describe Roman, haga clic con el botón derecho en el ícono NetworkManager y elija "Crear nueva red inalámbrica". Elegí dejar la conexión abierta (sin WPA, sin WEP). Mi teléfono pudo ver la red de inmediato y me conecté sin problemas. El puente se realizó automáticamente para poder navegar por Internet sin configurar nada adicional.

La razón por la que tiene problemas con el método anterior es porque el stock Android 2.3 no es compatible con redes ad-hoc. Para ser precisos, el wpa_supplicant de Android no muestra redes ad-hoc. Hay varias formas de solucionar esto. Busca en Google y ve a cazar en los foros de xda-developers. Probablemente necesitará hacer algún hackeo en su teléfono que está más allá del alcance de esta respuesta.

Mi recomendación personal: si su teléfono es compatible con Cyanogenmod, puede instalarlo para obtener soporte ad-hoc y otras delicias piratas. Tendrá que rootear su teléfono, que puede o no ser de su agrado.

Otra alternativa es probar el "modo Infraestructura". Después de configurar la red inalámbrica ad-hoc como se indica arriba, haga clic en el icono NetworkManager, elija "Editar conexiones". Presione la pestaña inalámbrica y edite la red ad-hoc que acaba de crear. En Modo, elija "Infraestructura". No estoy seguro de si esto funcionará para usted, ya que no tengo un teléfono Android con el que probar. Mi opinión es que si el modo ad-hoc es el problema, entonces el otro modo podría ser la solución.

¡Buena suerte!

cientifico de cohetes
fuente
¡Gracias! Bueno, entiendo que rootear un Wildfire S no es tan simple, así que eso no funcionará para mí. El 'modo infraestructura' suena interesante, pero hasta ahora no pude hacerlo funcionar, simplemente no se conecta. Intentaré buscar soluciones para ese problema ...
geoffrey
3

En primer lugar, ya que todos conocemos el stock ROM de Android, es decir, el que viene con el teléfono no admite el modo ad-hoc (sorprendentemente), e incluso Ice-Cream Sandwich (Android 4.0) no admitirá el modo ad-hoc.

Por lo tanto, necesitamos crear un punto de acceso usando Ubuntu al que cualquier teléfono Android pueda conectarse fácilmente. En Windows, puede usar Connectify para hacerlo y funciona perfectamente bien, pero con Ubuntu puede tener ciertos problemas, dependiendo de si su tarjeta wifi admite el modo de punto de acceso (modo maestro) o no.

Ahora, incluso si su tarjeta wifi admite el modo de punto de acceso, el siguiente problema es si el controlador de su tarjeta wifi admite o no el modo AP, si lo hace, entonces el problema está resuelto y si no, entonces tiene tres opciones:

  1. Espere hasta que el controlador reciba una actualización para el modo AP. (muchos controladores de tarjetas wifi todavía están en etapa de preparación)

  2. Compre un dongle wifi y asegúrese de que sea compatible con el modo AP en ubuntu.

  3. Use Windows, donde Connectify hará el trabajo por usted.

Si está interesado, puede publicar el nombre de su controlador de tarjeta wifi para que pueda ayudarlo más. Usa este comando:

lshw -c network
adnan kamili
fuente
Una solución de trabajo, siga este enlace: superuser.com/questions/407371/...
Adnan Kamili
3

Encontré una solución que funciona para compartir mi conexión a Internet con mi teléfono a través del anclaje inverso USB, pero mi computadora portátil utiliza una conexión inalámbrica para ello:

Internet -> Inalámbrico -> Laptop -> Cable USB -> teléfono Android

Entonces, si eso fuera posible para usted, o si tiene una segunda tarjeta ethernet para su PC, debe consultar la aplicación 'Reverse Tether Trial' en Play Store.

  1. Conecta tu PC a Internet como siempre
  2. Conecte su teléfono Android a través de USB a su PC
  3. Active 'USB-Tethering' en Androids 'Settings'
  4. Cree una nueva conexión por cable en el administrador de red de Ubuntus como se describe aquí
  5. Inicie Reverse Tether y siga sus instrucciones.
  6. Navega en tu teléfono :)
sombra
fuente
2

Consulte este enlace y dígame si es más o menos lo que está buscando.
https://help.ubuntu.com/community/WifiDocs/WirelessAccessPoint

Si parece que es (o está cerca de) lo que estás buscando, házmelo saber.
Estoy interesado en hacerlo yo mismo, solo con la ligera modificación de dirigir el tráfico a través de ppp0. Que es una conexión atada.
Quizás podamos ajustar estas instrucciones para hacer lo que necesitamos.

Editar: Parece que funcionaría mejor en una máquina dedicada (esencialmente convirtiéndola en un enrutador). Todavía estoy revisando las configuraciones, pero esto podría causar algunos problemas para una computadora portátil que usaría de forma inalámbrica para conectarse a varias ubicaciones.
Además, parece que hay un par de pasos que involucran una máquina Windows que tal vez podamos renunciar.

También querrás ver esto. https://help.ubuntu.com/community/WifiDocs/MasterMode

Argusvision
fuente
Además, intenté configurar la conexión inalámbrica a través de Network Manager (como lo sugirió RocketScientist) sin ningún éxito real. Eso no significa que no pueda funcionar solo que no lo hizo para mí. Quizás haya otra variable que no tenía que él tiene. bridge-utils por ejemplo.
Argusvision
gracias, eso suena interesante (aunque bastante complicado). Desafortunadamente, no tengo tiempo para investigarlo antes del domingo, pero por favor informe cualquier éxito con esto.
geoffrey
Espero tener la oportunidad de jugar con eso. ¿Hay alguna posibilidad de que pueda extender la recompensa hasta el lunes por la mañana para que pueda trabajar este fin de semana?
Argusvision
lo siento, pero no creo que tenga el poder de extender la recompensa ...
geoffrey
... pero hay un período de 'gracia' de 24 horas después del final de la recompensa, así que eso te da otro día
geoffrey
2

Una solución que funcionaba para mí con un cable USB en Kubuntu 15.10 y Android 4.2.2 en un Samsung S3 mini estaba siguiendo

Requisitos

Androide

  1. aplicación busybox instalada
  2. Cable USB a su computadora
  3. Depuración de USB habilitada en su dispositivo Android (para poder agregar desde su PC)

Computadora

  1. En su / etc / network / interfaces necesita tener estas dos líneas, de lo contrario obtendrá un no such deviceerror

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

Conexión

  1. En su Android, habilite la opción Configuración-> Conexiones-> Conexiones de red-> Anclaje a red y zona portátil-> Anclaje a red USB, esto creará una conexión USB a su computadora que puede ver con un ifconfigcomando en su computadora. Mira @ el nombre de la interfaz que para mí es enxf6759e7fbebdesta vez.

    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. Asigne una dirección IP a su computadora en esta interfaz de red con el siguiente comando sudo ifconfig enxf6759e7fbebd 192.168.42.135 netmask 255.255.255.0donde enxf6759e7fbebd es la interfaz que obtuvo en el paso anterior.

  3. Habilitar IP forwaring con

    sudo -- sh -c  'echo 1 > /proc/sys/net/ipv4/ip_forward'
    
  4. Habilite nat en su computadora con

    sudo iptables -t nat -F
    sudo iptables -t nat -A POSTROUTING -j MASQUERADE
    
  5. En su computadora, conéctese a su dispositivo Android con

    adb shell
    su
    
  6. entonces ya teniendo su conexión puede verificar con el 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)
    

puede agregar la ruta predeterminada a la dirección de red de su computadora que fijó en el punto 2 busybox route add default gw 192.168.42.135 dev rndis0y eso es todo (puede verificar sus rutas con el busybox routecomando)

Philippe Gachoud
fuente
1

Suponiendo que también tenga una tarjeta inalámbrica en su computadora: en Network Manager, haga clic en el menú y 'Crear nueva red inalámbrica ...'. Más tarde, verás la red en tu Android.

gpoo
fuente
1

Puede crear una red inalámbrica desde el menú wifi de su computadora. Haga clic derecho en el icono de wifi en la barra de tareas y haga clic en crear nueva red. Complete las opciones y luego conéctese desde su teléfono. Asegúrese de que su computadora también esté conectada al cable de red con cable. El cable debería conectarse automáticamente a la red inalámbrica desde mi entendimiento, y todo debería funcionar bien.

romano
fuente
Gracias por la respuesta. Después de crear una nueva red inalámbrica, no puedo ver esta red en mi teléfono. ¿Qué hice mal?
Erdem
Eso es muy extraño. ¿Estás seguro de que tu computadora tiene una tarjeta wifi?
Roman
2
Android no detecta el tipo de red inalámbrica 'adhoc' creada por el administrador de red, por lo que esto no funcionará.
geoffrey
0

Esto funciona para mi

  • Ubuntu 12.04
  • Android 4.0.4

Instalar hostapd

sudo apt-get install hostapd

En palabras simples, hostapd le permite crear puntos de acceso wifi de software que permiten una cantidad decente de opciones de configuración. En el resto de esta publicación, mostraré cómo crear un punto de acceso de software en Linux usando hostapd y compartir su internet con los dispositivos a través de él.

Después de instalar hostapd, instale el servidor dhcp

sudo apt-get install dhcp3-server hostapd

Luego, abra un programa editor de texto, por ejemplo, geditcopie lo siguiente en él.

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

Cambie para completar el nombre de su red después ssid=, así como la contraseña después wpa_passphrase=.

guarda el archivo como hostapd.confen tu carpeta de inicio

Cree una nueva conexión inalámbrica ad-hoc y conéctela.

Ahora, abra la terminal y escriba:

sudo hostapd hostapd.conf

Encienda el wifi de su teléfono y encuentre su ssid.

Fuente de AQUÍ

Achu
fuente
Esto me acerca mucho, pero el teléfono está atascado tratando de obtener una dirección IP.
DavidG