Cliente DNS : un programa (o un módulo en el programa) que determina la dirección IP de un host por su nombre completo (el punto al final generalmente lo agrega el cliente DNS o está implícitamente implícito, sin embargo, en el caso de usar sufijos de dominio, puede haber diferencias en el comportamiento del cliente al definir un nombre con y sin punto al final).
La función de cliente DNS está integrada en casi cualquier programa diseñado para funcionar en Internet . Sin embargo, la mayoría de los clientes DNS no saben cómo realizar la recursividad por su cuenta. , ya que de lo contrario sus algoritmos tendrían que ser innecesariamente complicados. Además, el uso de la recursividad por parte de los clientes DNS no permitiría la implementación de restricciones de acceso a la red externa y el almacenamiento en caché de DNS.
Para el diagnóstico de DNS, se utilizan programas especializados: nslookup y dig . La versión de Windows de nslookup (como muchos clientes DNS de Windows) es compatible con WINS , lo que puede resultar confuso si los servidores WINS y DNS responden de manera diferente. Algunas versiones de nslookup en Unix también admiten el Servicio de información de red además de DNS , lo que también dificulta los diagnósticos. Al comprobar los servidores DNS integrados en Active Directory, se puede utilizar la utilidad dcdiag [1] .
El servidor DNS que realiza una solicitud de cliente puede operar en uno de tres modos:
En muchas versiones de BIND , las consultas a otros servidores DNS se originaron en el puerto 53 (el puerto en el que se reciben las solicitudes de DNS, tanto TCP como UDP), a diferencia de las aplicaciones cliente que utilizan un puerto de origen aleatorio (fuera del rango no registrado).
El servidor de correo usa un cliente DNS para consultar registros MX , SPF , A (por ejemplo, sendmail usa registros MX en orden ascendente de prioridad, pero si no hay una ruta adecuada, usa el registro A como último intento), Registros PTR (para definiciones de nombres de host). Además, muchas versiones de los servidores de correo usan nombres obtenidos a través de una solicitud de registro PTR para determinar si un nombre dado tiene un registro MX, esto se usa para denegar automáticamente la entrega a servidores que no son de correo (principalmente botnets ).
En el caso general, una configuración es posible cuando el servidor DNS se comporta de manera diferente para diferentes servidores y zonas (por ejemplo, acepta solicitudes recursivas de la red local, solo solicitudes de zonas autorizadas de la red externa, o reenvía solicitudes a otro servidor solo para zonas especificadas).
Las estaciones de trabajo y los servidores de Active Directory utilizan muchos registros DNS SRV para ubicar el controlador de dominio más cercano en un sitio y para actualizar dinámicamente el registro DNS de la estación de trabajo .
La mayoría de los programas que usan funciones DNS no implementan su funcionalidad por sí mismos (a través de sockets ), sino que usan las funciones de cliente DNS proporcionadas por el sistema operativo o usan una biblioteca de cliente preparada. La minoría son en su mayoría utilidades de bajo nivel y software de servidor que necesitan una funcionalidad más específica que la proporcionada por el cliente DNS.