7 votos

¿Cómo compartir la Internet "a la inversa" de Android a través de la WiFi de Android?

Antes de entrar en la pregunta principal, sabemos que..:

Ahora la pregunta es:

"¿Hay alguna manera de compartir la Internet de conexión inversa (como la conocemos conectada a través de la interfaz usb0) a través de "Android WiFi Hotspot"?"

Para hacerlo más fácil, aquí está el esquema:

schema
Esquema de mi configuración (haga clic en la imagen para ampliar la variante)

*Notas adicionales :

  • En realidad no pongo un límite a la versión del Android (así que si sólo es compatible en la versión superior, por ejemplo 4.2, está bien para mí), pero prefiero que funcione en 2.3.x (Pan de jengibre)

  • Algunas explicaciones de cómo hacer APN (Modo de Infraestructura) en Android (al igual que Wireless Router/[netsh wlan hostednetwork] en Windows 7/8) podrían ser realmente útiles también.

  • Y también algunas explicaciones sobre cómo disfrazar (compartir Internet) entre dos interfaces en Android. (como el ICS en Windows o la cosita de la mascarada/iptables en Linux)

5voto

ankostis Puntos 146

Me las arreglé para hacer que funcione. Aquí hay un diagrama "como OSI" de mi configuración, si tiene sentido:

 ____________________   ______________________________    ____________
|   LinuxVM <----+  |  |                              |  |            |
|  VirtualBox    |  |  |                              |  |            |
| Windows7(host) |  |  | +--> AndroidPhone <-------+  |  | +-->Laptop |
|  (USB)         +-------+   (USB)  (wifi-HotSpot) +-------+   (wifi) |
|___________________|  |______________________________|  |____________|

El script se encuentra en el foro de XDA: http://forum.xda-developers.com/showpost.php?p=50236807&postcount=9

## 0.a. Connect android-phone to PC through USB.
## 0.b Enable Settings|...|Tethering 
##  (so that the device gets detected by the PC's kernel, you should see the following with 'dmsg':
##         [    3.976599] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-0000:00:0b.0-1, RNDIS device, 4e:d5:8c:7b:4f:5a
## Enable Settings|...|Wifi-Hotspot

## Setup usb reverse-tethering.
#  from: http://forum.xda-developers.com/show....php?t=2287494
#
#  Yours device might be 'rndis0' or something else.  Check by just typing 'netcfg'.
#
netcfg usb0 dhcp
busybox route add default gw 10.42.0.1 dev usb0

## Disable mobile-data.
#
busybox ifconfig rmnet_usb0  0.0.0.0

## Masquerade through USB.
#
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -F
iptables -t nat -A POSTROUTING -o usb0 -j MASQUERADE
iptables -P FORWARD ACCEPT

## Set DNS (if neccessary, ie google's 8.8.4.4).
#
setprop net.dns1 XX.YY.ZZ.WW

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X