¿Qué algoritmo usa Windows para decidir qué servidor DNS consultará para resolver nombres?
Digamos que tengo varias interfaces, todas activas, algunas sin servidor DNS especificado, algunas indicadas para que lo determinen automáticamente y otras con esto especificado manualmente (en la interfaz ipv4 Y la interfaz ipv6).
Estoy pidiendo una respuesta a esta pregunta general con la esperanza de saber cómo resolver un problema más específico en Windows Vista: tengo dos interfaces, una de menor métrica y un servidor DNS especificado manualmente. nslookup usa ESTE servidor DNS y resuelve los nombres correctamente. Sin embargo, todas las demás aplicaciones no resuelven el nombre a menos que especifique manualmente un servidor DNS para la otra interfaz, que luego utilizan las aplicaciones. nslookup también usa el servidor DNS especificado para esta otra interfaz una vez que se especifica.
Gracias
fuente
En Windows 10 (y Windows Server 2016) debe actualizar la métrica de cada interfaz en el orden que desee.
Referencias
Utilicé 10 para mi LAN, 20 para WLAN y 100 para interfaces VPN (prefiero DNS local en el trabajo, esto puede ser inverso para otros). Recuerde menor métrica = mayor prioridad .
Consulte este artículo en Soporte de Microsoft para obtener una explicación de la función Métrica automática para rutas IPv4 .
fuente
Esta página describe el algoritmo utilizado por Windows para realizar consultas DNS. No es lo suficientemente profundo como para darle todas las respuestas que está buscando, pero en algún momento con un sniffer y este artículo debería ser todo lo que necesita para determinar qué está sucediendo en su situación específica.
fuente
Tuve exactamente el mismo problema. He pasado un día tratando de resolverlo. Ahora lo sé y funciona a las mil maravillas.
Si tiene varias tarjetas de red y si especifica el servidor DNS en cada una de ellas. ¿Sabes qué servidor DNS se utilizará por fin?
Bueno, puedes verificarlo a través de la práctica.
Entonces ves el servidor que tu PC realmente usa
La pregunta es: de qué depende qué ventanas del servidor DNS eligen usar y cómo podemos cambiarlo.
Lo necesitamos especialmente cuando usamos clientes VPN.
La respuesta de qwerty2010 es correcta y correcta. Pero puede usarlo SOLO cuando tenga NIC en el panel de control - centro de redes y recursos compartidos - cambiar la configuración del adaptador - lista de nics
Solo si ve el nic que es responsable de su cliente VPN, puede usar una forma gráfica para señalar a Windows qué servidor dns (que se especifica en un nic particular) le gustaría usar.
Por lo tanto, vaya al Centro de redes y recursos compartidos -> Cambiar la configuración del adaptador -> Avanzado -> Configuración avanzada -> y suba el nic con el DNS que desea USAR. (ARRIBA necesitas levantarlo).
Sin embargo, si, por ejemplo, usa el cliente Shrew vpn, no tendrá ninguna nics.
Qué haces.
Abres registro.
Y mira en las subcarpetas 0000, 0001, etc., la carpeta con
multa. Luego copia al portapapeles
Ahora te vas
y se abre
key = Bind
. Verás la lista asíTodo lo que tienes que hacer es llegar a la cima
Eso es todo. No hay necesidad de reiniciar.
Ahora sus ventanas usarán el DNS especificado en shrew vpn nic cuando use la conexión vpn.
fuente
Como esto podría ayudarlo a usted u otros, puede deshabilitar el uso de Windows Round-Robin de los DNS enumerados para hacer que el uso de DNS sea más predecible. Intente configurar el
RoundRobin=0
en laHKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS\Parameters
( referencia ) para desactivar el dns round-robing.También hay un "tiempo de espera" para rotar los servidores, también puede intentar establecerlo en cero :
fuente
No decide al azar. Estás conectado a un enrutador que obtiene IP de una compañía que tiene servidores DNS. Reciben su solicitud a menos que modifique la IP manualmente a otro DNS, por ejemplo: OpenDns . O tal vez decida tener sus propios servidores DNS. Eso tambien funciona. Simplemente ingrese las direcciones IP en el centro de red y todo debería estar bien. Y sí, tendrá que configurarlos manualmente.
También puede ajustar un archivo
C:\Windows\System32
llamado "hosts" sin extensión. Le permite redirigir las solicitudes de URL en lugar de enviarlas al DNS estándar. A un servidor local (que debe estar ejecutándose y escuchando el puerto 80)fuente