J'ai cherché un moyen de filtrer les sites en utilisant le serveur DNS sur un téléphone Android, c'est-à-dire en changeant le serveur DNS du téléphone, cela a fonctionné pour la connexion WiFi, mais pas pour la connexion de données. Comment puis-je bloquer/filtrer les sites sur la connexion de données mobile (de préférence en utilisant le serveur DNS) ?
Réponses
Trop de publicités?Il n'y a pas de paramètres pour définir le serveur DNS avec Mobile Data. Une exception est le DNS privé (DoT) sur Android 9+. Il arrive aussi que des fuites DNS se produisent avec les paramètres DNS WiFi, par exemple si une application a une adresse de serveur DNS codée en dur. Cependant, avec un accès Root, vous pouvez forcer la redirection des requêtes DNS vers un serveur spécifique en utilisant la fonction iptables
. Voir les détails dans Comment Android OS fait-il la résolution de nom DNS ? y Comment configurer correctement le DNS ?
Ou vous pouvez modifier /etc/hosts
pour mettre sur liste noire les domaines publicitaires les plus connus en utilisant les données disponibles. hosts
comme celui-ci .
Ou encore mieux, il est possible d'exécuter un serveur DNS local sur l'appareil afin d'utiliser des fonctions telles que la correspondance de motifs, etc. dnscrypt-proxy
par exemple, offre des options flexibles, y compris le DNS crypté (DoH ou DoT) qui élimine la possibilité pour les FAI d'écouter votre trafic DNS. Pour les instructions de configuration, voir Comment corriger les erreurs SELinux lors du lancement de DNSCrypt en tant que init.d
script ?
Sur les appareils non rootés, il est possible d'utiliser VpnService
API d'Android pour capturer tout le trafic DNS. C'est ainsi que des applications comme 1.1.1.1 y NetGuard travail. L'application VPN peut alors utiliser un hosts
avant d'effectuer des requêtes auprès du serveur DNS amont configuré. Hôtes virtuels est une application open-source permettant d'atteindre cet objectif.
Pour cela, le téléphone doit être enraciné et la version mobile d'un fichier HOSTS bloquant les publicités peut être utilisée. Voici un exemple : http://free-software-for-Android.github.io/AdAway/
Pour les données mobiles, le serveur DNS est fourni par l'opérateur téléphonique. Vous pouvez supprimer le proxy fourni dans l'APN utilisé par l'opérateur téléphonique. Voir la FAQ au lien ci-dessus.