Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Last year I called T-Mobile for some relatively minor reason and then got into a conversation about this "upgrade" I could get that would knock my bill down $20 a month, provide option X, Y and Z.

It sounded too good to be true so I just kept asking if I'd lose anything. I was assured, no, it's all benefit.

In the past if I had an internet outage at home I'd switch to to tethered phone and have no drop in speed. In fact, it was faster than work or home.

I recently moved and while waiting for internet installation suddenly found my tethered rate went down to .25/mpbs, whereas in the past it was up around 40mbps up and down. My phone itself reached these speeds via LTE. It became immediately apparent what I'd signed up for in my "upgrade" the year prior. I had been on some grandfathered plan that had no such restriction, and by "upgrading" sacrificed my ability to tether without moving to a One Plus plan.

Of course in the heat of all of this I asked myself that same question: "how does T-Mobile know?" Some of the suggestions here seem unlikely since I'm still able to get good speeds via the phone simultaneously while limited via computer. The MAC address thing seems compelling but I'm obviously not going to go around spoofing anything just because I got duped by my provider.

I've been a T-Mobile customer forever, but that kind of deception was really, really insulting.



I was on T-Mobile until recently (moved to Canada, where we _finally_ have unlimited plans too), and I worked around the throttling by running a SOCKS5 proxy on my phone and tunneling through that while connected to the tether. The packets appear to originate from my phone (iPhone) rather than the tethered device, and I got uncapped speeds.


Very nice! What iOS app are you using? I didn't realize this kind of functionality would be allowed.


I originally made my own app: compiled an OSS SOCKS proxy with a simple iOS wrapper, deployed with a free developer account. Later, I switched to using Pythonista (paid app available on the App Store) to run a SOCKS proxy written in Python. I should add - Pythonista is a pretty amazing app, given that it’s a proper App Store app that lets you write your own Python programs with full access to iOS APIs (including the ability to dlopen private frameworks via ctypes...).

The iOS app I “wrote” is up on GitHub: https://github.com/nneonneo/socks5-ios. It’s really barebones; I knocked it together in less than an hour since I rather desperately wanted a good internet connection at the time :)


Where’s the python code you’re running?


I didn't upload it anywhere because it's _shamefully_ hacked up - it's a quick bodge-job on top of some existing Python SOCKS proxy, where I added PAC support so my iPad can also use the hotspot (since you need PAC to convince iOS to use a SOCKS proxy).

But, hey, if you want to see some random person's SOCKS code bodged up with some extra hacky bits from me, here you go: https://gist.github.com/nneonneo/fc770965944a4640e2aef34e0f8...

If you want to use PAC, set the "automatic proxy URL" to http://172.20.10.1/wpad.dat when using this as a tethering proxy (yes, iOS lets you bind port 80 without root - your app just needs to be running).


No need to feel ashamed. If you share your code, people know what they run and can learn and improve from there. One of the awesome benefits of FOSS


Awesome solution, great hacking, well done!


Best guerilla marketing for Pythonista ever.


FWIW, I have zero affiliation with the app, I just happen to really like it :)


The suggestion that monitoring TTL would seem a pretty easy way to distinguish between mobile and laptop. It seems you'd want to set your laptop's TTL to phone+1, and match the phone's TTL.

Here's a random howto change ttl for Ubuntu and windows: https://askubuntu.com/questions/667096/how-to-change-the-def...

Btw, an interesting article on the effectiveness of TTL for fingerprinting: https://www.howtogeek.com/104337/hacker-geek-os-fingerprinti...


tmo is a combination of TTL and APN.

Stock android and iOS will use the tethering APN under the hood. LineageOS doesn't.

I'm presently tethered to a tmo phone on their cheapest unlimited data plan and see 20mbit+


Reminds me of the crazy phone plans when mobile started getting popular in my country. There was one super premium, quite expensive of course, which was pretty much unlimited everything.

It worked so well (for the heavy phone consumers) that the company tried its best to buy those contracts back / move those folks on a more profitable plan.


>I've been a T-Mobile customer forever, but that kind of deception was really, really insulting.

Did you try calling T-Mobile? I would be curious if they could confirm it was in fact throttling tethered devices and if they could explain and maybe correct the behavior?


Yes, on the T-Mobile "One" plan they did throttle tethering traffic. You had to pay an extra $15/mo or so for the "One Plus" plan to get LTE tethering speeds. I believe they may have lifted this throttling on the new "Magenta" plans they rolled out a few months ago.


Wouldn't this be a breach of some consumer law? They told you one thing and you signed up on that basis. It's misleading.


Yes. And I signed up for AT&T DSL when their ad said “cancel anytime; no penalties”. When I cancelled, I received a cancellation bill and a letter saying “come back, remember we’re the company that doesn’t have cancellation fees” in the same day.

I tried to dispute the bill and they sent it to collections. Also, during signup they ran a hard credit check explicitly against my permission. One person vs BigCo doesn’t always work out.


This very limitation kept me from upgrading my T-Mobile plan for years. I read about Mint on here the last time a plan-related discussion came up, and I switched to them because they don't throttle tethered traffic. They're a MVNO on tmo's network so you do risk getting deprioritized during congestion, but so far I've been pretty happy. (I hope this comment doesn't come off as shilling for Mint. I just happened to have the same problem as you and was fairly satisfied with this solution.)


I use StraightTalk. MVNOs are the way to go, whichever one anyone here chooses. They are prepaid, but you save a lot of money in the long run, and they usually have better data allowances.


That's super weird, T-Mobile is supposed to have simplified their plans to just the one like 65$ one with no restrictions. It's a big part of their pitch - "we're the no bullshit, no contract company," so I'm pretty disappointed to hear they're moving away from that.


They were when I joined as a customer around ~2012. But in more recent years they make weird distinctions between tethered and non-tethered. My SO's phone has T-Mo's version of Android, and enabling tethering causes a visible phone-home interstitial. My phone is unlocked/has vanilla Android, so it doesn't.

Our billing, IMO, is very not up-front about what our limits on tethered/not are. Generally, it hasn't mattered. Whatever our limits are, we're not hitting them.

And it's annoying AF; there is no reason for a carrier to give a crap about tethered/not. Limit my bandwidth, cap the amount I can send, sure — I completely understand not wanting a customer dragging down the network —, but what does it matter what device generated the bits?


> what does it matter what device generated the bits?

Most of the packages they sell are based not on the cost of your specific consumption (which is way more complex than peak bandwidth or total transfer), but the cost of typical consumption given some restrictions (e.g. the aforementioned bandwidth or total volume cap).

If you bunch tethered and non-tethered traffic together, the average non-tethered user will have to pay more, and the average tethered user will have to pay less, than with the two usages split (assuming the same total profit).

Thus, you would lose the "cheap" non-tethering customers to competitors who do differentiate, while the expensive tethering customers would come to you.


Or, if they limited bandwidth to the actual expected behavior, like the previous comment suggested, everyone would get the service they pay for regardless of device. The only ones who don't want that are the providers who want plans to be as confusing as possible.


> And it's annoying AF; there is no reason for a carrier to give a crap about tethered/not

Put yourself in their shoes, and you'll appreciate their reasons.

I was recently force to pay for a higher plan specifically to unlock tethering, which is important to us for backup, since we're in the hills on a crappy ADSL connection.

Their reason is that it allows them to increase revenue.


They're charging for literally nothing. I get that that allows them to make more money, but charging someone for nothing generally makes that customer unhappy. That doesn't mean I should like it, but I do think most people have no idea that tethering is completely a feature of their phone; I do take things like that into account when choosing carriers. (It was one of the reasons I chose them to begin with! But alas, the deal was altered.)


If they were “literally charging for nothing” then there would be nothing to discuss and no one would pay for it.

Just because they are both packets over the network, they are different use cases and present a feature which can be charged for.

If you don’t like it, switch to a different provider. If there isn’t one that meets this need, maybe there’s a market opening. If the market is anti-competitive and exploiting that and colluding to shut down this feature, complain to the FCC. If the FCC dismisses your valid complaint for political reasons, vote out the party which put them there. If you don’t have the votes to get the people in power to care about this issue and regulate against the monopoly which is colluding to overcharge for it, then deploy a few thousand bots to sow dissent on Twitter and... no wait, don’t do that last one.


> Just because they are both packets over the network, they are different use cases and present a feature which can be charged for.

Charging people for different use case while the product is literally the same is one the most anti consumer things I can think about it, no idea why you think it's okay.

Imagine a eletricity bill that had different prices if your vacumm cleaner was being used on the living room rather than say, a bedroom, I see it as simply absurd.


Except that electric utilities absolutely charge for the same electrons at different rates based on the type of usage, differentiated residential vs. commercial vs. industrial rates, differentiated by time of day, and even charging different rates for the same electrons delivered at the same time to two neighboring residential houses depending on if the residence is heated with electric versus gas!


I bet you even support net-neutrality. Commie.


does it matter too much if I use my 4g of bandwidth over 1 day vs 30 days? probably not...


It is a straightforward experience, having just bought a plan in May from T-Mobile, provided you are willing to accept that market-speak is the window dressing of Life in America and you are able to find a sales rep who is willing to switch from the corporate dialect to American English.

I bought a $75/month “unlimited” plan (soft cap is 50GB before throttling according to the sales rep) and that price tag includes any taxes or fees in my local jurisdiction. It is $70/month with autopay turned on, because you get a $5/month discount. The hotspot would suck if I used it, but I don’t, and FaceTime Audio works out of the box, no setup process, which was what I wanted to hear.


Its not throttling. It’s deprioritization. If you aren’t in a congested area, you will get full speed throughout the month.


That isn’t the explanation I received, but if true, that actually sounds slightly better than what I bought. In practice, I expect what the sales rep said to remain effectively accurate because I live in a densely populated city.


To be fair to wireless carriers, wireless is different than wired when it comes to bandwidth. Theoretically, if you throw enough money at infrastructure, you can allow everyone to have truly unlimited bandwidth at the advertised rates wired. Of course that would be cost prohibitive.

Wireless is different. There is only so much bandwidth that you can have over a given frequency, only certain frequencies are available to each carrier, and only certain frequencies are conducive to cellular transmissions. For instance for years T-mobile has horrible reception indoors because of the spectrum they had.

https://www.t-mobile.com/offers/mydatausage

It looks like you’ve used 48GB or more of data overall in this bill cycle. After 50GB, you still get unlimited LTE data but may at times notice reduced speeds in areas with network congestion.

In the vast majority of times and places, you will notice little if any difference. In the small number of times or locations where there’s network congestion, you may notice reduced data speeds. This experience is due to our data prioritization practice, which prioritizes customers who use more than 50GB of data in a single bill cycle after other customers. This practice helps to optimize overall network performance and maintain a quality service experience for as many customers as possible. Your data usage resets at the beginning of your next billing cycle, so this practice will only apply until that time.


Yeah no contract, but if you don't formally cancel your month-to-month service they will send you to collections for the next months bill.


Wait, like, formally cancel in what sense? I would expect if you wanted to cancel a service, you'd have to tell somebody about it?


I have to be missing something obvious, because without you letting them know, the only way I can figure for them to know not to bill you anymore is telepathy.


Other No Contract carriers bill up front so they can just stop service if you stop paying.


Change your APN in modem settings to be the same as one used for internet on the smartphone


I am not sure when they treated you right to make you surprised.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: