It used to be easy to hack tethering—root your device and install a third-party or modded tethering app. But snuck in amongst the changes in Android 4.3, a new data-monitoring service of sorts made its debut. There used to be a time when your data connection was yours. You paid for it, so you were free to use it for whatever you wanted. Unfortunately, those days are long gone.
Now, when you have your phone's data connection tethered to another device to provide it with internet service, a tag is sent upstream that labels this traffic as "tethering".
This means that your carrier knows when you've been tethering another device to your phone, and they can block or limit this traffic accordingly. But this is Android we're talking about—throw root privileges at a problem and it becomes a thing of the past. Modify a file, change a setting, and you can tether all you want without your carrier butting in.
- Rooted Nexus 5
- Windows PC
The central hack in this mod involves adding a single line to a database file. This can be done with an awesome Android app called SQLite Editor, but unfortunately, it's a paid app. So if you're a Mac person or you don't mind paying a few bucks, this is probably the easiest way to edit the database file.
But for a free option, you'll just need to copy this file over to your PC so that you can use one of Windows' many free SQL editors. To get that started, grab FX File Explorer by tapping this link from your Nexus 5.
After going through FX's initial feature tour, just tap System (root). You'll be asked to give FX root permissions, so grant it those.
Next, FX will ask you if you're sure you'd like to proceed, essentially. Tick the box at the top of the screen that says I understand the risk, then press OK.
From here, tap the folder named data. Inside this folder, find yet another folder named data and tap it.
Scroll through this list of folders until you find one named com.android.providers.settings. Open this one, then hit the one inside of it named databases.
In here, you'll find a file named settings.db—this is the file that you'll need to add a line to. Long-press it, then select Copy from the menu.
Next, back out to FX's home page and tap Main Storage. From here, find a folder that you can easily get to once your phone is connected to your PC. Any folder will do the trick, just be sure to remember which one you chose.
Next, tap the Clipboard button near the top-right of the screen. Select Paste from the next menu.
Like I said earlier, the whole point of copying that file to your SD card was to make it accessible to your PC for free editing. Just plug your phone into your PC with any USB cable so that it can be accessed from Windows.
From the Windows Start Menu, head to Computer, then browse to the Nexus 5 entry and open the Internal Storage folder.
Next, locate the settings.db file that you copied to your SD card in the previous step. Right-click the file and select Cut.
Now, browse to the C: drive on your PC and right-click an empty space. Hit Paste here.
There are several free SQL editors for Windows, but the one I'll be demonstrating today is called SQLite Browser. From your Windows PC, click this link to download the installer file.
When the download is finished, click the notification in your web browser. Hit Run on the next screen, then follow the prompts for installation.
Next, open the newly-installed SQLite Browser that you can find under the Start Menu in All Programs. Start by clicking the Open Database button right up top.
From the next screen, browse to your C: drive. Select the settings.db file and click Open.
At this point, you'll be taken back to the SQLite Browser's main screen, where you should click the Browse Data tab.
From here, click the drop-down menu next to Table and select Global.
Next, just click the New Record button.
Take a look at the numbers in the id field above your new entry. They'll be different than the ones pictured here, but click the id field and type in a number that is higher than the last number shown above your entry.
Next, click the Refresh button to load your new entry.
Now, click the name field of your new entry and type in tether_dun_required, then press the enter key on your keyboard.
After that, click the value field of your new entry and enter the number 0. Hit the enter key again when you're finished.
To save your new entry, click the Write Changes button near the top of this window. After that, it is safe to close out the SQLite Browser window.
Now that you've added the one line to your database file, you just need to put it back on your phone.
Navigate to the C: directory of your computer and right-click the settings.db file. Choose Cut from this menu.
Next, browse to the folder you pulled this file from on your Nexus 5 using Windows Explorer. Right-click any empty space and select Paste.
At this point, it's safe to unplug your Nexus 5 from the computer.
Back on your Nexus 5, open up FX File Explorer again. Navigate to the folder that you just pasted the settings.db file into and long-press it. Select Copy from the menu.
Now, as outlined in Step 2, head back to the /data/data/ com.android.providers.settings/databases folder where this file originated. Press the Clipboard button at the top-right, then select Overwrite / Merge from the following dialog box.
Head to your phone's Settings and tap More... On the next screen, select Mobile Networks.
Hit Access Point Names, then tap the menu entry that's already selected. It varies by carrier, but yours will have the radial button to the right of it highlighted.
Scroll down the next list and tap APN Protocol, then select IPv4.
Do the same thing for the very next entry in this list, APN roaming protocol. When you're finished with that, tap the three-dot menu button and hit Save.
At this point, a simple reboot will make all of your changes take effect. Once you've done that, you can begin enjoying tethered data without your carrier nagging you—just head to Settings -> More... -> Tethering & portable hotspot to set up a connection.
This mod should work with any carrier, but just to be on the safe side, you should monitor your data usage from your carrier's website until you're certain it did the trick.