Saturday, 24 October 2015

Android Reverse Tethering for windows users.

Android Reverse Tethering for windows users.

Tethering is the ability to surf on your pc using the 3g of your phone
Reverse tethering is the opposite : surf on your phone using the ADSL of your PC. No Wifi or 3G connection required.

==>Troubleshooting (FAQ) <== 
Since a lot of users don't read the full article before asking for help, I will start by this section ! 
  1. Not yet compatible with Android 5. Work on progress. Don't ask me when it will be available
  2. Android 4.3 and upper : You must install theConnectivity hack (see Connectivity hack section) before connect .
  3. Android 4.3 and upper : You must connect your phone/tablet to a working wifi or 3g once after each boot before using reverse tethering !!!
  4. This work only for rooted users and with Windows. Don't ask for linux or for some fruit operating systems !!!
  5. The tool is not compatible with "CrossBreeder" , "adaway" or other tools that change the host file (removing localhost)
  6. Tethering and reverse tethering (this tool) are not compatible at the same time, it's then not possible to turn your android phone as a wifi hotspot.
  7. If your device is not listed in the "select a device" dropdow list:
    • Ensure Usb debugging is enabled. See "Before starting the tool" section
    • The ADB subsystem is sometimes not working properly. Click the "Kill ADB" button (on Tools)
    • Your device is perhaps not installed properly. See your device manufacturer. You can download a generic driver from google here :
    • Windows can detect your device as a "Media Transfer Protocol" (MTP) or "Picture Transfer Protocol" (PTP). When you connect the usb cable, you have a notification. Click the notification to change this parameter. If one don't work, take the another one...
    Click refresh or restart the tool to detect your device.
    If the connection shutdown often, try another usb cable
  8. Proxies problems :
    • Corporte proxy. The windows application is not able to traverse proxies.
      The good news is that you can use some applications like FreeCap , sockscap and proxifier.
      You must start the androidTool from one of these launchers, giving proxy adress and port.
      Thanks "edgd1er" for the information.
    • Android 3G proxy. Even if 3g is desactivated, your provider (APN) proxy may still be used by applications.
      The windows tool is not able to communicate with your provider proxy.
      Note that only a few providers include a proxy. You must remove it manually.
      The tool will give you informations on how to do it when detected. 
Installation :
Unpack the zip file. This zip files contains the windows part, ADB and the android APK.

Before starting the tool : 
  • You must install drivers for your device.
    If you don't find drivers for your phone/tablet, check the Universal Naked Driver
    Other interesting tool to install Adb and drivers (32/64) : [TOOL] ADB, Fastboot and Drivers - 15 seconds ADB Installer .
    Some screenshots are availables in this thread to install the driver.
  • Ensure you have debugging enabled on your phone :
    Settings > Applications > Development > USB Debugging > Turn On
  • Ensure you have root access AND SuperUser application installed.
    Change the superuser settings (Menu -> Preferences -> Notifications part) :
    Uncheck "Notifications" label to display "Do not show notification when an app is granted Su Permissions"

The AndroidTool.exe is the windows part 

The low level communication tool (ADB) is included in the zip file.
AndroidTool will try to find ADB in c:\android-sdk-windows\platform-tools\adb.exe
If not found he will use the provided one. 

The first time you use the program :
  • If you want to use another version of ADB, clik "config" and in the first tab enter the path to the ADB
  • Select the DNS server to use in the right list. On complex system, some dns can be detected.

Start reverse tetheringJust click “Connect”. 
If it's the first time you use the program, This will install the latest android package and the dependencies (busybox and redsocks).
The SuperUser process may ask you to allow “Usb tunnel” 

If the android process crash after receiving superuser rights, close the windows program and start again.

The android interface (first tab) will show connections forwarded to windows.
Others tabs are just for debugging. Send the log on this thread in case of problem. 

Start your browser 
Google chrome will complain that no connection is available. Don’t care. That work.
Firefox , opera and dolphin don’t have problem with that !!!

The current version of the application can’t forward low level ICMP packet (PING). 
From Android Os point of vue, there is no internet connection.

Command line prompt :

The windows tool is a "One click" application. Just click the "Connect" button.
But you can add parameters to directly connect when the program start.
Here are the supported commands : Device:xxxx (where xxxx is the device id), Connect, Disconnect, KillAdb, LogToClipboard, Show, Hide, Quit
Parameter sample : Device:123465789 Connect Hide
Create a second shortcut with Disconnect Quit parameters to stop connection and close the application.

Connectivity hack :

This will install some low level program to install a "fake" Wifi for browsers and google play market.
Don't worry, I didn't brick my phone and tablet during the development. 

  • On the windows program, go to tools tab and click "install hack"
  • Launch the Xposed Installer (you just installed) on your android and click on "Install/Update"
  • Go to the module tab and check the HackConnectivityService (see screenshot below)
  • Reboot the phone
  • Done!
    This work for market but also for some other programs (some games,skype,hangouts...)

For older android 2.x or 3.x version :
The application want to have an active 3G or Wifi network interface. 
Some market applications are tagged "Wifi" only.
To get around this problem, you can activate the 3G BEFORE starting reverse tethering,all the data will goes to the usb.
Tips : You can connect to some wifi hotspot not protected by a key. 
It's only when you want to surf that the hotspot ask you a user/password. 
But, at this point, we have an 'active' connection. Market download should work after starting reverse tethering.

Not fully working application but work if you install the HackConnectivityService on android 4.x: 
  • Market download
  • Spotify
  • Skype. (not checked yet)
  • If someone know another one, post a reply !

This required entering a lot of manual commands on both android and the PC each time you want to connect (reserved to power "geek" users).
This work also for windows, but much more complicated, compared to this "One click" connect tool. I let user chose the solution he want...

I will not respond to email or private message. If you want support, post a reply on this forum. 

Do you like this program ? Want to make a donation ? Send any amount to my paypal account (click the donate button on left)

Please read FAQ on top of the page before asking for help. 


No comments:

Post a Comment