Qu’est-ce que le cache DNS du Mac ?
Quand vous tapez un nom de site, comme exemple.fr, le DNS le traduit en adresse IP. Pour aller plus vite, votre Mac garde cette réponse en mémoire : c’est le cache DNS.
Chaque réponse a une durée de vie, le TTL, exprimée en secondes. Si le site change d’adresse pendant ce délai, votre Mac garde l’ancienne.
Le cache local ne touche qu’à votre Mac
Vider le cache DNS efface seulement la mémoire de votre Mac. Les anciennes réponses gardées par votre box, ou par le serveur DNS de votre fournisseur d’accès, restent en place. Et ça ne libère pas d’espace sur le disque ni ne rend le Mac plus rapide.
Cache DNS, cache du navigateur et cookies : ne pas confondre
Ces trois mémoires se confondent souvent.
| Critère | Cache DNS système | Cache du navigateur | Cookies |
|---|---|---|---|
| Ce qu’elle garde | Noms de domaine et adresses IP | Données pour afficher les pages | Données de site, liées à une visite |
| Où elle se trouve | Dans macOS | Dans le navigateur | Dans le navigateur |
| Symptôme typique | Ancienne adresse du site | Vieux éléments d’une page | Session ou connexion bloquée |
Ne pas effacer Safari pour une adresse introuvable
Un site qui ne s’ouvre pas à cause de son adresse ne se règle pas dans Safari. Si vous supprimez ses données dans Safari > Réglages > Confidentialité > Gérer les données du site web, vous risquez d’être déconnecté de ce site. Pour vider le cache de Chrome, voyez le guide nettoyer le cache sur Mac.
Quand vider le cache DNS règle vraiment un problème
Un site déplacé vers un nouvel hébergement
Vider le cache DNS peut aider dans ces cas :
- Un site reste inaccessible après un changement d’adresse DNS, car le Mac garde une ancienne réponse.
- Un site déplacé vers un nouvel hébergement, quand le Mac garde l’ancienne adresse. C’est le cas le plus net.
- Après la connexion ou la déconnexion d’un VPN, si une réponse locale est ancienne.
Un site qui marche sur le téléphone mais pas sur le Mac
Un site qui marche sur le téléphone mais pas sur le Mac oriente vers le cache local, sans le prouver.
Comparez les recherches DNS des deux appareils. Sur le Mac, tapez nslookup exemple.fr dans le Terminal, puis ajoutez l’adresse d’un serveur précis à la commande. Si les adresses trouvées diffèrent, le cache du Mac est un bon suspect.
Un nouveau serveur DNS qui ne prend pas effet
Un nouveau serveur DNS n’agit pas tout de suite : le Mac garde l’ancienne réponse. Chaque réponse a un TTL, sa durée de conservation : 3 600 secondes, soit 1 heure.
Pour modifier le serveur, ouvrez Réglages Système > Réseau, choisissez le service, cliquez sur Détails > DNS, puis ajoutez ou retirez l’adresse. Videz ensuite le cache pour voir l’effet tout de suite.
La connexion ou la déconnexion d’un VPN
Le VPN est-il en cause ?
Coupez le VPN, puis ouvrez le site qui pose problème. S’il s’affiche sans VPN et ne s’affiche pas avec, le souci vient des réglages DNS du VPN : vider le cache ne le corrigera pas.
Pour un VPN qui ne fonctionne plus, voyez les réglages à vérifier sur Mac.
Comment vider le cache DNS sur Mac avec le Terminal
Ouvrez Finder > Applications > Utilitaires > Terminal. Vous pouvez aussi taper « Terminal » dans la recherche Spotlight.
Le compte utilisé doit être un compte administrateur, sinon la commande ne passe pas. Si votre Mac utilise un VPN, voyez le guide du VPN intégré au Mac pour le régler.
1
Tapez la commande
Saisissez sudo killall -HUP mDNSResponder dans Terminal, puis appuyez sur Retour.
2
Saisissez le mot de passe
Entrez le mot de passe d’un compte administrateur, puis appuyez sur Retour. Rien ne s’affiche pendant la saisie, c’est normal.
3
Rechargez la page qui bloquait
Après une exécution réussie, Terminal n’affiche aucun message. Si le site s’ouvre maintenant, le cache DNS était bien en cause.
Les étapes complémentaires : navigateur, bail DHCP et Wi-Fi
Vider le cache DNS interne du navigateur
Si le problème ne touche que Chrome, ouvrez chrome://net-internals/#dns et cliquez sur Clear host cache. Chrome refera alors ses recherches de noms d’hôte.
Ce bouton ne vide que le cache de Chrome. Si d’autres applications restent bloquées, passez par la commande du Terminal.
Renouveler le bail DHCP
Pour renouveler le bail DHCP de votre connexion, suivez ces étapes dans les réglages réseau :
- Ouvrez Réglages Système, puis cliquez sur Réseau.
- Choisissez le service réseau concerné, par exemple Wi-Fi : le bouton n’apparaît que si ce service utilise DHCP.
- Cliquez sur Détails, puis sur TCP/IP, et enfin sur Renouveler le bail DHCP.
- Cliquez sur OK pour valider.
Renouveler le bail DHCP ne vide pas le cache DNS. L’action demande seulement au réseau de renouveler l’adresse IP de votre Mac. Si le problème vient d’une ancienne réponse DNS, il faut passer par la commande du Terminal.
Enregistrez avant de renouveler
Si vous avez des changements réseau non enregistrés, validez-les avant de cliquer sur Renouveler le bail DHCP. Sinon, ils peuvent être perdus.
Désactiver puis réactiver le Wi-Fi
Si le problème persiste après le renouvellement du bail, coupez puis rétablissez le Wi-Fi. Cliquez sur l’icône Wi-Fi dans la barre de menus, désactivez-le, puis réactivez-le.
Cette action recrée la connexion sans fil, alors que le renouvellement du bail DHCP se limite à renouveler l’adresse de votre Mac.
Ce que l’opération ne résout pas : les fuites DNS sous VPN
Un VPN actif ne garantit pas que vos recherches DNS passent par lui. Une fuite DNS les fait sortir du tunnel vers un autre résolveur.
Cela arrive si le VPN n’a pas ses propres serveurs DNS ou ne traite que certains domaines. Pour corriger ses réglages à la main, voyez configurer un VPN manuellement sur macOS.
Une fuite ne se règle pas au cache
Vider le cache ne change pas le chemin des requêtes DNS, donc la fuite reste. Dans l’application VPN, vérifiez :
- les serveurs DNS utilisés
- la protection contre les fuites DNS
- le routage des requêtes DNS
Faites ensuite un test de fuite DNS et comparez les serveurs affichés à ceux de votre VPN. Un serveur inattendu oblige à revoir le routage DNS.
Le cache DNS garde les adresses de vos sites, sur votre Mac seulement. Il ne règle que les cas où l’ancienne adresse reste en mémoire.
Votre prochain pas : si un site reste bloqué, lancez la commande du Terminal. Avec un VPN, vérifiez d’abord ses réglages DNS.
Questions fréquentes
Oui, un redémarrage met à jour les informations DNS gardées en mémoire par votre Mac, ce qui peut suffire à débloquer un site. Si la page refuse toujours de s’ouvrir après le redémarrage, la commande du Terminal vide ce cache directement.
Non, vider le cache DNS ne change pas l’adresse IP de votre Mac. La commande efface seulement les réponses DNS gardées en mémoire, soit les correspondances entre noms de sites et adresses. L’adresse IP vient du bail DHCP, que cette commande ne renouvelle pas.
Non, aucun raccourci clavier ne figure dans la procédure. Pour vider le cache DNS, lancez la commande sudo killall -HUP mDNSResponder dans le Terminal, avec un compte administrateur.
Non, la commande n’est pas dangereuse : elle vide seulement le cache DNS, la mémoire des adresses des sites, et ne supprime aucun fichier. Elle demande un mot de passe administrateur, que vous saisissez vous-même dans le Terminal. Sans ce mot de passe, rien ne se passe.