Ads 468x60px

February 23, 2012

Reverse tethering on your Android: Use Windows Internet connection on your Android!

How many times have you come across a situation where you needed to download a lot of data but were close to your 3G limit? Or have a real fast connection on the pc and want to use that on your mobile? You are on the move and cannot use your tab/phone’s 3G, but laptop has full net access? Or for that matter want to just save on using data while sitting in the comfort of your home chair?
Good news for you folks, capslock66 of XDA has released a fantastic app, Android Reverse Tether, which allows reverse tethering between a Windows pc and an android device through USB. (Note: Connectify can already do reverse tethering but may not work on all devices for ex. Xoom)
First let’s understand what tethering is. Tethering is basically using your phone’s internet connection on other devices like pc. This feature is supported across many platforms, though may be disabled by carriers and could also be grounds for suspension if used without proper permission. Read the tethering article on Wikipedia if you want more information.
Reverse tethering is exactly the opposite. Here you use the net connection of your pc to browse on a compatible device like a phone. This feature is not popularly supported, but has various advantages including:
  • Wireline connections are typically cheaper
  • Wireline connections typically have higher speeds
  • Data usage limit is typically much higher in wireline than wireless connections like 3G

This is where the app written by capslock66 comes in as it allows to use the internet connection of your Windows pc and an Android device like Xoom tablet. Though this only work if you are rooted. (According to capslock66, Unrooted users might get limited browsing functionalities by following this method posted on Codeproject)
The app uses adb.exe to communicate with your Android device. If you have installed Android sdk then you can set the path (in Config) or else it will use the bundled adb, which works perfectly fine.

Before you start
Make sure of the following: 
  • You are rooted, or else the program won’t work
  • Turn USB debugging on (For ex. In EOS ICS 1.0 it is in Settings\Developer Options\USB debugging

Now on to the program
When you start the Android Reverse Tethering (ART) program, you will see three main sections, Main, Debug and Connection history, For us Main section is of primary interest.
The first thing to do is to make sure that by our device is being recognised. In general if adb recognises the device than so will ART. This might require the installation of certain drivers. For ex. For Xoom one needs to install Moto drivers, but if you are rooted then you already know that right?
DNS settings have been automatically recognised on my Windows 7 build so far, but if it doesn’t than click Check DNS and highlight the DNS server to use.
Below these two set of options, are Connect (or disconnect) and Install (Uninstall). Click connect and the script will start installing an app,”USB Tunnel”, on your Android device which in turn will ask for root permission. It’s important to say ok, or else the app won’t work.
After that, wait for the operation to get completed. Eventually it will be in the Debug tab, and if everything went fine you will get some blue text.
To check go into an alternate browser like Opera and go to any site. You will be able to browse now J

What works and what doesn’t
Except for the stock browser, I have personally been able to use everyting on my Xoom, including market, updating apps and downloading of new apps. Some others have not been so lucky, and have not been able to use the Android market, though other markets like Amazon do work fine.
If Market doesn’t work on yours then do the following:
  • DO NOT be in Airplane mode
  • Turn off wifi (and maybe Bluetooth)
  • Clear market data and cache (only as a last step as in some cases it might not work)
  • Get a market link from the web browser and open it through the market
Hopefully market will be working in its full glory now.
One of the best uses though of USB reverse tethering is to download sd data for apps like games where the downloaded portion can easily run over 100MBs. After testing with a few apps and games I can say that it works, though if some app is checking for wifi or is stubborn like the stock browser, then it may not work.
Speed and reliability:
I have got comparable speeds on my Android device, as I was getting on my pc.
Reliability though is on the lower side with occasional disconnects, especially when not using the device for some time.
Also all versions do not work for everybody. So while 2.23 works great for me, 2.25 doesn’t work at all. You might want to start with the latest version and then subsequently check older versions to see which works best.  

Treatment by OS:
Android does NOT recognise the connection as an Internet connection, so ALL of the protection, like firewall will be moot. On the other hand malicious software will likely not be able to find a net connection and will fail.
There is also no way to find out how much is being downloaded or the download speeds. Maybe some of the custom monitors can, but none which I use did.

Verdict: Must have
Absolutely must have! The only app with USB reverse tethering ability will be a good addition to your windows app arsenal.
Download: Android Reverse Tethering

EDIT: You can enable reverse tethering on IOS using ad-hoc wifi, but AFAIK there is no ways to enable through USB. Check this page on eHow: How to Reverse Tether an iPhone to a PC.

1 comment:

  1. Reverse tethering hasnt Download speed,just upload and on my Andorid 4.1.2 phone there is no connection of the internet.
    Please Help!
    Answer on my Facebook accound with followed link :