7 votes

Comment partager l'internet "Reverse-tethered" d'Android via Android WiFi ?

Avant d'aborder la question principale, nous savons que :

Maintenant la question est :

"Existe-t-il un moyen de partager l'internet inversé (que nous connaissions connecté via usb0 interface) via "Android WiFi Hotspot ?"

Pour faciliter les choses, voici le schéma :

schema
Schéma de mon installation (cliquez sur l'image pour une variante plus grande)

*Notes supplémentaires :

  • En fait, je ne donne pas de limite à la version d'Android (donc si c'est juste compatible avec une version supérieure, par exemple 4.2, c'est bon pour moi), mais je préfère que ça fonctionne sur 2.3.x (Gingerbread).

  • Quelques explications sur la façon de faire de l'APN (Infrastructure Mode) sur Android (comme un routeur sans fil/[ netsh wlan hostednetwork ] sur Windows 7/8) pourrait également être très utile.

  • Et aussi quelques explications sur comment masquer (partage d'internet) entre deux interfaces dans Android. (comme ICS dans Windows ou Masquerade/iptables thingy dans Linux-based)

5voto

ankostis Points 166

J'ai réussi à le faire fonctionner. Voici un diagramme "OSI-like" de mon installation, si cela a un sens :

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

Le script se trouve sur le forum 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

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X