Primero, si networksetup -getdnsservers <service name>
no muestra nada, no tienes nada en la lista de Preferencias del sistema > Netowrk en "Servidores DNS:".
Segundo, es importante tener en cuenta que OS X no maneja DNS como la mayoría de los sistemas. Por enlace Básicamente, esto significa que OS X tiene múltiples Clientes DNS según su configuración. El resultado de estos múltiples servicios significa que hay situaciones en las que el uso de Safari para acceder a un sitio web ( enlace ) lo llevará a una dirección IP que SO X ha recuperado de DNS (por ejemplo, 1.2.3.4) al mismo tiempo que realiza una excavación
$ dig www.example.com
devolverá resultados diferentes. (quizás 2.3.4.5)
El motivo de esto reside en la forma en que OS X maneja el DNS.
Si ejecuta $ man dig
obtiene entre otras cosas, lo siguiente:
AVISO DE Mac OS X
El comando dig no utiliza el nombre de host y la resolución de la dirección o
los mecanismos de enrutamiento de consultas DNS utilizados por otros procesos que se ejecutan en Mac
OS X. Los resultados de las consultas de nombre o dirección impresas por excavación pueden diferir
de los encontrados por otros procesos que utilizan el nombre nativo de Mac OS X
y abordar los mecanismos de resolución. Los resultados de las consultas de DNS también pueden
difieren de las consultas que utilizan la biblioteca de enrutamiento DNS de Mac OS X.
También $man nslookup
devolverá algo similar
AVISO DE Mac OS X
El comando nslookup no usa el nombre de host y la resolución de la dirección o la consulta de DNS
mecanismos de enrutamiento utilizados por otros procesos que se ejecutan en Mac OS X. Los resultados del nombre o
Las consultas de direcciones impresas por nslookup pueden diferir de las encontradas por otros procesos que
Utilice el mecanismo de resolución de direcciones y nombres nativos de Mac OS X. Los resultados del DNS
las consultas también pueden diferir de las consultas que utilizan la biblioteca de enrutamiento DNS de Mac OS X.
Todo esto es realmente una forma bastante larga de decir, la mejor manera de ver qué servidores DNS se están utilizando es mirar las Preferencias del sistema > Red
Los entreses del "Servidor DNS:" suelen estar allí, y "Buscar dominios:" le permitirá buscar direcciones incompletas.
Si "Servidor DNS:" no está presente, OS X intentará usar la dirección en "Enrutador:" para DNS.
Y, además de toda esta diversión, hay utilidades y otros procesos que puede que no estén usando la biblioteca de enrutamiento de DNS de OS X, y que afectarán el contenido de / etc / resolv. conf directamente.
La respuesta corta y corta es esta:
- Si se ajusta al contenido de Preferencias del sistema > Red, estás viendo lo mismo que la mayoría están usando los procesos.
- El contenido de las preferencias del sistema > Red, debería llenar /etc/resolv.conf, pero no siempre.
- Algunos otros procesos (como dig y nslookup) están accediendo a /etc/resolv.conf directamente.
Y, además de todo esto: si no está utilizando los clientes VPN integrados en OS X, es posible que se estén utilizando rutas y servidores DNS adicionales que networksetup -getdnsservers <service name>
no mostrará. Tu cliente VPN puede tener la capacidad de mostrarte las rutas y los servidores DNS, sé que el mío sí.
Sé que esto no responde con precisión a tu pregunta, pero espero que esto te ayude a darte cuenta de que no siempre es fácil descubrir cuál es la "verdad" con respecto al DNS en una Mac. En general, está seguro suponiendo que el contenido de Preferencias del sistema > Red, o el contenido de networksetup -getdnsservers <service name>
es de donde obtiene su DNS. Sin embargo, si las cosas parecen raras, ten en cuenta que también hay otras posibilidades. Utilice la excavación para ayudar a determinar si hay diferencias en curso.
Por último, para aquellos lectores que se estén preguntando cómo obtener el <service name>
en networksetup -getdnsservers <service name>
, intente usar networksetup -listallnetworkservices
Bill