¿Hay alguna manera de compartir la conexión a Internet de mi computadora con mi Android a través de USB?

16

¿Hay alguna manera de compartir mi conexión a Internet de escritorio con mi Android 2.2.1 usando el cable de datos del teléfono?

Florín
fuente
¿A qué te refieres? ¿Estás tratando de compartir la conexión desde un teléfono Android conectado?
Oli
No, quiero compartir la conexión a Internet de la computadora con mi teléfono Android. Entonces, al revés que no sea atar.
panmari
Tal vez podrías explicar exactamente lo que estás tratando de hacer. ¿Por qué querrías usar el internet de tu laptop en tu teléfono?
user606723
2
@ user606723 Hay muchas razones para querer hacer esto, por ejemplo, obtener un servicio de Internet más rápido o más barato, querer capturar o probar MITM para paquetes desde el teléfono, etc. , que se puede descargar desde HTC.com
nealmcb
2
Esto se llama anclaje inverso.
BigSack

Respuestas:

10

Bueno, se puede hacer con dispositivos rooteados 2.2+. No es simple

Antes de comenzar, puede que le resulte más fácil comprar un dongle USB Wifi barato y compartir la conexión a su teléfono a través de eso. Es un procedimiento mucho más simple y no requiere root en el teléfono.

Pero aquí está cómo hacerlo a través de USB:

  1. Ponga su teléfono en modo de depuración USB (en configuración → aplicaciones → usb). Enchufe el teléfono.

  2. Luego, debe activar la conexión USB en el teléfono. En mi SGS2, esto se encuentra en Configuración → Inalámbrico y red → Anclaje a red y puntos de acceso portátiles.

    En este punto, se agregará un nuevo dispositivo de red a la computadora ( usb0).

  3. Encienda los siguientes comandos para unir eth0 y su nueva conexión USB.

    sudo apt-get install bridge-utils
    
    sudo brctl addbr br0
    
    for i in eth0 usb0; do
        sudo ifconfig $i 0.0.0.0
        sudo brctl addif br0 $i
    done
    
    sudo ifconfig br0 up
    sudo dhclient br0 # might take a few seconds
    
  4. Luego cargue un terminal en su teléfono (o use el SDK adb shell) y dispare (como root):

    netcfg usb0 dhcp
    

Para revertirlo todo:

for i in eth0 usb0 br0; do sudo ifconfig $i down; done
sudo brctl delbr br0
sudo ifconfig eth0 up
sudo dhclient eth0

Para facilitar un poco las cosas, existen algunas aplicaciones que hacen el lado del teléfono (ASProxy, por ejemplo), pero aún necesita un dispositivo 2.2 rooteado. El lado informático de las cosas puede ser programado. Incluso podría conectarse a udev para disparar estos comandos cuando conecte el teléfono (y destruir el puente cuando lo desenchufe).

Oli
fuente
Gracias por su respuesta rápida =) Desearía que hubiera una manera más fácil :(
panmari
Consulte esta página para obtener más detalles y comentarios sobre este tipo de "anclaje inverso": blog.mycila.com/2010/06/… Me sorprende que sea tan difícil, y supongo que existe un método más simple de ubuntu, que presumiblemente involucra Configuración de Ubuntu para ser un router a través de FORWARD_IPV4 = true etc.
nealmcb
No usb0aparece una interfaz en mi computadora portátil (usando 12.04) ¿alguna idea?
Hamish Downer
Esta aplicación de anclaje inverso y su página de ayuda me ayudaron a hacer esto con éxito.
Anwar
2

Hay algunas notas antiguas sobre Reverse USB Tethering con Android 2.2 con un Nexus One.

He planeado probar esto sin rootear mi HTC DHD.
Tiene una opción de transferencia de Internet que funciona muy bien en Windows,
así que me pregunto si esto se puede usar en las mismas líneas a través de Ubuntu ...
Todavía no lo he probado, me encantaría saber de cualquier experiencia de primera mano.

Los requisitos de esas notas son,

Android 2.2 (o una versión anterior con una aplicación de anclaje de raíz)
ADB desde Android SDK, o un Android 2.2 rooteado con terminal en modo raíz

nik
fuente