macOS verfügt über ein ausgeklügeltes System für das DNS-Anforderungsrouting ("Bereichsabfragen"), um Fälle wie VPN zu behandeln, in denen Sie möglicherweise den Domänennamen Ihrer Arbeit benötigen, um Ihren VPN-Tunnel durchzugehen, sodass Sie Antworten von den internen DNS-Servern Ihrer Arbeit erhalten, die möglicherweise mehr / andere Informationen enthalten als die externen DNS-Server Ihrer Arbeit.
Um zu sehen, welche DNS-Server von MacOS verwendet werden und wie der Abfragebereich eingerichtet ist, verwenden Sie:
scutil --dns
Verwenden Sie zum Abfragen von DNS wie bei macOS:
dns-sd -G v4v6 example.com
…oder…
dns-sd -q example.com 255 255
Siehe die Manpages scutil(8)
und dns-sd(1)
für weitere Informationen.
DNS-Tools zur Fehlerbehebung wie nslookup(1)
, dig(1)
und host(1)
enthalten ihren eigenen DNS - Resolver - Code und nicht Verwendung des Systems DNS - Abfrage - APIs machen, damit sie nicht das Systemverhalten bekommen. Wenn Sie nicht angeben, welchen DNS-Server sie verwenden sollen, wird wahrscheinlich nur einer verwendet /etc/resolv.conf
, der automatisch generiert wird und nur die Standard-DNS-Server für nicht beschränkte Abfragen enthält.
Herkömmliche Unix-Befehlszeilentools, die nicht für DNS spezifisch sind, wie z. B. ping(8)
wahrscheinlich die traditionellen gethostbyname(3)
APIs, die unter macOS das Verhalten des DNS-Auflösers verwenden.
Um zu sehen, was Ihr DHCP-Server Ihrem Mac empfohlen hat, schauen Sie sich die domain_name_server
Zeile in der Ausgabe von an:
ipconfig getpacket en0
(Ersetzen Sie en0 durch den korrekten Namen der BSD-Schnittstelle, wie Sie es in sehen würden. ifconfig
)
Bitte beachten Sie, ich bin mir ziemlich sicher, dass die DNS-RFCs keine DNS-Implementierungen benötigen, um die Liste der Server nach Rang zu berücksichtigen. Obwohl es bei DNS-Implementierungen üblich ist, sie auf diese Weise zu behandeln, ist es wahrscheinlich nicht ratsam, sich auf alle Implementierungen zu verlassen, um Dinge auf diese Weise zu implementieren, wenn dies nicht in den relevanten Standards angegeben ist.
Beachten Sie außerdem, dass Ihr Mac möglicherweise auch DNS-Serverlisten von IPv6-Router-Ankündigungen oder DHCP6 abruft, sofern diese in Ihrem Netzwerk aktiv sind. Und natürlich VPN-Einstellungen, installierte Konfigurationsprofile, Open Directory, Active Directory usw., falls diese Dinge in Ihrer Umgebung verwendet werden.