Close
0%
0%

Phone tethering via proxy server

Access the internet without a tethering plan

Similar projects worth following
0 followers

The lion kingdom has a long history of diabolical phone hacks which don't require root.

https://hackaday.io/project/138050/log/227487-edit-a-text-file-on-a-phone-in-a-browser

https://hackaday.io/project/138050-silly-software-wishlist/log/179072-web-based-file-manager-for-android

https://hackaday.io/project/138050/log/223248-replace-adb-commands-with-list-get-put

A phone tethering hack was bouncing around for 4 years until some minor dabbling in the idea showed it just might work.

https://hackaday.io/project/138050/log/200355-masquerating-tethering-as-a-phone-app

  • ICMP via proxy server

    lion mclionhead7 hours ago 0 comments

    Phone tethering in the past was possible by adjusting the TTL on the client, but this was closed long ago by creating a dedicated rmnet device just for tethering.

    Lions last used tethering on a daily basis while commuting, 6 years ago.

    In recent years, interest in tethering began to return as xfinity/comca$t reliability went downhill & data plans got ever cheaper.  Paid tethering was still proving very unreliable for some reason, compared to the apps on the phone.  It wasn't used often enough to justify the cost.

    A big question was how to connect a client to the phone.  ADB & USB would be quite difficult & unreliable.  2.4Ghz wifi was quite slow & unreliable.  The introduction of 5Ghz wifi to cheap phones finally opened the door.  The idea is the phone & client would attach to an offline, raspberry pi access point.  Then the phone would use its data plan to access the great beyond.  The client would access the phone's wifi through a virtual ethernet device.  The raw packets from the client would be mangled on the phone to look like they came from a phone app.

    Helas, it's not possible to access the raw packets on the rmnet devices on a cheap phone.  The phone app would have to analyze every raw packet from the client & create its own copy of every connection by using the Java library.  It would act like a virtual machine.  

    The trick with testing is setting up a dedicated raspberry pi with its default route being the virtual ethernet device connected to the proxy server.  A test of translating raw ICMP packets from a client into InetAddress.isReachable commands on the phone showed promise.  Next would be making a DNS server that read raw UDP & called InetAddress.getByName

    The great task would be translating raw TCP packets into custom Socket commands on the phone.

View project log

Enjoy this project?

Share

Discussions

Does this project spark your interest?

Become a member to follow this project and never miss any updates