Bypass Hotspot 5Mbps Speed limit and Maximize LTE Bandwidth (7x More Bandwidth) without a VPN

Example Speedtest
Just and example speedtest.net
  • Netgear 4G LTE Modem LB2120
  • Ubiquity Unifi Security Gateway — USG (router)

Speed Test

pip3 install speedtest-cli
speedtest-cli --list
speedtest-cli --server XXXXXX
root@Pi:~# speedtest-cli --server XXXXXX
Retrieving speedtest.net configuration...
Testing from Verizon Wireless (IPADRESS)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by XXXXXXX (XXXX, XX) [XXXXX km]: 111.001 ms
Testing download speed................................................................................
Download: 5.17 Mbit/s
Testing upload speed......................................................................................................
Upload: 4.83 Mbit/s

Adjust TTL

Initial test confirms the tether speed cap. I adjusted the TTL using the following. You can do this on Windows or MacOS as well using slightly different settings

sysctl net.ipv4.ip_default_ttl=66
Nagivate to HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\Tcpip\Parameters.Add the following REG_DWORD32DefaultTTL set it to 66Restart the computer and check the result.
sudo sysctl -w net.inet.ip.ttl=66
Retrieving speedtest.net configuration...
Testing from Verizon Wireless (XXXXXXXXXX)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by XXXXXXX (XXXX, XX) [XXXXX km]: 108.831 ms
Testing download speed................................................................................
Download: 34.71 Mbit/s
Testing upload speed......................................................................................................
Upload: 10.35 Mbit/s

Router configuration

Now let’s implement it at the network level so all devices on the network get the change. There are some directions on the internet on how to do with with DD-WRT and other Routers.

sudo iptables -I POSTROUTING -t mangle -o eth0 -j TTL --ttl-set 66
sudo vi /config/scripts/ttlcheck.sh
#!/bin/bash
if ! /sbin/iptables -C POSTROUTING -t mangle -o eth0 -j TTL --ttl-set 66; then
/sbin/iptables -I POSTROUTING -t mangle -o eth0 -j TTL --ttl-set 66
fi
sudo chmod +x /config/scripts/ttlcheck.sh
configureset system task-scheduler task ttlcheck executable path /config/scripts/ttlcheck.shset system task-scheduler task ttlcheck interval 1mcommitsave
#!/bin/bashSPEEDTEST=/config/scripts/speedtest.py# Get speedtest.py
if [ ! -f $SPEEDTEST ]; then
curl -o $SPEEDTEST https://raw.githubusercontent.com/sivel/speedtest-cli/mas
chmod +x $SPEEDTEST
fi
# Set TTL based on speedtest nearby servers
# Set TTL based on speedtest nearby servers
if [ ! -f /tmp/.ttlset ] && [ `/sbin/iptables -L -n -t mangle` -eq 0 ]; then
NEAR=`$SPEEDTEST --list | head -2 | tail -1`
if [[ "$NEAR" == *" KS, "* ]]; then
/sbin/iptables -I POSTROUTING -t mangle -o eth0 -j TTL --ttl-set 84
elif [[ "$NEAR" == *" NY, "* ]] || [[ "$NEAR" == *" NJ, "* ]]; then
/sbin/iptables -I POSTROUTING -t mangle -o eth0 -j TTL --ttl-set 112
else
/sbin/iptables -I POSTROUTING -t mangle -o eth0 -j TTL --ttl-set 84
fi
touch /tmp/.ttlset
fi

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store