Korzystanie z proxy telefonu Android przez USB z przekierowaniem adb
Zrozum połączenie adb-forward z laptopa do proxy HTTP hostowanego na telefonie, w tym adresy loopback, wyjście komórkowe i osobny wariant SSH SOCKS.
Jeśli autoryzowane urządzenie Android już uruchamia proxy HTTP dostępne przez adb na porcie 8080, przekieruj na nie port laptopa:
adb -s DEVICE_SERIAL forward tcp:6400 tcp:8080
Użyj rzeczywistego numeru seryjnego urządzenia, a następnie ustaw proxy HTTP przeglądarki na laptopie na 127.0.0.1:6400. Pierwszy port to punkt końcowy laptopa; drugi to usługa telefonu. adb zapewnia ścieżkę TCP, a nie protokół proxy.
laptop browser
-> laptop 127.0.0.1:6400
-> adb USB forwarding
-> phone TCP port 8080
-> phone's outbound network
Proxy telefonu musi obsługiwać żądane operacje, w tym CONNECT dla HTTPS w przeglądarce. Debugowanie USB używaj tylko z autoryzowanym urządzeniem i zaufanym komputerem. Ta ścieżka nie wymaga, aby operator dopuszczał nieproszone połączenia internetowe do telefonu.
Sprawdź wyjście osobno od osiągalności przez USB. Proxy korzysta z wybranej sieci wyjściowej telefonu, chyba że jego aplikacja wiąże inną. Aktywne Wi-Fi, VPN lub jawne trasowanie aplikacji mogą sprawić, że wyjście będzie inne niż dane komórkowe.
Jeśli telefon zamiast tego uruchamia serwer SSH, przekieruj ten port i utwórz SOCKS na laptopie:
adb -s DEVICE_SERIAL forward tcp:2222 tcp:2222
ssh -N -D 127.0.0.1:8899 -p 2222 [email protected]
Tutaj przeglądarka używa SOCKS pod 127.0.0.1:8899, a SSH otwiera połączenia docelowe na telefonie. To alternatywa dla bezpośredniego przekierowania proxy HTTP; żaden z układów nie wymaga publicznego nasłuchu.
Po zakończeniu usuń konkretny wpis adb, na przykład adb -s DEVICE_SERIAL forward --remove tcp:6400. Zamknięcie przeglądarki nie usuwa stanu przekierowania.