Skip to content
Nobz edited this page Dec 18, 2025 · 2 revisions

Android IP Rotator (ADB) — Technical Wiki

This Wiki documents the technical research behind the android-ip-rotator-adb project.

It expands on the README and serves as a technical knowledge base focused on understanding real system behavior rather than providing end-user instructions.


Scope of this Wiki

This Wiki exists to:

  • document real-world behavior of Android mobile networking
  • analyze ADB limitations when controlling radio state
  • explain why IP rotation is inconsistent or impossible under CGNAT
  • preserve technical evidence and reasoning
  • allow future continuation of the research without restarting from zero

This is not a how-to guide for forcing IP changes.


What this project is about

The project investigates whether it is possible to force a change of public IPv4 address by controlling an Android device (USB tethering) exclusively via ADB, without root access or system-level privileges.

The focus is on:

  • Android radio lifecycle
  • differences between logical toggles and physical radio detach
  • operator-controlled session persistence
  • CGNAT behavior and misconceptions

What this project is NOT

This project does not aim to:

  • bypass carrier restrictions
  • provide anonymity or IP spoofing
  • exploit vulnerabilities
  • defeat CGNAT mechanisms

The goal is understanding, not evasion.


Documentation structure

This Wiki is organized as a set of focused technical documents:

  • Context & Research Overview
    Project motivation, hypothesis, and conclusions.

  • ADB vs System UI Behavior
    Why ADB toggles do not replicate manual airplane mode behavior.

  • Radio Logs & Evidence
    Interpreting logcat -b radio and identifying real detach/attach events.

  • CGNAT and IP Persistence
    Why IPs remain sticky despite reconnections.

  • Architectural Limits
    What cannot be controlled without system privileges.

  • Future Research Paths
    Documented but unimplemented investigation directions.

Each page is designed to be read independently.


Intended audience

This Wiki is written for:

  • developers with Android or networking background
  • security researchers
  • technically curious readers who want real explanations

Basic Android and networking knowledge is assumed.


How to continue this research

If you are continuing this work later or in another context, start with:

Context & Research Overview

This page establishes the mental model required for all other sections.


Ethical note

All tests were conducted on owned hardware and networks. No attempts were made to disrupt services or evade controls.


Last updated: initial Wiki structure