Résoudre la lenteur de DnsCrypt

Résoudre la lenteur de DnsCryptQue ce soit sur Windows ou Linux, j’utilise DnsCrypt depuis plusieurs années maintenant, associé au cache DNS Open Source unbound. Ce logiciel Open Source permet de chiffrer mes requêtes DNS, avec la garantie qu’elles ne soient pas consignées au niveau du serveur utilisé.

Installation de DnsCrypt sur Windows

Après avoir décompressé la dernière version de DnsCrypt dans le répertoire de votre choix (C:\Program Files (x86)\dnscrypt-proxy\bin dans l’exemple ci-dessous), vous devez à partir de la ligne de commande installer le logiciel. Les noms des services que vous pouvez utiliser sont consignés dans le fichier dnscrypt-resolvers.csv. Dans l’exemple ci-dessous, j’ai choisi dnscrypt.org-fr qui a l’avantage de pointer vers une machine française et de ne pas loguer vos requêtes DNS.

dnscrypt-win32.exe -R dnscrypt.org-fr --install

L’exécution de la commande ci-dessus inscrit dnscrypt-proxy sur votre système Windows dans la liste des services.

Service DNSCrypt

Le paramétrage du fonctionnement du service se réalise à partir des informations lues dans la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\dnscrypt-proxy\Parameters.

Le souci de cette méthode est que le service DnsCrypt doit alors lire le fichier dnscrypt-resolvers.csv, ce qui semble considérablement ralentir les requêtes DNS.

Paramètres DNSCrypt

Paramétrage manuel du service DnsCrypt

A partir de la documentation fournie sur le site du projet et du fichier dnscrypt-resolvers.csv, j’ai modifié les paramètres de lancement du service DnsCrypt comme suit :

Paramétrage manuel du service DnsCrypt

Les requêtes DNS s’exécutent désormais bien plus vite !

Unbound : la cerise sur le gâteau

De manière à accélérer davantage mes requêtes DNS, j’installe Unbound, un cache DNS Open Source possédant d’immenses possibilités de réglages. Après l’avoir installé en tant que service, vous devrez ensuite procéder à quelques modifications du fichier de configuration pour pouvoir le coupler à DnsCrypt. Elles se réalisent, sous Windows, à partir du fichier C:\Program Files (x86)\Unbound\service.conf

forward-zone:
     name: "."
     #Port de DnsCrypt
     forward-addr: 127.0.0.1@40
     forward-first: yes

Changement de port dans DnsCrypt

Le fait d’avoir deux services DNS concurrents qui s’exécutent sur le même port (udp/53 en l’occurrence) m’a amené à devoir changer le port utilisé par DnsCrypt. Dans l’exemple ci-dessous, j’utilise le port 40 au niveau du paramètre LocalAddress.

Changement de port dans DnsCrypt

Configuration réseau

Au niveau de la configuration IPv4 de votre carte réseau dans le centre réseau et partage, indiquez l’adresse 127.0.0.1 comme serveur DNS. Désormais, vos logiciels utiliseront Unbound qui redirigera vos requêtes vers le proxy DnsCrypt !

Configuration réseau

Redémarrage des services

Vous pouvez le faire à partir de la console services.msc, à partir de la ligne de commande ou à l’aide d’un fichier CMD et de ces quelques commandes :

net stop unbound
net stop dnscrypt-proxy
net start dnscrypt-proxy
net start unbound

Dns  / Cache Dns Dns DNScrypt Formateur DNS Unbound 

Commentaires

Tres bon article !

Dommage qu’il ne soit pas en anglais :(

@Frank

Sorry ! My readers are french. ;+)

Bonjour,

Dans ton excellent article, il me semble qu’il manque une information. En effet je lis :
« Paramétrage manuel du service DnsCrypt »

« A partir de la documentation fournie sur le site du projet et du fichier dnscrypt-resolvers.csv, j’ai modifié les paramètres de lancement du service DnsCrypt comme suit : »

« Paramétrage manuel du service DnsCrypt »

« Les requêtes DNS s’exécutent désormais bien plus vite ! »

Il me semble que l’image ne s’affiche pas en firefox et Chrome mais apparait en Interne Explorer ?

Par contre dans cet article on peut faire un DNS Randomizer : http://15minutesoffame.be/nico/blog2/index.php?article22/securiser-ses-dns-dnscrypt-et-cache-local-avec-bind

Peux tu me dire si on peut adapter a configuration avec le DNS randomizer ?

Merci
Xstof

@Christophe

Je ne comprends pas le problème. J’utilise DNSCrypt et Unbound depuis plusieurs mois maintenant sur Windows, en ayant mis en œuvre ce tuto. Le seul problème que je rencontre, c’est les DNS qui tombent régulièrement. Ma station n’est pas sur Linux !

Laisser un commentaire

(requis)

(requis)