¿ Que es DNS ? ¿Para que sirven los DNS?

¿ Que es DNS ?

El servidor DNS y su importancia en Internet.

Cuando querés entrar a un sitio web en Internet necesitas la dirección IP del servidor donde está alojada, pero, por lo general, el usuario solo conoce el nombre del dominio (“www.NOMBREDELDOMINIO.com”). Esto es porque es muy difícil recordar la cantidad de números que tiene, como por ejemplo “198.50.182.32”. Esta es, por ejemplo, la forma de entrar al sitio de conectemos.com. Esos números, llamados IP, constituyen la base de la comunicación en Internet. Es por esto que las IP se “traducen” en nombres que podemos recordar, las cuales llamamos “dominios“. Entonces ¿ que es DNS ?, vamos a explicarlo con el ejemplo de nuestros amigos de Conectemos.

Dirección IP: 198.50.182.32

Dominio: www.conectemos.com

El proceso el cual se compone de la traducción de los nombres de los dominios en direcciones numéricas que las computadoras, servidores, smartphone, etc. puedan entender, se lo conoce como resolución de nombres. Este trabajo lo realiza el Domain Name System, o en castellano Sistema de Nombres de Dominio, o simplificado en siglas, DNS.

¿ Que es DNS ?

El Sistema de Nombres de Dominio o DNS es un sistema de nomenclatura jerárquico que se encarga de la administración del espacio de nombres de dominio (Domain Name Space). Su principal función consiste en resolver las peticiones de asignación de nombres. Esta función se puede 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. Por esto, el sistema de nombres de dominio recurre a una red global de servidores DNS, que, a su vez, divide el espacio de nombres en zonas administradas de forma independiente las unas de las otras. Esto habilita 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 que corresponde y esta queda guardada en el DNS como un “resource record”. La base de datos de un servidor DNS se convierte, así, en la recopilación de todos los registros de la zona del espacio de nombres de dominio que ejecuta.

¿ Que es DNS ?

“El Sistema de Nombres de Dominio o DNS es un sistema de nomenclatura jerárquico que se encarga de la administración del espacio de nombres de dominio (Domain Name Space o Domain Name System)”

Que es DNS

La creación del sistema de nombres de dominio en 1983 sustituyó a la técnica anterior de resolución, con tendencia a errores y basado en un archivo local de hosts. Este archivo hosts.txt podes encontrarlo aún hoy en sistemas basados en UNIX en el directorio etc/ y, en computadores Windows, en %SystemRoot%system32driversetc.

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

Peticiones al DNS

Sabiendo lo esencial de que es DNS , veamos ahora su función. Cuando se ingresa la dirección de un sitio web (URL) en el campo de búsqueda del navegador, este realiza una petición al llamado resolver, un componente especial del sistema operativo cuyo rol consiste en almacenar en caché direcciones IP ya solicitadas anteriormente, y brindarlas 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 compara 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”). Esto le permite al navegador del usuario dirigirse al servidor web deseado en Internet. Otra variable consiste en el camino inverso, es decir, en traducir la dirección IP en la dirección de dominio (“reverse lookup”).

DNS y peticiones

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

  • Resolución recursiva: es la que se realiza 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 facilita 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 distingue 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 ?

Esto es diferente a lo que es DNS. Un servidor DNS, también conocido como servidor de nombres, se basa 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 las computadoras que albergan estos programas.

Suele hacerse una división entre servidores DNS primarios y secundarios:

  • Servidor primario, principal o maestro: se denomina a un servidor DNS primario o maestro cuando aloja 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á fabricado de tal forma que cada zona disponga de, al menos, un servidor de nombres primario. Un sistema de este tipo suele ser implementado como cluster 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í sale 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 mano o de tercera mano, este servidor se vuelve secundario o esclavo para esta información. Esta situación se origina 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 alojan de forma temporal en un almacenamiento local (caching) y se proporcionan en 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 aparece un mensaje de error tal como “El servidor DNS no responde” cuando hay problemas de conexión. Esto pasa cuando la conexión con Internet no funciona y no es posible acceder a una página web.

Esperemos que con esta nota haya quedado mas claro la idea de que es DNS y un Servidor DNS.