Comment vider le cache DNS dans macOS, El Capitan ou Yosemite

Si vous êtes administrateur réseau, développeur Web ou administrateur système de Mac, vous devrez peut-être vider le cache DNS sur macOS pour plusieurs raisons. Surtout, si vous voulez qu'un serveur de noms se résolve correctement ou qu'un changement d'adresse DNS soit détecté par votre système individuel.

Outre les raisons ci-dessus, si vous avez modifié le fichier /etc/ hosts et que vous avez besoin des modifications pour prendre effet sans redémarrer le Mac, vous pouvez trouver nécessaire de vider et de réinitialiser les caches DNS.

Comment effacer le cache DNS sur Mac

  • La réinitialisation du cache DNS n'est pas la même dans chaque version de Mac OS X. Si vous êtes un utilisateur Mac pendant une période plus longue, vous savez peut-être que ce processus dans OS X Yosemite est similaire à certaines autres versions plus anciennes. Cela est probablement dû à la découverte par le remplacement de mDNSResponder, puis au retour à mDNSResponder.
  • Malgré le changement, le vidage du cache DNS reste une commande de terminal dans Yosemite, mais il existe un peu différent selon la version exacte du système d'exploitation que vous utilisez.
  • Vous pouvez effacer le DNS Unicast ou le DNS Multicast, ou les deux. Si vous essayez de réinitialiser tous les caches DNS sur le Mac, vous devrez peut-être envisager de les effacer comme mesure appropriée.

Vider le cache DNS dans macOS Sierra ou macOS High Sierra

Vider le cache DNS dans macOS Sierra et macOS High Sierra, vous devez utiliser une nouvelle commande. Rendez-vous sur ce guide rapide pour découvrir comment cela se fait.

Vider le cache DNS dans Mac OS X Yosemite ou El Capitan

À partir d'OS X 10.10.4 et avec l'inclusion de 10.11, Apple a rejeté la découverte et l'a remplacée par mDNSResponder. Par conséquent, pour vider les caches DNS dans OS X Yosemite et Mac OS X El Capitan, et les versions futures les plus probables, voici la chaîne de commande:

sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder; say cache flushed

L'utilisation de la commande ci-dessus efface tous les caches DNS pour OS X 10.10.4 et versions ultérieures.

Étant un utilisateur Mac depuis longtemps, vous vous souvenez peut-être que cette chaîne de commande est essentiellement ce qui fonctionnait dans la version précédant Yosemite. Cependant, les versions d'OS X Yosemite antérieures à 10.10.4 utiliseront une chaîne de commande différente, comme mentionné ci-dessous.

Pour réinitialiser le cache, vous devez utiliser le terminal. Recherchez l'application Terminal dans / Applications / Utilitaires / ou ouvrez-la avec Spotlight. Ciblez à la fois UDNS (Unicast DNS) et MDNS (Multicast DNS) avec deux commandes différentes pour vider complètement tous les caches DNS dans la version la plus récente d'OS X.

Vider le cache MDNS

  • OS X Yosemite et versions ultérieures: sudo killall -HUP mDNSResponder
  • OS X v10.10 à v10.10.3: sudo discoveryutil mdnsflushcache

Appuyez sur la touche Retour et entrez le mot de passe administrateur lorsque vous y êtes invité.

Vider le cache UDNS

sudo discoveryutil udnsflushcaches

Une autre fois, appuyez sur la touche Retour et entrez le mot de passe administrateur lorsque vous y êtes invité. Dans la deuxième commande, les caches sont pluriels, une variation de syntaxe petite mais cruciale.

Comment vider et réinitialiser tous les caches DNS dans OS X Yosemite

Si cela est souhaitable, il est également possible de chaîner les deux commandes ensemble. La commande suivante annoncera à haute voix lorsque vous effacerez les caches:

sudo discoveryutil mdnsflushcache;sudo discoveryutil udnsflushcaches;say flushed

Sans aucun doute, les caches MDNS et UDNS sont différents, mais vous pouvez comprendre que les deux commandes sont nécessaires pour que le cache DNS fonctionnel soit vraiment effacé dans OS X Yosemite. Pour vos propres besoins, si vous avez seulement besoin d'effacer l'un ou l'autre, c'est tout à fait possible.

Il est à noter que OS X Yosemite est passé de mDNSResponder. Ainsi, vous n'avez pas besoin de tuer le processus mDNSResponder pour actualiser les caches DNS comme dans les versions antérieures de Mac OS X.

Si vous utilisez une version antérieure d'OS X comme Mavericks, Mountain Lion ou Lion, les commandes de vidage DNS seront différentes. Ci-dessous, nous avons mentionné les commandes Terminal pour les versions antérieures de Mac OS X, jetez un œil.

Comment vider le cache DNS dans OS X Mavericks, Mountain Lion et Lion

La commande ci-dessous vous permettra de réinitialiser le cache DNS sous OS X v10.9.5 et versions antérieures:

sudo killall -HUP mDNSResponder

Si vous utilisez Mac OS X Snow Leopard, les commandes du terminal pour le même sont ci-dessous, vérifiez-le.

Comment vider le cache DNS dans Mac OS X Snow Leopard

Copiez-collez simplement la commande ci-dessous pour réinitialiser le cache DNS dans OS X v10.6 à v10.6.8:

sudo dscacheutil -flushcache

Comment vérifier les détails du cache DNS dans OS X El Capitan ou Yosemite

Pendant que vous modifiez le DNS, si vous voulez savoir ce qui est mis en cache à ce moment-là, vous pouvez utiliser les commandes comme suit:

Obtenez les statistiques de cache UDNS

sudo discoveryutil udnscachestats

En outre, vous pouvez récupérer des détails sur le cache DNS de multidiffusion avec la commande suivante:

sudo discoveryutil mdnscachestats

Les deux commandes susmentionnées offrent des informations telles que le nombre d'entrées DNS mises en cache, fournissant un compte rendu des détails de la manière suivante:

UDNS Cache Stats: Cached 1250 of 1900

Si vous exécutez les 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 un changement s'est produit

Une fois que vous avez vidé le cache, si vous souhaitez savoir si l'IP ou le serveur de noms a vraiment changé, utilisez la commande 'dig' avec l'URL comme indiqué ci-dessous:

dig igeeksblog.com

dig et nslookup sont assez similaires, mais à l'exception 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 le temps de requête inclus; tous ces détails sont utiles pour résoudre les problèmes de serveur de noms. Si le temps de requête dans le résultat est lent, vous devez utiliser un outil nommé nombench pour obtenir un serveur DNS plus rapide, généralement OpenDNS ou Google DNS.

C'est à peu près ça!

Emballer

Espérons que se débarrasser du cache DNS ne sera plus un problème pour vous. Vous avez une question? Jetez-le dans les commentaires ci-dessous.

Vous voudrez peut-être également jeter un œil à ces messages:

  • Comment utiliser le démarrage sécurisé sur iMac Pro
  • DearMob iPhone Manager pour Mac et Windows
  • Comment masquer les applications achetées sur Mac

Vous avez trouvé ce guide utile? Téléchargez notre application et restez connecté avec nous via Facebook, Twitter et Telegram pour lire plus d'articles de ce type.