¿Te ha gustado el artículo?
23
¿Te ha gustado el artículo?
23

El servidor DNS y la resolución de nombres en Internet

Cuando se quiere acceder a una página web en Internet se necesita la dirección IP del servidor donde está almacenada, pero, por regla general, el usuario solo conoce el nombre del dominio. La razón no es otra que la dificultad de recordar las series numéricas del tipo 93.184.216.34 que las componen, que son las que, precisamente, constituyen la base de la comunicación en Internet. Es por este motivo por el que las direcciones IP se “traducen” en nombres que podamos recordar, los llamados dominios:

Dirección IP: 93.184.216.34

Dominio: www.ejemplo.es

El proceso de traducción de los nombres de dominio en direcciones numéricas que las máquinas puedan entender es lo que se conoce como resolución de nombres, una labor que realiza el Domain Name System, en castellano Sistema de Nombres de Dominio, conocido por sus siglas DNS.

¿Qué es el DNS?

El Sistema de Nombres de Dominio o DNS es un sistema de nomenclatura jerárquico que se ocupa de la administración del espacio de nombres de dominio (Domain Name Space). Su labor primordial consiste en resolver las peticiones de asignación de nombres. Esta función se podría explicar mediante una comparación con un servicio telefónico de información que dispone de datos de contacto actuales y los facilita cuando alguien los solicita. Para ello, el sistema de nombres de dominio recurre a una red global de servidores DNS, que subdividen el espacio de nombres en zonas administradas de forma independiente las unas de las otras. Esto permite la gestión descentralizada de la información de los dominios.

Cada vez que un usuario registra un dominio, se crea una entrada WHOIS en el registro correspondiente y esta queda almacenada en el DNS como un “resource record”. La base de datos de un servidor DNS se convierte, así, en la compilación de todos los registros de la zona del espacio de nombres de dominio que gestiona.

La creación del sistema de nombres de dominio en 1983 sustituyó al procedimiento anterior de resolución, muy propenso a errores y basado en un archivo local de hosts. Este archivo hosts.txt puede encontrarse aún hoy en sistemas basados en UNIX en el directorio etc/ y, en computadores Windows, en %SystemRoot%\system32\drivers\etc.

El archivo hosts.txt requería el mantenimiento manual y una actualización regular, un esfuerzo que, a medida que Internet iba creciendo de forma exponencial, ya no era posible realizar. Hoy, este archivo se usa exclusivamente para la clasificación de direcciones IP en redes locales. También permite bloquear servidores web desviando automáticamente su dirección hacia el alojamiento local (local host).

Consejo

¿Aún sin dominio? Consigue uno barato con 1&1.

Peticiones al DNS

Cuando se introduce la dirección de una página web (URL) en el campo de búsqueda del navegador, este realiza una petición al llamado resolver, un componente especial del sistema operativo cuya función consiste en almacenar en caché direcciones IP ya solicitadas anteriormente, y proporcionarlas cuando la aplicación cliente (navegador, programa de correo) la solicita. Si la dirección IP solicitada no se encuentra en el caché del resolver, este redirige la petición al servidor DNS que corresponda, que, en general, se trata del servidor DNS del proveedor de Internet. Aquí se coteja la petición con la base de datos del DNS y, si está disponible, se envía la dirección IP correspondiente como respuesta (“forward lookup”). Esta permite al navegador del usuario dirigirse al servidor web deseado en Internet. Otra vía alternativa consiste en el camino inverso, es decir, en traducir la dirección IP en la dirección de dominio (“reverse lookup”).

Si un servidor DNS no puede responder a una petición con la información de que dispone en su base de datos, puede solicitar la información a otro servidor o reenviar la petición al servidor DNS que corresponda. Esta resolución se puede realizar de dos formas:

  • Resolución recursiva: es la que se produce cuando el servidor DNS no puede responder por sí mismo a una petición y toma la información de otro servidor. El resolver transfiere la petición completa a su servidor DNS, que proporciona a su vez la respuesta al resolver con el nombre de dominio, si se ha resuelto.
  • Resolución iterativa: cuando el servidor DNS no puede resolver la petición, envía como respuesta la dirección del siguiente servidor DNS de la jerarquía. El resolver tiene que enviar él mismo una nueva petición y repetir la maniobra hasta que se resuelve el nombre de dominio.

La administración centralizada de la información de los dominios en el DNS se caracteriza por un índice elevado de fiabilidad y flexibilidad. Si la dirección IP de un servidor cambia, el usuario no suele percibir nada, ya que la dirección IP actual para el dominio correspondiente se guarda en la base de datos.

¿Qué es un servidor DNS?

Un servidor DNS, también conocido como servidor de nombres, consiste en un software para servidores que recurre a la base de datos de un DNS para responder a las peticiones que guardan relación con el espacio de nombres de dominio. Como, por regla general, se alojan en hosts dedicados, también se denominan así a los ordenadores que albergan estos programas. Suele hacerse una diferenciación entre servidores DNS primarios y secundarios:

  • Servidor primario, principal o maestro: se denomina a un servidor DNS primario o maestro cuando guarda la información sobre una zona determinada del espacio de nombres de dominio en su propia base de datos.  El sistema de nombres de dominio está construido de tal forma que cada zona disponga de, al menos, un servidor de nombres primario. Un sistema de este tipo suele ser implementado como clúster de servidores donde se almacenan los datos de zona idénticos en un sistema maestro y en varios esclavos, aumentando, gracias a esta redundancia, la seguridad ante caídas y la disponibilidad de un servidor maestro. De aquí procede la denominación de servidores primarios y secundarios que se ha usado.
  • Servidor secundario o esclavo: cuando la información de un servidor de nombres no procede de los archivos de zona propios, sino que son de segunda o de tercera mano, este servidor se convierte en secundario o esclavo para esta información. Esta situación se produce cuando un servidor no puede resolver una petición con su propia base de datos y ha de recurrir a la información disponible en otro servidor de nombres (resolución recursiva). Estos datos del DNS se guardan de forma temporal en un almacenamiento local (caching) y se proporcionan en caso de peticiones futuras. Como es posible que las entradas en el propio archivo de zona hayan cambiado en el ínterin, la información proporcionada por servidores secundarios no se considera segura.

Notificación de errores del DNS

A veces se recibe la notificación de error “El servidor DNS no responde” cuando hay problemas de conexión. Esto sucede cuando la conexión con Internet no funciona y no es posible acceder a una página web.  En este artículo te ayudamos a determinar las posibles causas de este molesto problema y proponemos posibles formas de solucionarlos.

DNS Windows Linux Tiempo de Carga