
Android betrays tethering data - davidgerard
http://danielpocock.com/android-betrays-tethering-data
======
ledneb
Nabbed from the comments of the post, this is how you disable the "feature"
without being rooted:

[http://vinhboy.com/blog/2013/12/27/how-to-tether-the-
nexus-5...](http://vinhboy.com/blog/2013/12/27/how-to-tether-the-nexus-5-on-t-
mobile/)

... still though, I'm interested: what actually _is_ this second device which
things get routed through? How can the carrier tell which device your phone is
using? Even then, how do they tell which one is the 'normal data' vs the
'tethered data' device?

~~~
kzahel
I spent a day trying to overcome the tethering restriction on my T-Mobile
unlimited data prepaid Moto-G. I tried changing some tether_dun_required
setting (mentioned in parent), which required me to root my phone. That didn't
have any effect!

I ended up running a SOCKS5 proxy on my android phone (the app is called
Proxoid, and is unfortunately rather buggy). That at least works, though with
the app being rather prone to crashes and hangs, it is not the ideal solution.

------
higherpurpose
It's such a shame people have allowed carriers to get away with this. Yes,
this is all on the people, because they are the ones that should be outraged
when carriers want to charge them twice _for the same data_ , simply because
you decided to use that data with another device. Common sense says you should
be allowed to use that data however you want. But the carriers got away with
it, and now it's status quo.

What the carriers are doing is like your electricity provider telling you that
you can only use that specific amount of electricity with certain appliances,
but if you want to use it with others, you have to pay extra. It's insane, and
I'm starting to believe more and more that declaring carriers and ISP's as
_utilities_ is the right way to go to have strong net neutrality in US.

The Internet is every bit as important as electricity in today's modern world.
It's about time we start treating it like that.

~~~
couchand
Your service level only comes with the fixtures package. Oh, you'd like to
plug _your own appliances_ into this outlet? That'll be another $29.95 a
month, please.

------
davidgerard
Google considers this a feature, not a bug, and that you are the product and
the carrier is the customer:
[http://code.google.com/p/android/issues/detail?id=38563#c105](http://code.google.com/p/android/issues/detail?id=38563#c105)

~~~
userbinator
This has to be one of the most explicit mentions of "if you're not paying for
it, you're the product being sold" I've seen. Normally companies tend to be
somewhat more subtle about that kind of thing.

~~~
personZ
iOS, Windows Phone, Blackberry OS -- they _all_ flag and honor carrier
tethering usage allowances. Therefore, by this simplistic logic, to all of
them you are the product?

I doubt Google's intentions are quite as simple. It's entirely possible that
they're honoring the "carrier code" to ensure competition is robust. If your
carrier has a problem with tethered data, get a different carrier.

As an aside, it's pretty bizarre to see a comment by some random person (the
"IT'S A FEATURE NOT A BUG!") being used as if it's a statement by Google.
Bizarre.

------
gxs
I'm getting used to this circus show. I watch the xfinity comcast app on my
Galaxy S3 - unfortunately I'm not allowed to "tether" the phone via HDMI and
watch the app on my TV (it's actually disabled and you get an error message).

This sort of artificial scarcity is really frustrating to certain users, but
it is an absolute gold mine for corporations like this.

------
blueskin_
Direct link: [http://danielpocock.com/android-betrays-tethering-
data](http://danielpocock.com/android-betrays-tethering-data)

~~~
dang
Yes. Changed. The original url [1] was blogspam.

Submitters: please double-check the article you post for links to an original
source. If there is one, please post it instead.

1\. [http://lwn.net/Articles/596080/](http://lwn.net/Articles/596080/)

------
bananas
Interesting!

I'm on a Moto G on giffgaff in the UK and data is 100% free and unlimited
(within some vague definition of "fair use"). They shoot your network access
for 30 minutes if they find you tethering because it's against their terms.

How they detect this is a closely guarded secret and a big mystery. Perhaps
this is it.

However, the asshole carrier tactics come out pretty sharpish: if you want a
tablet SIM or data only SIM, they charge a fortune for a capped data SIM (£12
for 3Gb/month). No thanks!

Data is data. that's what net neutrality is about isn't it?

The penalty for breaking the terms is temporary disconnection so screw it, I
tether all the time. If you use HTTPS only or a VPN connection then it doesn't
cut you off at all. DPI anyone?

The irony is that I've snagged a 3.5Gb ISO image off MSDN onto my handset's
USB OTG (at a nice 800k/sec) with the free data and can push 6-8Gb a month
which doesn't apparently bother their fair use term but if I start up a
download on a tethered device, bang instantly.

Obviously they're device-ist!

~~~
1_player
> How they detect this is a closely guarded secret and a big mystery.

I would guess packet inspection and checking user agents. You could bypass it
with an iptables rule on the handset (is there iptables available on Android?)
and/or changing your browser's user agent string.

That's just a theory, I wanted to test it but never find the time.

~~~
d0ugie
Yes for me, I have iptables v1.4.11.1, 2008-08-01.

------
gopalv
I found out that setting the IP TTL of my machine to 65 usually bypasses most
tethering checks in most ISPs.

Like T-Mobile has a special case where they allow :443 from tethered hosts,
while disallowing :80.

That disappears when the TTL is 65.

~~~
chimeracoder
Do you do this on your laptop, or on your phone?

I know that (older versions of) Cyanogenmod would set the TTL of packets to be
(2^n + 1) for this exact reason, but it happened on the phone.

Also, FWIW, I have T-mobile and haven't experienced issues tethering on my
stock Nexus 5. I'm curious why some customers are experiencing these and not
others.

~~~
toomuchtodo
On a Galaxy Nexus on T-Mobile in Chicago; they subvert my :80 requests to a
"you should be paying for tethering" portal.

------
eli
There isn't and really hasn't ever been wireless net neutrality. Carriers used
to (and perhaps still do) get at this data through deep packet inspection.

It's discrimination in the "price discrimination" sense.

~~~
davidgerard
They have long been able to in theory - but do we have confirmation that they
actually do so, for the purpose to hand? (distinguishing tethering from on-
device)

~~~
otoburb
This type of behaviour is classified as a 'revenue leak' within carriers and
is a known irritant in the wireless telecom industry. The nature of the
irritant is naturally completely dependent on your point of view (end-user vs.
carrier).

Deep Packet Inspection (DPI) has several purported benefits and use-cases,
most entirely technical and usually driven by entailing cost-saving/traffic
steering requirements, with a few key use-cases around which revenue
generating business cases can be modeled.

Distinguishing tethering from on-device traffic via DPI is one way of
accomplishing this; there are other, potentially more cost-effective ways to
accomplish the same behaviour as already noted in this thread elsewhere (e.g.
user-agent detection). As per the OP, another detection method is to have the
OEM add a special route/flag when tethering is detected. The nature of the
flag takes various forms (which in this case resulted in a new sourceIP from a
different subnet be assigned to the device).

Anybody that operates a network (wireless or fixed) implements similar traffic
steering/shaping/QoS techniques. Without them, one cannot optimally leverage
their heavy network capital investments.

~~~
e28eta
Isn't user agent detection a form of DPI? They're looking inside the packets
being sent, instead of simply using the level 2 and 3 information to determine
where and how to route the packets.

~~~
otoburb
Yes, user-agent detection is a form of DPI. At least in the telecom space, DPI
often refers to investigating layer-7 packet payloads versus only parsing the
L7 HTTP headers as an example.

Arguably, due to the nested encapsulation of the ISO model which we all
loosely base our understanding of the various network and application
protocols, one could technically claim that parsing an IP (or TCP) payload
counts as DPI, but that's not how the term is generally marketed or used by
vendors nor network engineering or operating teams.

The wikipedia DPI entry[1] is vague; IMO perhaps deliberately. For the purpose
of this discussion, perhaps it would help to distinguish between source IP
filtering (as per the OP) and L7 DPI capability.

------
jpollock
Couple of comments.

First, this is caused by "unlimited", or other large plans (1GB+) plans.
Unlimited can never mean unlimited, anymore than it does with electricity.

Carriers are selling those plans to give people comfort around billshock. It's
much, much easier to give people an unlimited plan than it is to try to get
them to pay for a huge post-pay data bill.

However, since this is about customer comfort, carriers are working on an
average usage, and assuming an amount of "breakage".

Breakage is the unused portion of a balance, and it is factored into the
profit the carrier expects. It comes from calling card days, where there would
be a balance at the end of the card that couldn't be used ($1 on the card, and
35c/minute). Unused prepaid balance at the end of the month? Breakage.

We're atypical users, and even then I'm using <500MB/month. However, this is
changing - people are frequently staying on mobile and not switching to wifi
when it is available. That's why I hear about people complaining about mobile
data coverage at home!

Next, mobile carriers are doing anything and everything they can to avoid
becoming a dumb bit-pipe. Mobile is more competitive than fixed line (no
regional monopolies), so customers have more power. Personally, I think there
is an insane amount of money to be made being a simple bit pipe, mostly
through cost reductions.

Finally, they're not only tracking this through separate APNs for tethered
traffic, they're tracking the hop counts of packets and detecting packets
who's hop count is unexpected for the device.

So, running a VPN client on the laptop and tethering won't help, but running a
VPN client on your phone and tethering traffic through _that_ connection
might.

~~~
mikeash
I agree about unlimited plans. I believe they're the cause of much woe in the
internet world, and I don't understand why the tech community generally fights
to keep them. Things would become much better if we paid for usage.

But I don't understand why you lump 1GB+ plans in with unlimited. I'm
currently paying for 4GB/month of data and I should be able to use it all for
whatever I feel like.

~~~
jpollock
That's the breakage. When the average is under the maximum, the remainder is
there as a comfort buffer for the customer.

Think of it this way, "The expectation is that you will use 500MB/month, but
you are allowed to burst to 5GB."

Without that sort of buffer the carriers get a lot of negative press about
bill shock - such as when people use their mobile phones on cruise ships.

~~~
rpenm
Customers should be able to choose between overage fees and throttling when
they exceed their monthly limit.

~~~
jpollock
That would be nice, and some locations do that. New Zealand fixed line
broadband is a good example. The US market, for some reason, doesn't.

------
mike-cardwell
Will Cyanogenmod fix this in their build?

~~~
pja
I've checked & CyanogenMod 11M5 on my Nexus 4 doesn't appear to be doing this
- if I turn on tethering over bluetooth there's no extra route in the routing
table.

However, my current carrier allows me to tether the data I pay for, so perhaps
it only does it in response to some kind of carrier request to split the data
into tethered / non-tethered classes?

------
kclay
Sorta like how Verizon tries to block tethering on grandfather plans. If you
are rooted its not a problem. But I never understood it if you are paying for
it why have to go through these tricks. What needs to happen is all the money
that these mobile networks are raking in they need to invest it in a better
infrastructure, its only going to get worse.

~~~
lnanek2
AT&T does the same with grandfathered unlimited plans. When I first bought the
plan and a phone I was able to tether unlimited. Now they want me to upgrade
to a tether plan that only supports 5GB max and phones using stock software
refuse to tether unless I do.

------
zatkin
There's a lot of guilty surrounding the topic of tethering if the data plan
doesn't allow it...

------
mkonecny
This "feature" was introduced in 4.2.2. Android is at 4.4 now.

------
sscalia
Data is data is data is data.

Youtube blocking "mobile playback" of videos is the same as carriers blocking
tethering without a specific plan or arbitrary caps (3GB mobile data, 1GB
tether)

This is something, across all mobile platforms, we should be fighting tooth
and nail.

~~~
Crito
> _Youtube blocking "mobile playback" of videos_

Do they still do that? I thought the issue was the ability to play required
ads, which the mobile youtube applications now have.

~~~
w1ntermute
It's not something "they" do, it's an option that any video uploader has. Of
course, you can sideload unauthorized YouTube viewers to get around this.

------
gcb0
Smartphones taught me that even when you pay, you are the product.

------
rickisen
This is why I love my Jolla phone !

------
mschuster91
It's your own fault if you use Vodafone. Overpriced, fucked up consumer
support, and at least in Germany, multiple occasions of fraudulent behaviour
by the sales agents (e.g. signing you up for stuff you didn't ask for etc).
Oh, and a fucked up network, too.

~~~
davidgerard
As I noted below, I'm a Vodafone user and they didn't squeak when I tethered
and hammered the shit out of my three months' unlimited data on a new
contract. (I presume they were letting me run loose so they could try to sell
me a data package on top.)

In my experience the UK's a cosy oligopoly between Voda, O2 and EE, with
approximately equivalent fuckery between them. YMMV of course.

