Comment configurer le modem Internet inversé via USB?


125
  1. Mon téléphone HTC G2 est enraciné et exécute CyanogenMod 7
  2. Je n'ai pas de plan de données.
  3. Parfois, je souhaite connecter le téléphone à Internet en l'absence de Wi-Fi, mettre à jour les applications Market, sauvegarder des SMS vers Gmail, synchroniser de nouveaux contacts à partir de Gmail, etc. Ce que je ne peux pas faire avec le mode de stockage de masse USB.
  4. J'ai un ordinateur Windows 7 Professionnel connecté à Internet, mais je ne suis pas autorisé à configurer un réseau Wi-Fi ad hoc. (Si je le fais, ils vont remarquer et me traquer.)

Le téléphone a-t-il un moyen d'accéder à Internet via la connexion USB à l'ordinateur? Si oui, comment puis-je le configurer?


Cela ressemble à une solution partielle: forum.xda-developers.com/showthread.php?t=1371345
endolith

Réponses:


46

J'ai récemment découvert SimpleRT, qui fonctionne très bien avec Linux (et apparemment aussi avec OSX). Activez simplement le débogage USB sur votre appareil (aucune racine requise), installez l'APK lié à cette page sur votre appareil et connectez-le à votre PC via USB, puis exécutez le fichier binaire sur votre PC.

Il configurera la connexion en tant que tunnel VPN ( tun0par défaut) et votre appareil devrait vous inviter à (a) autoriser SimpleRT à créer / superviser la connexion VPN et (b) à l'exécuter si le périphérique est configuré en tant que accessoire USB particulier (ce que fait le binaire).

Le projet n'incluant pas de binaire pré-construit, j'ai donc téléchargé celui que j'ai construit pour Ubuntu .


Voici une méthode manuelle qui devrait fonctionner sous Linux ou Windows: http://blog.mathieu.carbou.me/post/60454997009/reverse-usb-tethering-with-android-2-2

ÉTAPE 1:

Pour Windows: Installez les pilotes USB à partir d'Android SDK

Pour Linux: rien à faire

ÉTAPE 2:

Sur le Nexus One: connectez le câble USB et activez le partage de connexion USB. Vous devriez voir sur Linux ou Windows une nouvelle interface réseau.

ÉTAPE 3:

Sur un ordinateur Linux, configurez un pont:

# usb0 is the new network interface
# eth0 is the main interface connected to internet (or a gateway)

sudo ifconfig eth0 0.0.0.0  
sudo ifconfig usb0 0.0.0.0  
sudo brctl addbr br0  
sudo brctl addif br0 eth0  
sudo brctl addif br0 usb0  
sudo ifconfig br0 up  
sudo dhclient br0

Voir https://help.ubuntu.com/community/NetworkConnectionBridge pour configurer des ponts.

Sur Windows, pontez les 2 interfaces réseau

ÉTAPE 4:

Configurez l'interface usb0 de votre téléphone. Vous avez des options:

  1. Depuis votre ordinateur, exécutez:

    ./adb shell netcfg usb0 dhcp
  2. Ou dans un terminal root de votre téléphone, tapez:

    su
    netcfg usb0 dhcp

Vous devriez maintenant pouvoir vous connecter à Internet sur votre téléphone en utilisant la connexion Internet de votre ordinateur.

Essayez de faire un ping sur www.google.com pour en être sûr!

ÉTAPE 5:

Pour arrêter le partage de connexion inverse, commencez par déconnecter les interfaces de votre ordinateur:

sudo ifconfig eth0 down  
sudo ifconfig usb0 down  
sudo ifconfig br0 vers le bas  
sudo brctl delbr br0  
sudo ifconfig eth0 up  
sudo dhclient eth0

Ensuite, sur votre téléphone, décochez l'option USB Tethering!

Vous pouvez également utiliser Windows pour créer un réseau WiFi (à l'aide de Connectify ) et connecter votre appareil à celui-ci: http://www.nexusoneforum.net/forum/nexus-one-faq-how-tos/3133-reverse-tether-getting -internet-your-phone.html


3
Dans mon téléphone, "netcfg usb0 dhcp" devrait être "netcfg rdnis0 dhcp"
diyisme

3
Sur mon cyanogenmod 13, netcfg ne peut pas être trouvé :(
maf-soft

1
netcfg reste manquant dans LineageOS. Vous pourriez avoir besoin de busybox à la place. android.stackexchange.com/questions/141900/…
Camille Goudeseune

En cours d'exécution, sudo ifconfig usb0 0.0.0.0 je reçois SIOCSIFADDR: Aucun de ces périphériques usb0: ERREUR lors de l'obtention des indicateurs d'interface: Aucun de ces périphériques
utilisateur1917769

@ user1917769 Vous devrez déterminer comment votre périphérique nomme l'interface USB si elle est différente.
Matthew Lu

19

Il existe encore d'autres possibilités - mais toutes celles que je connais requièrent un appareil enraciné.

Utilisation de l' arrière Tether App

Tout d'abord, une application appelée Reverse Tether est disponible gratuitement sur le Play Store (il s'agit d'un essai limité qui limite le temps de connexion. Mais vous pouvez au moins vérifier de cette manière si votre appareil est entièrement pris en charge; la version complète est disponible. environ 5 USD). Selon un article paru sur AndroidAuthority , l'installation devrait être aussi simple que 1-2-3: branchez le câble USB, démarrez l'application, laissez-la se configurer automatiquement (la configuration manuelle est également disponible) - et voilà. Vous pouvez également le laisser vous demander de vous connecter lorsqu'il trouve une connexion USB.

Méthodes manuelles utilisant le Wifi

Je sais, ce n'est pas USB - mais pour compléter (et donner des alternatives), j'ai pensé que je pourrais aussi ajouter ceci:

bidouiller le système et réparer

Plusieurs méthodes manuelles sont également disponibles (et décrites par exemple sur XDA ) - mais elles sont généralement complexes sur le plan technique et attendent de vous que les fichiers système soient patchés; pas pour l'utilisateur de tous les jours, mais plutôt pour le technophile.

Terminal et allez

Cependant, une autre méthode intéressante ne devrait impliquer que 3 lignes dans le terminal, et est décrite dans un article ici , pour se connecter à un réseau Wifi ad hoc. En gros, ça devrait aller comme ça:

su
ifconfig wlan0 up
iwconfig mode auto;
iwconfig wlan0 essid "your SSID" channel 11 mode auto
ifconfig wlan0 10.0.0.x netmask 255.255.255.0

manipuler un fichier de configuration

Une autre méthode assez simple est également décrite ici et consiste à éditer le wpa_supplicant.conffichier une fois (en ajoutant manuellement votre réseau Wifi ad-hoc).

Méthode Easy-Peasy

Ai-je besoin de dire, vraiment? Utilisez un routeur Wifi. Il existe même des petits "routeurs de voyage" pour moins de 50 USD. Connectez ensuite votre téléphone comme vous le connectez à d'autres réseaux Wifi ...


7

Hey! il y a une application pour ça

Redirection de port USB Android
http://www.codeproject.com/kb/android/usbportforwarding.aspx

Je ne sais pas trop comment l'utiliser. Merci d'informer-le si vous le faites fonctionner parfaitement.


1
Cela nécessite apparemment un proxy autre que l'ordinateur lui-même, et ne supporte que la navigation sur le Web?
endolith

1
Il dit qu'il utilise le port 8080, ce qui ne le limite pas nécessairement à la navigation Web, n'est-ce pas? Je pensais que Market pourrait l'utiliser, mais Market utilise la post 5228.
Steve

3

Je sais que c'est une réponse encore plus tardive, mais cela vaut la peine de le mentionner.

Pas besoin d'enracinement!

Aucune installation d'application requise! * Ce qui n'est même pas possible si vous ne disposez pas d'une autre connexion Internet.

Il y a un projet appelé gnirehtet .

  1. Installer adb sur le PC hôte (Windows / Linux / Mac)
  2. Téléchargez le fichier zip gnirehtet sur l'hôte
  3. Décompressez
  4. Lancer la commande

C'est ça! Pour plus d'informations, lisez le fichier readme de gnirehtet sur leur site web.

* = En coulisse, il installera un fichier apk sur votre appareil via la connexion USB.


Seule réponse non commerciale, multi-plateformes, fonctionnant pleinement. Même Google Play se connecte (Android 9 Pie).
cdlvcdlv le

2

J'ai trouvé un bon outil pour le partage de connexion inverse sur le forum xda-developers. C'est ce qu'on appelle Android Reverse Tethering . Cela fonctionne avec Windows et nécessite un téléphone enraciné.
Cela fonctionne bien sur mon HTC Desire HD exécutant MIUI v4.


J'utilise ce logiciel, il fonctionne parfaitement sur le duosgts7562 de mt galaxy. Je suis capable d'utiliser toutes les choses liées à Internet via le partage de connexion inversé.
Jasser

Pour utiliser YouTube et d’autres applications du même type, vous devez cliquer sur le bouton d’installation, puis vous êtes prêt.
Jasser

2

Étapes de connexion inverses Android:

Remarque: fonctionne uniquement dans un téléphone Android rooté.

  1. Connectez l'appareil Android via USB.
  2. Activer le partage de connexion USB. Pour ce faire, sélectionnez Paramètres → Plus ... → Modem et point d'accès sans fil → Modem USB .

  3. Sur la machine hôte, la connexion modem USB peut être détectée par le gestionnaire de réseau.
    Son nom sera quelque chose comme "Connexion filaire 2" (ou 3).
    Vous devez modifier "IPV4 / Method" en "Partagé sur d'autres ordinateurs".

3.1. Sans le gestionnaire de réseau, vous devrez le faire manuellement:

    $ sudo ifconfig usb0 10.42.0.1 netmask 255.255.255.0 
    $ echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

Maintenant, comme expliqué ici à la fin de l'étape 1, vous devez modifier iptablesavec sudo iptables -t nat -A POSTROUTING -j MASQUERADE. Mais ... préfère autoriser le gestionnaire de réseau à le faire si possible.

  1. Sur le périphérique Android, vous pouvez émettre ces commandes à l'aide d'un terminal su, ou à partir de votre ordinateur hôte à l'aide de ADB:

    $ adb shell su -c "netcfg rndis0 dhcp"
    

    S'il ne reçoit pas l'adresse IP, ou si vous utilisez une application qui demande une adresse IP statique telle que "Webkey for Android", attribuez-la manuellement:

    $ adb shell su -c "ifconfig rndis0 10.42.0.2 netmask 255.255.255.0"
    $ adb shell su -c "route add default gw 10.42.0.1 dev rndis0"
    

Maintenant, Internet fonctionnerait dans le téléphone Android.

Pour vérifier, au adb shellterminal ou Android, essayez la commande ping www.google.com.

Ça marche pour moi.


1
Le netcfg de mon appareil semble être plus limité et la version manuelle de l'étape 4 échoue: no such action '10.42.0.2' usage: netcfg [<interface> {dhcp|up|down}]
Matthew Read

1
@MatthewRead la commande est fausse, il est en fait ifconfig rndis0 10.42.0.2 netmask 255.255.255.0, btw pour voir toutes les interfaces est netcfgseul. instructions similaires sont détaillées ici
Aquarius Power

2

Pour les appareils non racinés

Je sais que la réponse est tardive, mais comme toutes les réponses existantes suggèrent que la fonctionnalité de connexion inversée USB n'est possible que si votre appareil est enraciné ou s'il est pris en charge par le système, il serait intéressant de souligner qu'il existe une option supplémentaire:

Je recherchais une solution de modem inversé qui fonctionnerait sur mes appareils non rootés et avec un MacBook, mais je ne trouvais rien. Finalement, j'ai commencé à développer ma propre solution. Le résultat est une application qui fonctionne sur les appareils fonctionnant sous Android 4.0 ou supérieur côté client et sur tous les principaux systèmes d'exploitation de bureau côté hôte.

L'application ReverseTethering NoRoot

L'application est disponible sur Google Play: ReverseTethering NoRoot


1
Je n'arrivais pas à me connecter à Windows ou à Ubuntu, mais cela semblait fonctionner sous OSX.
Matthew lu

@MatthewRead Envoyez-moi un email et je ferai de mon mieux pour que cela fonctionne avec Windows et Ubuntu.
FD_
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.