How to Tether Android for Free

Most information you’ll find about tethering with Android, shows you how to tether Android using an application called PdaNet. The problem with PdaNet is that the free version restricts you to http sites only, and you have to get the paid version for https connections. If you’re prepared to put a little elbow grease into it and you have a USB cable to connect the phone, you can learn how to tether Android without root for free for http and https sites as well.

If that sounds a bit too involved for you, then you may wish to go ahead and buy PdaNet in the Android market, so that you can connect to both http and https websites using a tethered Android connection.

You may be wondering exactly what it means to tether Android. “Tethering” is a term often used to describe the process of using your phone to connect a PC or laptop to the internet. Tethering is very convenient if you are travelling, and do not have immediate access to a free WiFi or wired internet connection. This particular article will show you how to tether Android with a USB cable that connects your phone to your computer.

Rooting an Android phone is essentially equivalent to “jailbreaking” an iPhone. root is the superuser of the phone, and has full access to do anything and everything to the phone. Many tethering solutions require root access to the phone, but this one does not. If you do have root, I highly recommend the Android WiFi Tether App.

After you’ve installed the USB drivers, you’ll need to download ADB (Android Debug Bridge). If you downloaded the Android SDK to get the Google USB drivers, then you already have ADB. It is located in the platform-tools folder wherever you extracted/installed the SDK files.

If you did not download the Android SDK, you can download it from a nice, neat, little package I put together that has all the ADB files in a single zip. Download and unzip it somewhere on your computer, just be sure to remember where the files are.

Finally, you need to configure your browser to use a proxy. This is because the Android app you will use acts as a proxy for your browser. You will configure your browser to use onlylocalhost a socks proxy on port 1080. If you’re using Internet Explorer as your browser:

Go into Internet Settings

Click the Connections tab

Click the LAN Settings button

Under Proxy server click the checkbox that says Use a proxy server for your LAN

Clear the current values for Address and Port (if there’s already something there, write it down in case you need to restore the prior settings)

Click the Advanced button

Clear out everything (again, write down or screenshot your current settings)

There are a few settings you’ll need to make sure are enabled on your phone before you proceed. First, you’ll need to enable USB debugging for development. To do this, just go to your phone’s Settings > Applications > Development and enable USB debugging:

Now you should be all set to tether your phone. First, connect your phone to your PC with a USB cable. Next, open a command prompt by clicking Start > Run… (or press the Windows Key+R), type cmd and press Enter. Change to the directory where you unzipped the ADB files. For example, if you put them in C:\ADB then type:

The first command, adb kill-server, is optional, but it stops any existing server from running. This is good to do first, if you ever disconnect/reconnect the phone. The second command, adb start-server starts ADB on your PC to connect it to your phone in debug mode. The last command, adb forward tcp:1080 tcp:1080 sets up a port forward to the phone. This is the port we will use as the proxy, and the port that Tetherbot uses on the phone.

Last but not least, launch Tetherbot on your phone, and click Start Socks.

You’ll see a message on the phone that says Socks Service Starting. Launch your web browser on your PC, and you should be tethered to your phone! Please note, that because this is a rootless tether solution, it does not provide 100% TCP/IP tethering through your phone. Any application you want to use the network connection through the phone needs to have the localhost:1080 socks proxy configured.

In my experience, Tetherbot is quite good for web browsing. However, if you’re looking for persistent connections (such as connecting an instant messaging client), Tetherbot tends to drop the connection occasionally, so it isn’t exactly ideal. If you’re looking for persistent connections, it is probably best to do that via an SSH server and the SSH Tunnel client for Android. That’s another post for another day. Happy tethering!

About GeekLad

Geeklad is a technology enthusiast and programming hobbyist. Occasionally he will put together useful little bits of code (be it JavaScript or PHP) and share them with the world. He also enjoys creating and sharing howtos, describing how to do the things people want to do with their computers.