Script to simlify reverse USB tethering with WiFi hotspot on non-rooted Android
Schematic:
Demo:
To share unlimited wired network from PC to laptop and iPad instead of sharing 4G with limited monthly traffic.
- Use Gnirehtet on PC to start reverse USB tethering
- Use Every Proxy on Android to run proxy server
- Enable WiFi hotspot on Android
- Connect to created WiFi and specify proxy address
Downloading and installing(Not yet)adb
if neededDownloading and installing propper Gnirehtet version(Not yet)Downloading and installing EveryProxy apk(Not yet)- Starting/stopping Gnirehtet, Every Proxy and WiFi hotspot in one command
- Work In Progress!
- Current version has only win64 Gnirehter binaries, so on linux/macOS you should add propper Gnirehtet version to PATH yourself
- Current version don't yet install Every Proxy, so install it manually from Google Play
git clone https://github.com/cuamckuu/tetherspot.git
cd ./tetherspot
# Unlock your phone and connect it via USB with allowed USB debugging
python main.py
- Run
adb
commands from Python - Enable wifi hotspot from
adb
- Disable wifi hotspot from
adb``adb
- Enable proxy server from
adb
- Disable proxy server from
adb
- Run Gnirehtet from Python
- Cleanup Gnirehtet on android side
- Working Windows prototype
- Check that device unlocked
- Lock screen after start of Gnirehtet
- Unlock screen before cleanup
- Disable mobile network to ensure reverse tethering works
- Determine OS version to get propper Gnirehtet
- Install EveryProxy if needed
- Install ADB if needed
- Write own Android proxy server (TCP, UDP, IPv6, netty, ktor)
- Get relative path to
__file__
location - Use logging instead of prints
- Add run flags for diffirent behaviour. Ex:
--lock
,--install
,--hotspot_row
, etc - Maybe auto screen unlock?
Notes: