Si vous voulez résoudre des problèmes de saturation du cache ou d’autres problèmes de connectivité Internet, alors vous devrez peut-être effacer le cache DNS sur votre Mac. Si vous êtes l’administrateur d’un réseau, un développeur Web ou l’administrateur système d’un Mac, alors vous devrez peut-être vider le cache DNS de macOS pour plusieurs raisons. En particulier, si vous souhaitez résoudre correctement le nom d’un serveur ou si vous voulez changer d'adresse DNS de votre Mac pour pouvoir être détecté par votre système individuel.
Lire aussi :
Contenu
Qu'est-ce que le cache DNS
Le cache DNS désigne le stockage temporaire des informations relatives aux consultations DNS précédentes sur le système d'exploitation ou le navigateur web d'une machine. Le fait de conserver une copie locale d'une consultation DNS permet à votre système d'exploitation ou à votre navigateur de la récupérer rapidement, ce qui permet de résoudre l'URL d'un site Web en fonction de l'IP correspondante de manière beaucoup plus efficace. La fonction de base des différents types de caches est plus ou moins la même.
La mise en cache du DNS ne se produit pas seulement au niveau du système d'exploitation et du navigateur. En fait, comme nous l'avons mentionné plus haut, une consultation de DNS comporte plusieurs étapes. Lors d'une nouvelle recherche DNS, la recherche passe par le résolveur, le serveur racine et le serveur TLD. À chaque étape, des informations sont recueillies et mises en cache pour une utilisation ultérieure. Par conséquent, même si le cache DNS local est vide, le résolveur peut disposer d'une copie en cache des informations requises, ce qui évite de devoir passer par le processus complet de recherche DNS.
La méthode la plus facile pour vider des caches sur Mac
Macube Cleaner est une solution beaucoup plus simple pour effacer le cache DNS sur toute version de Mac. C'est est une application conçue pour nettoyer, optimiser et entretenir votre Mac, ainsi que pour vider les caches de toutes ses fonctionnalités.
Étape 1. Lancez Macube Cleaner. Vous voyez sur l’interface principale le mode « Smart Scan ». Cliquez sur « Smart Scan » pour démarrer l’analyse.
Étape 2. Sélectionnez dans le résultat de l’analyse les caches que vous voulez effacer, comme Cache du Système, et cliquez sur « Nettoyer ».
Étape 3. Le nettoyage va commencer tout de suite. Généralement tout le processus va terminer en quelques secondes. Mais ça dépend de la taille des fichiers.
Comment vider le cache DNS sur Mac
-
La façon de réinitialiser le cache DNS n'est pas la même sur chaque version de Mac OS X. Si vous utilisez un ordinateur Mac depuis longtemps, alors vous savez peut-être que ce processus sur OS X Yosemite est similaire à certaines versions plus anciennes de macOS. Cela est probablement dû au remplacement de mDNSResponder par discoveryd, qui ensuite est de nouveau passée à mDNSResponder.
Malgré ce changement, vider le cache DNS se fait toujours par une commande dans le Terminal sur Yosemite, mais il existe de petites différences en fonction de la version exacte du système d'exploitation que vous utilisez.
Vous pouvez vider le DNS unicast ou le DNS Multicast, ou les deux. Si vous voulez réinitialiser tous les caches DNS sur votre Mac, alors vous devrez peut-être vider les deux.
Vider le cache DNS sur macOS Sierra ou sur macOS High Sierra
Pour vider le cache DNS sur macOS Sierra et sur macOS High Sierra, vous devrez utiliser une nouvelle commande. Lisez ce guide rapide pour apprendre à le faire.
Effacer le cache DNS sur Mac OS X Yosemite ou El Capitan
À partir de OS X 10.10.4 et les versions supérieurs, la version 10.11 incluse, Apple a abandonné discoveryd et l’a remplacé par mDNSResponder. Par conséquent, pour vider les caches DNS sur OS X Yosemite et Mac OS X El Capitan, ainsi que les versions ultérieures, veuillez suivre les étapes suivantes :
Étape 1. Lancez le Terminal en tapant Terminal dans la barre de recherche.
Étape 2. Entrez la commande suivante : sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder; say cache flushed
Étape 3. Appuyez sur Entrée, saisissez votre mot de passe, le processus de suppression va lancer.
La commande ci-dessus effacera tous les caches DNS sur OS X 10.10.4 et les versions ultérieures.
Les vieux utilisateurs de Mac remarqueront peut-être que cette chaîne de commande correspond à celle utilisée dans la version de macOS qui a précédé Yosemite. Cependant, les versions de OS X Yosemite antérieures à 10.10.4 utiliseront une chaîne de commande différente, comme indiqué ci-dessous.
Pour réinitialiser le cache, vous devez utiliser le terminal. Recherchez l'application Terminal dans /Applications/Utilitaires/ ou bien ouvrez-la à partir de Spotlight. Ciblez à la fois UDNS (Unicast DNS) et MDNS (Multicast DNS) avec deux commandes différentes pour vider complètement tous les caches DNS sur la version la plus récente d'OS X.
Effacer le cache MDNS
Pour les systèmes différents, vous devez taper les commandes différentes.OS X Yosemite et les versions ultérieur : sudo killall -HUP mDNSResponder
De OS X 10.10 à 10.10.3 : sudo discoveryutil mdnsflushcache
Appuyez sur la touche « Retour » et entrez le mot de passe administrateur lorsque vous y êtes invité.
Effacer le cache UDNS
sudo discoveryutil udnsflushcaches
Appuyez à nouveau sur la touche « Retour » et entrez le mot de passe administrateur lorsque vous y êtes invité. Dans la deuxième commande, le mot « caches » est au pluriel. Cette variation de syntaxe est petite mais cruciale.
Comment vider et réinitialiser toutes les caches DNS sur OS X Yosemite
Si vous le souhaitez, vous pouvez également relier les deux commandes. La commande suivante vous enverra une notification une fois que les caches sont effacés : sudo discoveryutil mdnsflushcache;sudo discoveryutil udnsflushcaches;say flushed
Il ne fait aucun doute que les caches MDNS et UDNS sont différents, mais vous pouvez comprendre que les deux commandes sont requises pour que le cache DNS fonctionnel soit totalement vidé sur OS X Yosemite. Si vous ne souhaitez effacer seulement l'un des caches DNS, et bien c'est tout à fait possible.
Puisque OS X Yosemite s‘est debarassé de mDNSResponder, vous n'avez pas besoin de terminer le processus mDNSResponder pour actualiser les caches DNS comme c’était le cas sur les versions précédentes de Mac OS X.
Si vous utilisez une version antérieure d’OS X telle que Mavericks, Mountain Lion ou Lion, alors les commandes permettant de vider le DNS sont différentes. Ci-dessous, vous pourrez trouver les commandes de terminal pour les versions antérieures de Mac OS X.
Comment vider le cache DNS sur OS X Mavericks, Mountain Lion et Lion
La commande ci-dessous vous aidera à réinitialiser le cache DNS sur OS X 10.9.5 et les versions antérieures de macOS : sudo killall -HUP mDNSResponder
Si vous utilisez Mac OS X Snow Leopard, alors veuillez utiliser la commande de terminal suivante.
Comment vider le cache DNS sur Mac OS X Snow Leopard
Copiez simplement la commande ci-dessous pour réinitialiser le cache DNS sur OS X 10.6 jusqu’à 10.6.8 : sudo dscacheutil -flushcache
Comment vérifier les détails du cache DNS sur OS X El Capitan ou Yosemite
Si vous souhaitez savoir ce qui est mis en cache lorsque vous changez de DNS, alors vous pouvez utiliser les commandes suivantes :
Obtenez les statistiques du cache UDNS
sudo discoveryutil udnscachestats
De plus, vous pouvez récupérer des détails sur le cache DNS multicast avec la commande suivante : sudo discoveryutil mdnscachestats
Les deux commandes mentionnées ci-dessus donnent des informations telles que le nombre d'entrées DNS mises en cache. Vous pouvez également obtenir un compte des détails de la manière suivante: UDNS Cache Stats: Cached 1250 of 1900
Si vous exécutez ces commandes avant et après l'exécution des variations de flushcache, vous découvrirez qu'elles doivent être réinitialisées sur le cache à 0 entrées, comme indiqué ci-dessous : MDNS Cache Stats: lo0: Cached 6 of 7500
Comment savoir si les changements ont été effectués
Une fois le cache effacé, si vous souhaitez confirmer si l’adresse IP ou le nom du serveur a réellement changé, alors utilisez la commande « dig » avec un certain URL, par exemple : dig xxx.fr
dig et nslookup sont assez similaires, mais la différence est que dig donne de meilleurs résultats en incluant des informations supplémentaires. Il fournit des détails tels que le serveur DNS défini utilisé pour accéder au domaine, un horodatage et l'heure de la requête. Toutes ces informations sont utiles pour résoudre les problèmes de noms de serveur. Si le temps de la requête dans le résultat est lent, alors vous devez utiliser un outil nommé « namebench » pour obtenir un serveur DNS plus rapide, généralement OpenDNS ou Google DNS.
Conclusion
Voilà, c’est tout ! Nous espérons que maintenant, vider le cache DNS ne vous posera plus de problème. Si vous voulez rendre tout le processus plus simple et sécuritaire, nous vous recommandons fortement un logiciel puissant – Macube Cleaner. Ce programme est compatible avec presque tous les Mac sous systèmes différents. Vous pourrez désormais vous débarrasser des commandes compliquées et réaliser le nettoyage en quelques clics bien simples !