Service client DNS lent.

Amenée à faire quelques optimisations sur un poste XP de 2003, qui rame comme pas possible, je fais ce que je fais d’habitude, un petit nettoyage made in Ccleaner, désactivations des services useless et des processus au démarrage.
Malgré cela l’ordinateur est toujours très lent à démarrer. Je pousse donc plus loin mon analyse en calant process explorer au démarrage de la machine, et la je m’aperçois qu’un service bloque le démarrage des autres, tant qu’il n’est pas fini d’être chargé. C’est le service de client DNS (dnscache).

Mais pourquoi met-il autant de temps à charger ? Après quelques recherches, il se trouve que le service est très lent quand il doit charger un gros fichier hosts. (Le fichier C:Windowssystem32driversetchosts)
Bingo ! Il s’avère que celui-ci a été blindé par un soft pour éradiquer et se prémunir des spyware. En gros plus de 10 000 noms de domaines référencés sur 127.0.0.1, le service DNS l’analyse pour le mettre dans son cache et il prend son temps le bougre ! (Environ 45 secondes). Je supprime donc toutes les occurrences du fichier et je gagne en temps de démarrage de 45 secondes…

La méthode du fichier hosts pour se prémunir des spyware est plus qu’obsolète, elle était utile lors du bon vieux temps sous IE6. Mais maintenant chaque navigateur effectue des requêtes à des services spécialisés pour savoir si le site en question est dangereux (phishing, spyware, etc …). C’est par exemple le cas de Firefox qui tient sa base de données de site craignos.