136 votes

Le DNS ne se résout pas sur Mac OS X

Certains de mes collègues ont des problèmes sur leurs Macs - la résolution DNS ne fonctionne pas dans Mac OS X. Ils utilisent Snow Leopard 10.6.8. Ils peuvent utiliser le DNS dans une machine virtuelle Windows 7 (VMware Fusion 3.1.3) fonctionnant sous OS X. Les ordinateurs sont des MacBook Pros 15", modèle début 2011.

Les choses qu'ils ont essayées et qui n'ont pas fonctionné :

  • activer/désactiver l'aéroport
  • Redémarrage de
  • utilisation d'une connexion filaire au lieu du wifi
  • supprimer les informations de connexion et les ajouter à nouveau
  • Désactiver le pare-feu de Mac
  • en utilisant une IP statique
  • paramétrage manuel des serveurs DNS
  • redémarrage de mDNSResponder
  • les corrections de cette autre question

EDIT réponse à la réponse de Martín :

- Pouvez-vous faire un ping sur le DNS que vous voulez utiliser ?

$ ping apple.com
ping: cannot resolve apple.com: Unknown host

- Quelle(s) est/sont l'adresse(s) IP du/des DNS que vous voulez utiliser ?

C'est un serveur DNS d'entreprise qui est donné avec DHCP, il fonctionne bien pour d'autres personnes. J'ai également essayé le 8.8.4.4 de Google et le 205.171.3.65 (que j'ai trouvé dans le DNS Benchmark de GRC comme étant le plus rapide).

- Avez-vous essayé d'utiliser 8.8.8.8 (google) ou l'un des OpenDNS 208.67.222.222 ou 208.67.220.220 ?

Cela ne fonctionne pas, voir la sortie de Google Chrome :

Le serveur de www.apple.com est introuvable, car la recherche DNS a échoué. Le DNS est le service réseau qui traduit le nom d'un site Web en son adresse Internet. Cette erreur est le plus souvent due à l'absence de connexion à l'Internet ou à une mauvaise configuration du réseau. Elle peut également être causée par un serveur DNS qui ne répond pas ou par un pare-feu empêchant Google Chrome d'accéder au réseau.

- Pouvez-vous faire un ping sur ces hôtes ?

$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes 64 bytes from
8.8.8.8: icmp_seq=0 ttl=58 time=3.925 ms

- créer un utilisateur vierge

Un compte d'utilisateur invité a été créé, le problème de DNS était toujours présent lors de l'utilisation de le compte invité.

- nslookup et dig fonctionnent bien

$ nslookup www.apple.com 8.8.8.8
Server:  8.8.8.8
Address: 8.8.8.8#53

Non-authoritative answer:
www.apple.com canonical name = www.isg-apple.com.akadns.net.
www.isg-apple.com.akadns.net canonical name = www.apple.com.edgekey.net.
www.apple.com.edgekey.net canonical name = e3191.c.akamaiedge.net.
Name: e3191.c.akamaiedge.net
Address: 184.24.141.15

$ dig @8.8.8.8 www.apple.com
; <<>> DiG 9.6.0-APPLE-P2 <<>> @8.8.8.8 www.apple.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11298
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION: ;www.apple.com.   IN A
;; ANSWER SECTION:
www.apple.com.  1041 IN CNAME www.isg-apple.com.akadns.net.
www.isg-apple.com.akadns.net. 38 IN CNAME www.apple.com.edgekey.net.
www.apple.com.edgekey.net. 8794 IN CNAME e3191.c.akamaiedge.net.
e3191.c.akamaiedge.net. 17 IN A 184.24.141.15
;; Query time: 4 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue Oct 4 09:25:28 2011
;; MSG SIZE  rcvd: 158

- J'ai également vidé le cache DNS, mais cela n'a pas aidé.

sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

EDIT 2 :

$ cat /etc/resolv.conf
#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.
#
# This file is automatically generated.
#
domain {redacted}.com
nameserver 8.8.8.8
nameserver 208.67.222.222

0 votes

Ça m'arrive aussi sur le lion.

0 votes

Cela se produit pour moi sur Mavericks, 10.9.4.

0 votes

Cela ressemble à un problème historique qui a pourri la vie des utilisateurs et des administrateurs de réseau de Leopard à Yosemite. Si quelqu'un rencontre encore ce problème, veuillez signaler clairement si vous avez plus d'une interface active et si, de plus, vous obtenez sa configuration à partir d'un serveur DHCP (de différents côtés). Pourquoi ? Je n'ai jamais vu un tel problème sur aucun autre Unix et sur aucun de mes Macs (j'en ai beaucoup), mais aucun d'entre eux n'a plus d'une interface qui parle vers une source d'information DNS.

2voto

Dmitriy Korobskiy Points 141

J'ai le même problème avec la version 10.6.8. Le premier voyage dans un Apple Store a permis de restaurer le système. Mais, après cela, le DNS est à nouveau tombé en panne alors que j'étais à l'étranger et que je n'avais pas de DVD système avec moi. À ce moment-là, j'ai trouvé ce fil de discussion et j'ai supprimé /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist par @freezedpeanuts et @Tom Thorogood.

Cela a réglé le problème, mais, étonnamment, le DNS a cassé pour la troisième fois quelques jours plus tard. J'ai cherché une image système de 10.6.3 et.. :

  1. Copié /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist de l'image système.
  2. sudo chown root /System/Library/LaunchDaemons/com.apple.mDNS*
  3. Redémarrage de

Cela a réglé le problème.

Il tombe périodiquement en panne pour moi maintenant (une fois par mois environ), et la procédure de restauration se résume aux étapes ci-dessus, sauf qu'au lieu de redémarrer, vous pouvez le faire :

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

2voto

Dustin Matlock Points 31

Si vous rencontrez encore des problèmes, vous devrez peut-être supprimer tout serveur DNS public jusqu'à ce que le cache soit vidé.

1 votes

On devrait peut-être mentionner support.apple.com/fr/au/HT203244 .

0 votes

@DAVincent Quelques années de retard, mais ce lien est décevant. C'est clairement un bug d'Apple mais ils l'attribuent à une erreur de l'utilisateur.

2voto

Jérémie Points 191

Cela n'aidera probablement personne, mais au cas où, j'ai accidentellement, il y a quelque temps, créé un fichier dans le dossier, lorsqu'un DNS était hors service pour un domaine particulier :

/etc/resolver/

et cela empêchait un nom spécifique d'être résolu, deux ans plus tard.

0 votes

Merci beaucoup, c'était mon problème. J'ai débogué pendant des heures, et quand j'ai regardé dans /etc/resolver, j'ai bien sûr trouvé un fichier appelé "test", avec les adresses IP erronées...

0 votes

C'est exactement mon problème. Je ne l'ai réalisé qu'une fois que j'ai lancé scutil --dns et j'ai remarqué que le résolveur n°8 a ajouté des serveurs de noms personnalisés pour mon domaine problématique. J'ai d'abord essayé de les supprimer via la fonction scutil interface de ligne de commande mais sans succès. Et puis je suis tombé par hasard sur /etc/resolver ... Alléluia ! Cette... réponse a été très utile pour expliquer l'idée du DNS sur MacOS.

2voto

kenorb Points 11627

Voici quelques commandes avancées qui peuvent aider à résoudre le problème de DNS :

  • Exécuter dig pour lister les serveurs de noms racine.
  • Exécuter dig example.com pour lancer la recherche DNS pour example.com domaine.
  • Listez vos ports matériels par : networksetup -listallhardwareports .
  • Vérifier la sortie du paquet DHCP/BOOTP que le client a accepté du serveur DHCP/BOOTP par : ipconfig getpacket en0 .
  • Vérifiez votre configuration DNS en : scutil --dns .
  • Vérifier que mDNSResponder est en cours d'exécution : ps wuax | grep mDNSResponder .
  • Vider les entrées de traduction ARP par : arp -ad (courir man arp pour obtenir de l'aide). source

Pour déboguer mDNSResponder la commande suivante peut vous aider :

(sleep 1 && sudo killall -INFO mDNSResponder &); log stream | grep mDNSResponder

La commande ci-dessus enverra SIGINFO au processus qui transmettra les détails du débogage dans le journal de sortie qui peut être lu et analysé.

1voto

sMyles Points 165

Malheureusement, rien de tout cela ne m'a aidé, et il s'est avéré qu'après une heure à essayer de comprendre et à me frapper la tête contre la table basse ... quelque chose, d'une manière ou d'une autre, quelque part ... a retiré le /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist et c'est la raison pour laquelle j'ai eu ce problème.

Je m'en suis rendu compte quand j'ai vu ce message d'erreur : /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist: No such file or directory

Voici une copie d'une version d'El Capitan : https://gist.github.com/tripflex/e7147690d1768dc74b1dd626614573c0

Voici le code de ce gist :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.apple.mDNSResponder.reloaded</string>
    <key>OnDemand</key>
    <false/>
    <key>InitGroups</key>
    <false/>
    <key>UserName</key>
    <string>_mdnsresponder</string>
    <key>GroupName</key>
    <string>_mdnsresponder</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/sbin/mDNSResponder</string>
    </array>
    <key>MachServices</key>
    <dict>
        <key>com.apple.mDNSResponder</key>
        <true/>
            <key>com.apple.mDNSResponder.dnsproxy</key>
            <true/>
    </dict>
    <key>Sockets</key>
    <dict>
        <key>Listeners</key>
        <dict>
            <key>SockFamily</key>
            <string>Unix</string>
            <key>SockPathName</key>
            <string>/var/run/mDNSResponder</string>
            <key>SockPathMode</key>
            <integer>438</integer>
        </dict>
    </dict>
    <key>POSIXSpawnType</key>
    <string>Interactive</string>
    <key>EnablePressuredExit</key>
    <false/>
</dict>
</plist>

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X