Detrás de cámaras
Cómo funciona el firewall de Repel sin ocupar tu VPN
Por el equipo de llcloud 5 min de lectura
Respuesta rápida
Android deja que solo una app use su servicio de VPN a la vez, por eso la mayoría de los firewalls sin root no pueden funcionar junto a una VPN de privacidad. El firewall de Repel no usa la VPN en absoluto. Un pequeño ayudante, configurado una sola vez con la Depuración inalámbrica del celular, deja sin internet a las apps que elijas con los controles de red del propio Android. El filtro DNS de Repel es una capa aparte que sí usa el lugar de la VPN, y solo maneja consultas DNS, dentro del celular.
Android tiene una regla que condiciona a toda app de privacidad: solo una app a la vez puede usar el servicio de VPN. Si pagas una VPN de privacidad, ella ocupa ese lugar, y la mayoría de los firewalls sin root necesitan el mismo lugar para funcionar. Así que la gente termina eligiendo entre su VPN y su firewall. Cuando empezamos Repel, lo primero que quisimos resolver fue que no tuvieras que elegir.
Este artículo explica, en palabras sencillas, cómo lo logra el firewall de Repel y cómo funciona su filtro DNS.
¿Por qué la mayoría de los firewalls necesitan el lugar de la VPN?
En un celular sin root, una app común no tiene voz sobre el tráfico de red de otras apps. El servicio de VPN de Android es la única puerta que se abre: una app que se convierte en la VPN puede ver el tráfico y decidir qué hacer con él. Un firewall construido así puede descartar el tráfico de cualquier app que elijas. Es un diseño ingenioso y ha funcionado bien durante años, como contamos en Repel vs NetGuard.
El costo es ese lugar. Mientras ese firewall es la VPN, nada más puede serlo. Enciendes tu VPN de privacidad y el firewall se detiene, o al revés.
¿Cómo bloquea Repel apps sin una VPN?
Android mismo tiene un interruptor que apaga la red para una sola app. Forma parte de los controles de red del propio sistema, y en Android 13 y superior se puede accionar desde el shell del celular, el mismo nivel de acceso que tienen las herramientas de desarrollo. Las apps comunes no llegan ahí, así que Repel necesita una forma de obtener ese nivel de acceso sin computadora y sin root.
Esa forma es el Modo Power. Una sola vez, durante la configuración, activas la Depuración inalámbrica y vinculas Repel con el código que Android muestra en el celular. Después Repel inicia un pequeño ayudante propio con acceso al shell. El ayudante hace una lista corta y fija de tareas y nada más. No acepta comandos arbitrarios y revisa cada nombre de app que recibe.
Cuando desactivas una app en la pestaña Apps de Repel, el ayudante le pide a Android que apague la red para esa app. Desde entonces, el bloqueo vive en las reglas de red del propio Android, no en un túnel. Eso trae varias consecuencias que nos gustan:
- Tu VPN sigue conectada. El firewall nunca toca el servicio de VPN, así que una VPN de privacidad puede funcionar a su lado.
- Las reglas se mantienen con Repel cerrada. El bloqueo está en el sistema, así que sigue en pie aunque Repel no esté en ejecución.
- Se respetan otros firewalls. Algunas otras apps usan los mismos controles del sistema. Repel lee lo que ya está bloqueado antes de cambiar nada, así que no desactiva reglas que puso otra app.
Pro agrega reglas más inteligentes, como conexión solo con Wi-Fi, solo con datos móviles, nunca en roaming, con la pantalla apagada o a la hora de dormir, además de perfiles para Casa, Trabajo y Viaje.
¿Qué hace el filtro DNS?
El firewall decide si una app puede conectarse o no. El filtro DNS trabaja a un nivel más fino: a qué lugares se le permite llegar a una app.
Antes de que una app se conecte a un servidor, pide la dirección del servidor por su nombre, por ejemplo un dominio de rastreo o de analítica. Esa pregunta es una consulta DNS. El filtro de Repel ejecuta una VPN local en el celular que maneja las consultas DNS y nada más. Cada consulta se revisa con las listas de bloqueo que elijas, como HaGeZi, OISD, 1Hosts o StevenBlack, que cubren rastreadores, malware, phishing, tiendas fraudulentas y telemetría de los fabricantes de celulares. Una consulta bloqueada no recibe respuesta, así que la app nunca llega a ese dominio. Una consulta permitida sale cifrada con DNS sobre HTTPS hacia el servidor que elegiste.
El resto de tu tráfico nunca pasa por el filtro, y no se nos envía nada. El registro de actividad, que muestra qué app consultó qué dominio y si se bloqueó, se queda en el celular.
Esta es la única capa que sí usa el lugar de la VPN. Android solo deja que una app vea las consultas DNS de otras apps si las hace pasar por ella, y el servicio de VPN es la forma de hacerlo sin root. Así que si usas una VPN de privacidad todo el día, la configuración práctica es el firewall más el DNS privado, que dejan libre el lugar.
¿Dónde entra el DNS privado?
Android tiene un ajuste integrado de DNS privado que envía cada consulta, cifrada, a un proveedor que tú eliges. Elige un proveedor que filtra, como AdGuard DNS o Quad9, y bloquea dominios de rastreadores y malware de su lado, para todas las apps, sin ninguna VPN de por medio. Repel puede activar ese ajuste por ti con un toque, y sigue funcionando con Repel cerrada. Nuestra guía sobre el DNS privado en Android explica el ajuste con más detalle.
Hubo un detalle que tuvimos que resolver bien. Cuando el DNS privado está fijado en un proveedor específico, las consultas van directo a él y se saltan cualquier filtro del celular. Por eso, mientras el filtro de Repel está activo, Repel deja aparte tu elección de DNS privado y la vuelve a poner cuando el filtro se detiene. Cualquier cambio que hagas mientras tanto espera hasta entonces.
¿Qué pasa cuando algo sale mal?
Un filtro DNS está en el camino de cada conexión, así que sus fallas importan más que la mayoría. Si el servidor DNS que usa Repel se cae, el filtro se hace a un lado en lugar de dejarte sin conexión. Repel también te avisa cuando no se descarga su lista de bloqueo y lo reintenta por su cuenta, y explica qué hacer cuando Android no permite la VPN.
También somos claros sobre lo que un filtro DNS no puede hacer. Trabaja con nombres de dominio, así que no puede tocar nada que se sirva desde el mismo lugar que el contenido que pediste. En Android TV, por ejemplo, no puede quitar los anuncios dentro de los streams de video. Bloquea dominios de rastreadores y malware, y así lo describimos.
¿Qué capas conviene usar?
Puedes usar una capa o las tres. Nuestra guía sobre bloquear rastreadores sin VPN repasa las configuraciones, y Repel vs RethinkDNS compara un enfoque distinto del mismo problema. Elijas lo que elijas, no hay cuenta ni anuncios, algo que explicamos en por qué nuestras apps no tienen anuncios.
Preguntas
¿Puedo usar el firewall de Repel y mi propia VPN al mismo tiempo?
Sí. El firewall de apps de Repel no usa el servicio de VPN de Android, así que tu propia VPN sigue conectada mientras las apps que elijas se quedan sin internet. Requiere Android 13 o superior y una vinculación única con la Depuración inalámbrica en el celular, sin computadora ni root. El filtro DNS de Repel es la única parte que sí usa el lugar de la VPN.
¿El filtro DNS de Repel ve todo mi tráfico?
No. El filtro solo maneja consultas DNS, el paso en el que una app pregunta a qué dirección apunta un nombre de dominio. El resto de tu tráfico nunca pasa por él. Cada consulta se revisa en el celular con las listas de bloqueo que elijas, y las consultas permitidas salen cifradas con DNS sobre HTTPS. No se nos envía nada.
¿Qué pasa si el servidor DNS que usa Repel se cae?
El filtro se hace a un lado en lugar de dejarte sin conexión. Un filtro DNS que deja de responder dejaría a todas las apps sin poder llegar a nada, que es peor que no tener filtro. Repel también te avisa cuando no se descarga su lista de bloqueo o cuando Android no permite la VPN, y qué hacer al respecto.
¿Necesito el filtro DNS si uso DNS privado?
No necesariamente. El DNS privado de Android con un proveedor que filtra bloquea dominios de rastreadores y malware para todas las apps y no usa VPN. Repel puede activarlo por ti con un toque. El filtro es para cuando quieres tus propias listas de bloqueo, el registro de actividad con lo que consultó cada app y reglas para apps individuales.