Recientemente experimenté algunos retrasos durante la resolución del host DNS en OS X 10.8. Para probarlo, inicié un script simple que intenta resolver repetidamente el mismo nombre de host 20 veces:
#!/bin/sh
for i in 'seq 20'; do
time -p dig www.google.com @8.8.8.8 | grep "^;; Query time:"
done
La mayoría de las solicitudes toman aproximadamente el mismo tiempo que la latencia del servidor de nombres:
;; Query time: 49 msec
real 0.05
Sin embargo, tan pronto como habilito el firewall en Mountain Lion (todas las solicitudes entrantes están permitidas, modo oculto está no habilitado), algunas de las solicitudes dig
toman exactamente 5 segundos más la latencia del servidor de nombres:
;; Query time: 25 msec
real 5.03
La mayoría de las solicitudes siguen siendo rápidas, pero alrededor de cada 10 a 15 solicitudes tienen un retraso de exactamente 5 segundos, incluso a través de dig
aún se informa un breve tiempo de consulta. No hace ninguna diferencia si uso dig
o host
para las pruebas, o si uso un servidor DNS local o uno público como en el ejemplo anterior. Cuando el firewall se apaga, el retraso nunca ocurre.
¿El firewall de OS X impone algún tipo de limitación de velocidad para las solicitudes, o hay algo más que me falta?