Ich habe ein seltsames Problem, bei dem die systemweite DNS-Auflösung nicht funktioniert, aber ich weiß nicht, wie ich das beheben oder sogar ein Protokoll finden kann (von Linux). Ich habe 8.8.8.8, 8.8.4.4 manuell als DNS-Server in der GUI konfiguriert, was genommen zu haben scheint:
$ scutil --dns
DNS configuration
resolver #1
search domain[0] : Home
nameserver[0] : 8.8.8.8
nameserver[1] : 8.8.4.4
flags : Request A records
reach : Reachable
DNS configuration (for scoped queries)
resolver #1
search domain[0] : Home
nameserver[0] : 8.8.8.8
nameserver[1] : 8.8.4.4
if_index : 4 (en0)
flags : Scoped, Request A records
reach : Reachable
Wenn das System jedoch versucht, einen Namen aufzulösen, schlägt dies mit einer Zeitüberschreitung fehl. Nur einige Programme, z. B. Chrome, das den Systemauflöser nicht verwendet, sind davon nicht betroffen:
$ ping google.com
ping: cannot resolve google.com: Unknown host
$ scutil -r google.com
Not Reachable
Sie können manuell abgefragt werden:
$ nslookup google.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: google.com
Address: 2.127.237.183
...
$ dig google.com
google.com. 50 IN A 2.127.237.183
;; Query time: 226 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
Und die Ergebnisse sind gültig:
$ ping 2.127.237.183
64 bytes from 2.127.237.183: icmp_seq=0 ttl=60 time=37.086 ms
$ scutil -r 2.127.237.183
Reachable
Meine hosts-Datei enthält nichts Überraschendes:
$ cat /etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
Das Anfordern einer neuen DHCP-Lease hat ebenfalls nichts bewirkt. Das Zurücksetzen der Server ändert nichts:
$ networksetup -getinfo Wi-Fi
DHCP Configuration
IP address: 192.168.0.2
Subnet mask: 255.255.255.0
Router: 192.168.0.1
Client ID:
IPv6: Automatic
IPv6 IP address: none
IPv6 Router: none
$ networksetup -setdnsservers Wi-Fi Empty
$ scutil --dns
DNS configuration
resolver #1
search domain[0] : Home
nameserver[0] : 192.168.0.1
if_index : 4 (en0)
flags : Request A records
reach : Reachable,Directly Reachable Address
DNS configuration (for scoped queries)
resolver #1
search domain[0] : Home
nameserver[0] : 192.168.0.1
if_index : 4 (en0)
flags : Scoped, Request A records
reach : Reachable,Directly Reachable Address
$ scutil -r google.com
Not Reachable
Die in Console.app verfügbaren Protokolle zeigen hauptsächlich Apps, die sich über Zeitüberschreitungen beschweren (ich finde das besonders seltsam: Die Auflösung schlägt nicht sofort fehl, da kein Server verfügbar ist, aber sie schlägt immer mit einer Zeitüberschreitung fehl, als würde sie versucht, diese zu erreichen, aber kippen?)
Im Gegensatz zu Linux scheint dig / nslookup nicht den System-Resolver zu verwenden, den alle anderen Apps / Dienste verwenden. Gibt es ein Tool, das den System-Resolver verwendet und über einige Optionen verfügt, mit denen ich feststellen kann, was nicht stimmt?