Estoy configurando el proxy en la configuración de APN de mi red móvil en la siguiente captura de pantalla:

Funciona bien. Verifiqué a través de whatismyip. Sin embargo, cuando habilito el punto de acceso en el dispositivo y uso este punto de acceso en otro dispositivo y verifico la IP, muestra la IP de mi proveedor de servicios móviles original y no la IP del proxy.

¿Por qué tal comportamiento si el punto de acceso? Se supone que debe usar la red móvil y el proxy está configurado en APN para ello? ¿Cómo puedo hacer que el proxy funcione también en el dispositivo que usa hotspot?

Nota: No quiero configurar el proxy en la configuración avanzada en la opción wifi de otro dispositivo mientras elijo este punto de acceso. La aplicación que estoy tratando de usar detecta el proxy configurado bajo wifi, así que esta es mi única opción.

Responder

Su pregunta es relacionado con la comprensión del modelo OSI . Los proxies utilizan el protocolo http / https o socks, supongo que estás hablando de http que es un protocolo de capa de aplicación (L7) en el modelo OSI. Cuando una aplicación genera un mensaje http, se transfiere a la capa inferior. En el caso de https, el mensaje se cifra mediante SSL / TLS que son protocolos L6. En L4, el mensaje recibe un encabezado TCP y luego en L3 se convierte en un paquete IP. Este paquete pasa por NAT y filtrado de firewalls en L3, y finalmente a través de RRM / PDCP / RLC (si usa datos móviles), MAC y enrutamiento del kernel en L2. En L1, se transmite a través de Wi-Fi como 802.11 cuadros o señales CDMA / TDMA / FDMA a través de datos móviles.

Hotspot, por otro lado, se basa principalmente en 2 herramientas de espacio de usuario; hostapd, que crea un punto de acceso Wi-Fi en OSI L2, y dnsmasq (hasta Android 9), que funciona como servidor DHCP / DNS en OSI L7. Si el host conectado está utilizando el teléfono como servidor DNS (según lo configurado por DHCP), el teléfono recibe consultas DNS y las reenvía de forma recursiva como paquetes UDP / IP al servidor DNS ascendente en Internet (lo que sea dnsmasq está configurado para usar). El resto del tráfico proveniente de la red del hotspot es NAT y enrutado en L3 / L2.

Entonces no ve ninguno de los (paquetes IP) el tráfico procedente de hosts conectados pasa por la pila http en el teléfono Android, por lo que no se reenvía al servidor proxy. Es responsabilidad de aplicaciones como los navegadores web hacer http(s) conexiones al servidor proxy, no directas ly al host remoto como servidor web. No es posible crear un punto de acceso que se pueda configurar para usar http proxy en OSI L7. La configuración de proxy (host / puerto) que configuramos para Wi-Fi o APN o globalmente es recién reenviado a las aplicaciones, cada aplicación tiene que crear una conexión proxy por sí misma, o simplemente ignorar la información del proxy. Debe proporcionar estos detalles del proxy a las aplicaciones en cada host conectado a través del hotspot. Consulte la pregunta vinculada a continuación para obtener más detalles.

Sin embargo, es posible redirigir forzosamente todo el tráfico hacia un servidor proxy utilizando NAT / REDIRECT / TPROXY del kernel de Linux / Android (en L3) y la tabla de enrutamiento (en L2). Así es como funcionan los proxifiers , pero existen limitaciones . Los clientes de correo electrónico utilizan protocolos IMAP / POP3 / SMTP (L6 / 7) que «no funcionan con el método http GET, sino que requieren http CONNECT proxies. La última solo puede reenviar tráfico TCP, para UDP se necesita al menos un proxy SOCKS5 que funcione en L5. El DNS y, en su mayoría, las aplicaciones de juegos y llamadas de voz generan tráfico UDP, por lo que no funcionarán con http proxies en absoluto. La utilidad ping, por ejemplo, utiliza ICMP (en L3) que no se puede encapsular en TCP o UDP, por lo que tampoco funcionará con SOCKS5.

Por lo tanto, no es posible redirigir todo el tráfico hacia un servidor remoto (proxy ) servidor sin usar una solución L2 / 3 como VPN. Para obtener más detalles, consulte ¿Cómo configurar el proxy HTTPS Wi-Fi, no HTTP, a través de adb shell?


¿Por qué tal comportamiento si se supone que el hotspot usa la red móvil y el proxy está configurado en APN para ello?

Se supone que el Hotspot usa la red móvil, las aplicaciones deben usar el proxy. El proxy que configuró en APN no se aplica en todo el sistema.

No quiero configurar el proxy en la configuración avanzada en la opción WiFi de otro dispositivo mientras elijo este punto de acceso.

Desafortunadamente, este es el más sencillo Otros métodos requieren el enraizamiento y / o el uso de aplicaciones de terceros (para crear una VPN). Consulte la pregunta vinculada anteriormente sobre cómo hacer cumplir el proxy de forma transparente.

Responder

La razón por la que está viendo los síntomas es porque cuando enciende su hotspot, piense en ello como encender su teléfono en un enrutador. Por lo tanto, cualquier configuración de red en el punto de acceso no cambiará la dirección IP individual del dispositivo. Cuando se conecta a su punto de acceso, se conecta por la IP de ese dispositivo y no cuando se cambia en la configuración de red porque la configuración de red modificada es la última en la jerarquía de cosas. Creo que si buscas en Google, hay aplicaciones que falsificarán la dirección IP de tus dispositivos, esencialmente el mismo concepto que un proxy, simplemente indetectable.

Comentarios

  • pero en última instancia, la solicitud que se envía a través de mi conexión móvil debe pasar por ese APN y debe seguir ese proxy, ¿verdad? lo hace cuando lo uso en el mismo dispositivo, incluso cuando el hotspot está activado. Como dijiste, es la última jerarquía de cosas, así que después de que la conexión se realiza a través del punto de acceso, debe pasar por ese proxy en la configuración de la conexión móvil después de eso

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *