Estoy teniendo un problema extraño en el que la resolución de DNS en todo el sistema no funciona, pero no sé cómo podría arreglarlo, o incluso encontrar un registro (viniendo de Linux). Configuré manualmente 8.8.8.8, 8.8.4.4 como servidores DNS en la GUI, lo cual parece haber funcionado:
$ 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
Sin embargo, cuando el sistema intenta resolver un nombre, falla con un tiempo de espera, sólo algunos programas, como Chrome, que no utilizan el sistema de resolución, no se ven afectados:
$ ping google.com
ping: cannot resolve google.com: Unknown host
$ scutil -r google.com
Not Reachable
Se pueden consultar manualmente:
$ 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)
Y los resultados son válidos:
$ 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
Mi archivo de hosts no contiene nada sorprendente:
$ 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
Solicitar un nuevo arrendamiento DHCP tampoco hizo nada. Reiniciar los servidores no cambia nada:
$ 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
Los registros disponibles en Console.app muestran en su mayoría aplicaciones que se quejan de los tiempos de espera (creo que esto es especialmente extraño: la resolución no falla inmediatamente porque no hay un servidor disponible, sino que siempre falla con un tiempo de espera, como si intentara llegar a ellos pero no pudiera ).
Al contrario que en Linux, dig/nslookup no parecen utilizar el resolver del sistema que utilizan todas las demás aplicaciones/servicios. ¿Existe alguna herramienta que utilice el resolver del sistema y que tenga algunas opciones para decirme qué es lo que está mal?