Un servidor DNS proporciona la resolución de nombres mediante Berkeley Internet Domain Name (BIND), o el demonio de nombres, que a menudo se denomina “named” (pronunciado “neimdi”). BIND fue desarrollado originalmente por cuatro estudiantes de la Universidad de California en Berkeley a principios de la década de los ochenta. Como se muestra en la ilustración, el formato del mensaje DNS que utiliza BIND es el formato DNS más utilizado en Internet.
El servidor DNS almacena diferentes tipos de registros de recursos utilizados para resolver nombres. Estos registros contienen el nombre, la dirección y el tipo de registro.
Algunos de estos tipos de registros son:
- A: una dirección de dispositivo final
- NS: un servidor de nombre autoritativo
- CNAME: el nombre canónico (o el nombre de dominio completamente calificado) para un alias; se utiliza cuando varios servicios tienen una dirección de red única, pero cada servicio tiene su propia entrada en el DNS.
- MX: registro de intercambio de correos; asigna un nombre de dominio a una lista de servidores de intercambio de correo para ese dominio.
Cuando un cliente realiza una consulta, el proceso BIND del servidor observa primero sus propios registros para resolver el nombre. Si no puede resolverlo con los registros almacenados, contacta a otros servidores para hacerlo.
La solicitud puede pasar a lo largo de cierta cantidad de servidores, lo cual puede tomar más tiempo y consumir banda ancha. Una vez que se encuentra una coincidencia y se la devuelve al servidor solicitante original, este almacena temporalmente en la memoria caché la dirección numerada que coincide con el nombre.
Si vuelve a solicitarse ese mismo nombre, el primer servidor puede regresar la dirección utilizando el valor almacenado en el caché de nombres. El almacenamiento en caché reduce el tráfico de la red de datos de consultas DNS y las cargas de trabajo de los servidores más altos de la jerarquía. El servicio del cliente DNS en los equipos Windows optimiza el rendimiento de la resolución de nombres DNS al almacenar también los nombres resueltos previamente en la memoria. El comando ipconfig /displaydns muestra todas las entradas DNS en caché en un sistema de computación Windows.