Close

Masquerating tethering as a phone app

A project log for Silly software wishlist

Motivation to do some software projects by writing them down.

lion-mclionheadlion mclionhead 11/13/2021 at 21:383 Comments

Phone plans for the last few years have had different data quotas for tethering & phone apps, but lions have always envisioned a phone app which forwarded packets from ADB or some proprietary USB protocol.  The confuser side relies on user space networking with the tun/tap driver.  The easy phone app tunnels the packets to a server on a wired network, but lions normally only need tethering because they don't have a server on a wired network.  

The hard phone app strips all the headers from the packets & forwards the payloads using android networking calls.  Lions have been writing low level networking code for so long, it might not be as hard as it would have been 20 years ago.  Obviously, no app store would be allowed to distribute such a program & no-one among the current generation is interested in circumventing the system.

The idea got a bit more motivation in the last 2 years because labor shortages have made Comca$t less reliable.  It's become more important to have redundant ISP's.

Discussions

Xasin wrote 11/16/2021 at 11:15 point

Now I'm wondering how this will behave when tethering and using a VPN app on the phone.

Since the VPN app already has to reroute all internet traffic through its internal connection to the VPN server, this should also include the tethered connection - in which case the phone provider should just see the VPN connection as a connection straight from the phone, not a tethered one.

But I also have to agree with Ken Yap. Here in Germany, you really only get data, and in fact I have never heard of different phone plans for regular use versus tethered.

The only thing that comes to mind is the "Unlimited Music Streaming" that some providers offer - which is a bit dubious to implement at best because your provider then needs to be able to know which packets are going where, and... Eh

But hijacking that could be fun! 

  Are you sure? yes | no

Daren Schwenke wrote 11/16/2021 at 05:45 point

Set your TTL to 65 instead of 64, and watch the magic happen. TTL is the simplest form of cellular based bandwidth capping.  Set it to 65 and most providers assume that traffic is coming directly from said device as the default puts the first hop at 64.

  Are you sure? yes | no

Ken Yap wrote 11/13/2021 at 22:31 point

No such issues with phone plans around here. Data is data. In fact providers are throwing data at customers which they know only hardcore streaming users will be able to use up.

I believe Linux networking code has the ability to strip any information that allows detection of tethering, but whether this is true and how you would get Android to use those features I have no idea.

  Are you sure? yes | no