Obtenir les adresses IP du serveur DNS à partir de la ligne de commande dans Mac OS X

Vous pouvez récupérer rapidement les adresses IP de serveur DNS actives sur n'importe quel Mac en utilisant l'utilitaire networksetup. Cela est effectué à partir de la ligne de commande, lancez l'application Terminal Server et tapez l'une des chaînes de commande suivantes, en fonction de la version d'OS X exécutée sur le Mac.


Récupérer les détails DNS de Terminal dans les nouvelles versions de OS X, y compris dans OS X Yosemite, Mac OS X 10.7 Lion, OS X 10.8 Mountain Lion, 10.9 Mavericks, et plus tard, est fait avec la syntaxe networksetup suivante:

networksetup -getdnsservers Wi-Fi

Cela présume que vous utilisez Wi-Fi, que la plupart d'entre nous font ces jours-ci. Remplacez Wi-Fi avec ethernet ou votre interface de choix, si ce n'est pas le cas.

Obtenir des informations DNS à partir de la ligne de commande dans les versions antérieures d'OS X, comme Mac OS X 10.6 Snow Leopard, 10.5 et auparavant, utilisez plutôt la syntaxe suivante:

networksetup -getdnsservers airport

Notez que je spécifie "Wi-Fi" ou "aéroport" dans ces exemples de chaînes car j'utilise principalement une connexion sans fil, mais vous pouvez également spécifier ethernet et bluetooth pour obtenir les détails DNS pour ces interfaces. Il suffit de remplacer le dernier texte d'interface avec l'interface que vous cherchez à identifier les informations IP du DNS, typiquement c'est la même chose pour chaque interface sur l'ordinateur.

En supposant que plusieurs serveurs DNS sont définis dans les préférences de mise en réseau de Mac OS X, vous verrez un rapport de chaque serveur DNS dans l'ordre de leur priorité, ressemblant à ceci:

8.8.8.8
208.67.220.220
208.67.222.222
10.0.0.1

Pour ceux qui se demandent, la plus haute IP du DNS dans cette liste d'exemple est le DNS public de Google, les deux suivants viennent d'OpenDNS, le dernier étant un routeur local. Si vous en avez besoin, vous pouvez utiliser un utilitaire gratuit comme namebench pour trouver un serveur DNS rapide.

De plus, vous pouvez récupérer les informations DNS en utilisant la commande 'nslookup' sur un serveur, cela rapportera les détails DNS des serveurs distants, ainsi que votre propre DNS principal pour résoudre l'autre serveur:

nslookup google.com

Cela rapportera quelque chose comme le suivant, avec les premiers bits "Serveur" et "Adresse" montrant l'IP DNS utilisé par la machine locale:

$ nslookup google.com
Server: 8.8.8.8
Address: 8.8.8.8#53

Réponse non autorisée:
Nom: google.com
Adresse: 74.125.239.135

Enfin, une autre option est de regarder /etc/resolv.conf, mais parce que ce fichier est généré automatiquement, il n'est pas toujours considéré comme précis si le DNS a récemment changé et n'a pas encore été vidé, notez que vider le DNS est un peu différent dans les nouvelles versions d'OS X, comme Apple a changé le fonctionnement du DNS à plusieurs reprises.