Tengo un usuario en Windows 7 que está intentando acceder a un servidor local con un nombre DNS de windows.cs. Tenemos dos servidores DNS internos. El servidor DHCP asigna a los usuarios los dos servidores DNS internos como primario y secundario y luego nuestros ISP DNS como un servidor DNS terciario.
De vez en cuando, el usuario no puede acceder al sitio web en windows.cs. Si lo hago ping, dice que no puede resolver el nombre del host. Vacio el caché de DNS y luego, cuando visualizo el caché de DNS, tiene lo siguiente:
windows.cs: el nombre no existe
Sin embargo, si uso nslookup, que por defecto consulta el servidor DNS primario (nuestro interno) y consulto windows.cs, devuelve la dirección IP correcta.
Entonces, ¿por qué Windows no puede resolver el nombre de host usando ping, pero puede hacerlo al usar la herramienta nslookup? ¿Y cómo soluciono esto?
fuente
Respuestas:
Por lo que dice, parece que la solicitud de windows.cs va al servidor DNS del ISP de vez en cuando. Luego, el cliente DNS de Windows almacena en caché el resultado de nxdomain y, por lo tanto, se utiliza para cualquier reintento con un navegador web, ping, etc. Borrar el caché (ipconfig / flushdns) debería obligar al cliente DNS de Windows a volver a intentar la consulta, pero no hay garantía de que no irá al servidor DNS del ISP nuevamente.
La razón por la que ping no puede resolver el nombre de host, pero nslookup sí es porque nslookup es una herramienta de bajo nivel que omite el cliente DNS de Windows. Utiliza el servidor DNS que le indique (el primero de forma predeterminada) y realiza la consulta sobre la marcha. Puede cambiar el servidor DNS que consulta escribiendo
server <host>
desde el indicador nslookup, donde el host es la IP o el FQDN.Sin embargo, el cliente DNS de Windows solo hará consultas para las entradas que no están en su caché (o que han caducado). De lo contrario, devuelve el resultado en caché.
No es evidente de inmediato por qué el cliente de Windows está utilizando el servidor DNS del ISP. Quizás no pudo resolver el servidor local recientemente (quizás debido a estar en otra red), quizás el servidor local estaba devolviendo errores. O quizás no esté ordenado correctamente en Configuración avanzada de TCP / IP> DNS.
Personalmente, prefiero usar solo las direcciones del servidor DNS local en las estaciones de trabajo (propagadas por DHCP), para simplificar la configuración y evitar problemas como este. Me gustaría saber la razón detrás de configurar el servidor DNS de los ISP en los escritorios. No puedo imaginar que haya razones de rendimiento válidas, y en lo que respecta a la redundancia, dos es suficiente en la mayoría de las redes (si no se agrega una tercera).
fuente
Los resultados de
nslookup
difieren de losping
denslookup
idiosincracias y errores . Sin embargo, no son realmente relevantes para su problema principal, que es que ha violado la regla de que sus servidores DNS proxy de respaldo deben proporcionar la misma vista del espacio de nombres DNS que su servidor principal . El servidor DNS proxy de su ISP no proporciona la misma vista del espacio de nombres DNS que sus propios servidores DNS proxy en su LAN.Parecería que otro administrador del sistema se ha equivocado de lo que My ISP proporciona y lo documenta, por lo que debo usarlo. falacia. ☺
fuente
TL; Versión DR: IPv6 causó el problema de consulta DNS en mi caso, desactivarlo resolvió el problema de consulta DNS.
Tuve el mismo problema en mi máquina de desarrollo. Cada vez que iniciaba sesión en la red de nuestra empresa, no podía resolver los nombres de host internos, todos los nombres de host / URI externos podían resolverse. Verifiqué los servidores DNS que habían sido asignados en la conexión VPN y mostraron que los servidores DNS de la compañía estaban configurados como primarios y secundarios. También pude usar,
nslookup
pero tuve que cambiar manualmente el servidorserver X.X.X.X
para obtener una resolución de DNS.Al final descubrí que IPv6 estaba causando problemas con la resolución de nombre: en cada consulta DNS se consultaba el DNS IPv6 en lugar de los servidores DNS de la compañía IPv4. Después de desactivar IPv6, es necesario
ipconfig /flushdns
que las direcciones previamente consultadas aún no se resuelvan.fuente
Pude resolver el problema de manera simple al eliminar el registro DNS y ejecutar los comandos flushdns y registerdns y eso lo soluciona. La razón es la edad en el DNS en sí. El DNS no eliminó el registro después de que el contrato de arrendamiento haya expirado y no se renovó, lo que no pudo resolver el nombre porque se le otorgó. Espero que te ayude a solucionar tus problemas.
fuente