30KB/s download speeds tethering with T-Mobile

I have ‘unlimited’ data and tethering with T-mobile (USA), and am supposed to be able to get ‘up to’ 600KB/s (i.e. 3G speeds.) However I’m getting 30KB/s download speeds, which is worse than dial up. The frustrating thing is though, I can still watch Youtube at 480p, which according to my feeble Google-fu is about 1500KB/s.

This seems to be an egregious use of ‘traffic shaping’. Is there anyway to fix or bypass these absolutely abysmal download speeds?

They will throttle past X Gigabytes and or the type of traffic.

VPN

@Dynamic_Gravity Thanks for the quick response.

According to my phone, I’ve used 5.5GB. Is that enough to trip their throttle switch?

Been avoiding VPNs because I don’t really know which to trust. ProtonVPN is the only thing I know of that might be trustworthy…

I’ve got the same issue. I don’t know wth is going on. Doing speed tests straight on the phone on mobile data, works like a champ. Doing speed tests on hotspot device with the phone in the same place: 15kbps. I bought their stupid 15GB hotspot plan just for the f***ing hotspot, why aren’t they letting me use the dang traffic that I am paying for?! I spoke with people where I bought the SIM from, a few months ago, they “reset my plan,” but couldn’t solve the issue, told me to call T-Mobile support. I didn’t because I was busy, but went to another store, same procedure, didn’t solve it.

I think I should give them an angry call. You should call them too. Thankfully I don’t make use of the hotspot anymore, since I’m mostly near a WiFi now, but if I ever need a hotspot (like, idk, blackout or something), I don’t want to use a slow speed one.

I get throttled when I used 0 bytes out of the mobile data and hotspot data. It’s not that.

Doesn’t work. Neither Wireguard, nor OpenVPN. I tried both. It connects successfully to my servers, but they are slow. A VPN won’t solve the issue.

Depends on what plan you bought, or if you bought a plan with hotspot included.

If you don’t know which to trust, do your own in a VPS.

@ThatGuyB I think 30KB/s (for whatever reason) is the default speed. If T-Mo sees Youtube traffic, it bumps up the speed to viewable levels. If it sees http or https traffic, it also gives it a boost though maybe not to Youtube levels. Anything else gets throttled to sub-dialup speeds.

Which gives me an idea. Perhaps a simple proxy could defeat this evil plan. Set up a proxy on a standard http port on a personal or AWS server, and then have it redirect traffic to whatever port you want from home or the AWS data center. All T-Mo will see is traffic (or encrypted traffic if you use https) on port 80.

Just thinking out loud…

1 Like

I was thinking of doing a VPN on both UDP port 443 (wireguard) and on TCP port 443 (OpenVPN) in order to avoid really ugly wifi restrictions. I can’t do that at my home lab, since my ISP’s router is half-borked (neither I, nor the ISP can reset the user password, albeit they have the admin account and the reset to factory default button doesn’t work and the ISP is telling me they don’t have an option to reset to factory settings in the GUI, which I’m pretty sure they’re lying). I’ll probably do it once I can afford to buy a VPS monthly.

Now that I think about it, I don’t think I tried any traffic on the hotspot without VPN except for speedtest (which still didn’t go above 15-16 kbps). I’ll probably try that. But yeah, a VPN on HTTP port should probably bypass most speed restrictions, but it might not pass the most draconian ones (the ones who limit the bandwidth based on what sites you visit, like say, allow youtube and netflix, but block vimeo or peertube instances for example).

1 Like

I rolled my own OpenVPN server on pfsense a couple of years ago, but that hardware has since faded into obsolescence. Looks like I need to get out the hammer and anvil, and forge my own VPN again…

What do you mean by this?

I still roll pfSense and have been for 4 years or so I think. The only reason why I didn’t switch to OpenBSD was laziness. Albeit I’m using a pretty “beefy” (for router standards) Celeron J3455 quad core CPU (with atom cores).

Vpn prevents them from seeing where/what the traffic is so if they detect lots of UDP they can’t throttle that.

As for speed tests, they often exclusively unblock these from their filters.

Some scummy ones will see that you’re using a VPN and throttle you regardless, unless you’re on a business plan.

1 Like

Usually, you have unlimited data on the phone but limited tethering data “the difference is none but i digress”

They usually can tell you’re tethering by watching the TTL of the packets. If you are on android and rooted, you can adjust the TTL of tethered clients with edit to the iptables to set the TTL to 66

iptables -t mangle -I POSTROUTING 1 -j TTL --ttl-set 66

If you are not rooted, you can also do it on a windows client and re-broadcast the connection so all your other devices connect to the windows laptop which is connected to the un-rooted phone with a netsh command(on the windows client).

netsh int ipv4 set glob defaultcurhoplimit=65
netsh int ipv6 set glob defaultcurhoplimit=65
4 Likes

Yep, I believe that’s what’s happening on T-Mobile hotspot. They see my encrypted traffic on unusual ports and throttle it.

Well that doubled my speed - to a blazing 70KB/s LOL.

At least I’m at dial-up speed now…

1 Like

what about if you speed test just the phone itself? They say unlimited but fine print might be an “up to” clause. Or a clause to throttle on “congested networks”

My Dell R710 finally got to a point where it couldn’t run newer versions of ESXi, so I left it behind when I moved this past March.

@KenPC The phone speedtests at 14Mbps down/ 4Mbps up.

You could have installed Proxmox on it and migrate from the VMWare format to qcow2 and still run pfSense. But oh well… not worth crying over spilled milk.

@KenPC Right now I’m on a dual boot laptop, Win 10 and Fedora 34. I have to use WiFi to tether under Windows, but the iPhone XR actually appears as an ethernet adapter in Fedora. Anything interesting I can do with that?

I wish, but I’m only familiar with android since it’s linux. I was wondering what phone you were using.

Can’t help much there. can try connecting clients to fedora by sharing the wifi connection similar by using iptables from before

If you’re familiar with TTL, each hop or connection from one device to another to get to the destination decreases the number. your phone has a default starting number so a connected device would have one less than that number (how they detect it) and we are trying to fake that number to hide the hop from the device to your phone. so it looks like a regular hop from your phone to T-Mobile

Here’s a good vid explaining this

1 Like

Yep, had to do something similar with a windows VM. Laptop has a 4G card in it, but VM wasn’t getting any data. There is a windows registry setting you can change for default TTL as well.

While I am not a “Techy” by any means, I do love learning. As for this particular subject, I found the use of the “iptables -t mangle -I POSTROUTING 1 -j TTL --ttl-set 66” useful by placing it into my GL-AR300M Router. It is a small, mini, Chinese router that runs linux as its OS. I run Windows10 and use an iPhone 6s (Verizon) for internet and run out of highspeed internet about the 5th of each months. Placing this command in the Firewall.user file (at the bottom), and rebooting, changes my download from 0.6mbps to 15.3mbps and the upload from 0.6mbps to 3.2mbps. This is new and only about 3days into the experiment - but working very well.

2 Likes

Are you getting big B or little b?
If it’s 32KB/s then it’s faster than dial up, of it’s 32Kb/s then it’s slower

I get 16KB/s which is barely fast enough for this site to function without pictures and video

Ad blockers will greatly help as ads are bandwidth hogs

1 Like