Ich setze den Proxy in den APN-Einstellungen meines Mobilfunknetzes im folgenden Screenshot:

Es funktioniert gut. Ich habe über whatismyip überprüft. Wenn ich jedoch den Hotspot auf dem Gerät aktiviere und diesen Hotspot auf einem anderen Gerät verwende und die IP von diesem überprüfe, wird die IP meines ursprünglichen Mobilfunkanbieters und nicht die Proxy-IP angezeigt.

Warum ein solches Verhalten, wenn der Hotspot soll das Mobilfunknetz nutzen und der Proxy dafür im APN eingestellt sein? Wie kann ich Proxy auch über Hotspot auf einem Gerät zum Laufen bringen?

Hinweis: Ich möchte bei der Auswahl dieses Hotspots keinen Proxy unter den erweiterten Einstellungen für die WLAN-Option eines anderen Geräts festlegen. Die App, die ich verwenden möchte, erkennt den unter WLAN festgelegten Proxy, daher ist dies meine einzige Option.

Antwort

Ihre Frage lautet im Zusammenhang mit dem Verständnis des OSI-Modells . Proxies verwenden das Protokoll http / https oder socks. Ich gehe davon aus, dass Sie über http ist ein Application Layer (L7) -Protokoll im OSI-Modell. Wenn eine Anwendung eine Nachricht http generiert, wird diese an die untere Ebene übergeben. Bei https wird die Nachricht von SSL / TLS verschlüsselt Dies sind L6-Protokolle. Bei L4 erhält die Nachricht einen TCP-Header und bei L3 wird sie in ein IP-Paket konvertiert. Dieses Paket durchläuft NAT- und Firewalls-Filterung bei L3 und schließlich RRM / PDCP / RLC (bei Verwendung von Mobile Data), MAC- und Kernel-Routing bei L2. Bei L1 wird es über Wi-Fi als 802.11 Frames oder CDMA / TDMA / FDMA-Signale über mobile Daten übertragen.

Hotspot basiert dagegen hauptsächlich auf 2 Userspace-Tools: hostapd – erstellt einen Wi-Fi Access Point unter OSI L2 – und dnsmasq (bis Android 9) – welche Funktioniert als DHCP / DNS-Server bei OSI L7. Wenn der verbundene Host das Telefon als DNS-Server verwendet (wie von DHCP konfiguriert), empfängt das Telefon DNS-Abfragen und leitet sie rekursiv als UDP / IP-Pakete an den Upstream-DNS-Server im Internet weiter (unabhängig davon, dnsmasq ist für die Verwendung konfiguriert). Der Rest des vom Hotspot-Netzwerk kommenden Datenverkehrs wird NATed und an L3 / L2 weitergeleitet.

Sie sehen also keines der (IP-Pakete). Der von verbundenen Hosts kommende Datenverkehr wird über den http -Stack auf einem Android-Telefon geleitet und daher nicht an den Proxyserver weitergeleitet. Es liegt in der Verantwortung von Anwendungen wie Webbrowsern, Verbindungen zum Proxyserver, nicht direkt nur zu einem Remote-Host wie einem Webserver. Es ist nicht möglich, einen Hotspot zu erstellen, der für die Verwendung von http Proxy bei OSI L7 konfiguriert werden kann. Proxy-Einstellungen (Host / Port), die wir für Wi-Fi oder APN oder global festgelegt haben Jede Anwendung, die gerade an Anwendungen weitergeleitet wurde, muss eine eigene Proxy-Verbindung erstellen oder die Proxy-Informationen einfach ignorieren. Sie müssen diese Proxy-Details Apps auf jedem Host bereitstellen, der über einen Hotspot verbunden ist. Weitere Informationen finden Sie in der unten verlinkten Frage.

Es ist jedoch möglich, den gesamten Datenverkehr mithilfe der NAT / REDIRECT / TPROXY (bei L3) und der Routing-Tabelle (bei L2) des Linux / Android-Kernels zwangsweise auf einen Proxyserver umzuleiten. So funktionieren Proxifier , aber es gibt Einschränkungen . E-Mail-Clients verwenden IMAP / POP3 / SMTP (L6 / 7) -Protokolle, die nicht mit der http GET -Methode funktionieren, sondern http CONNECT -Proxys erfordern. Letzteres kann nur TCP-Verkehr weiterleiten, für UDP wird mindestens ein SOCKS5-Proxy benötigt, der auf L5 ausgeführt wird. DNS und hauptsächlich Spiele und Sprachanruf-Apps erzeugen UDP-Verkehr, sodass sie nicht mit http überhaupt Proxies. Das Dienstprogramm ping verwendet beispielsweise ICMP (bei L3), das nicht in TCP oder UDP gekapselt werden kann, sodass es auch nicht mit SOCKS5 funktioniert.

Es ist also im wahrsten Sinne nicht möglich, den gesamten Datenverkehr auf eine Fernbedienung (Proxy) umzuleiten ) Server ohne Verwendung einer L2 / 3-Lösung wie VPN. Weitere Informationen finden Sie unter Wie wird der Wi-Fi-HTTPS-Proxy und nicht HTTP über die ADB-Shell festgelegt?


Warum ein solches Verhalten, wenn der Hotspot das Mobilfunknetz verwenden soll und der Proxy in APN dafür festgelegt ist?

Hotspot soll das Mobilfunknetz verwenden, Apps sollen den Proxy verwenden. Der in APN konfigurierte Proxy wird nicht systemweit erzwungen.

Ich möchte bei der Auswahl dieses Hotspots keinen Proxy unter erweiterten Einstellungen für die WLAN-Option eines anderen Geräts festlegen.

Leider ist dies am einfachsten Auf andere Weise erfordern andere Methoden entweder das Rooten und / oder die Verwendung von Apps von Drittanbietern (um VPN zu erstellen). Siehe oben stehende Frage, wie Proxy transparent erzwungen werden kann.

Antwort

Der Grund dafür ist, dass Sie die Symptome sehen, wenn Sie Ihren Hotspot einschalten, denken Sie daran, wie Sie Ihr Telefon drehen in einen Router. Daher ändern Netzwerkeinstellungen am Hotspot nicht die individuelle IP-Adresse des Geräts. Wenn Sie eine Verbindung zu Ihrem Hotspot herstellen, wird die Verbindung über die IP-Adresse dieses Geräts hergestellt und nicht, wenn dies in den Netzwerkeinstellungen geändert wird, da die geänderten Netzwerkeinstellungen in der Hierarchie der Dinge zuletzt gelten. Ich glaube, wenn Sie Google Search verwenden, handelt es sich um Apps, die die IP-Adresse Ihres Geräts fälschen und im Wesentlichen das gleiche Konzept wie ein Proxy haben, der nur nicht erkannt werden kann > aber letztendlich muss die Anfrage, die über meine mobile Verbindung gesendet wird, über diesen APN gehen und diesem Proxy folgen, oder? Dies ist der Fall, wenn ich es auf demselben Gerät verwende, auch wenn der Hotspot aktiviert ist. Wie Sie bereits sagten, ist dies die letzte Hierarchie der Dinge. Nachdem die Verbindung über einen Hotspot hergestellt wurde, sollte dieser Proxy in den Einstellungen für mobile Verbindungen danach

durchlaufen werden

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.