Qué es un servidor DNS y el servicio DNS

A día de hoy es muy importante saber qué es el DNS y qué es un servidor DNS porque los mismos cimientos de Internet se basan en su correcto funcionamiento. Si tienes páginas web, dominios o correos electrónicos, es más que probable que los técnicos de tu hosting te hayan hablado sobre lo que es DNS en algún momento.

Puesto que es un tema complejo, vamos a explicar qué es el DNS de forma sencilla y con ilustraciones. Así, la próxima vez que tengas que tratar con ello sabrás cómo defenderte y cuál es el trasfondo técnico que hay detrás de las gestiones con este sistema.

Lo primero que hay que tener claro es que DNS denomina tanto a un protocolo de Internet como a un tipo de servicio que se ejecuta en los servidores de Internet de todo el mundo. En este artículo dedicaremos una sección a explicarte qué es DNS como protocolo y otra a aprender qué es un servidor DNS, entre otras cosas.

Pero antes de meternos en materia,vamos a explicar un fundamento del funcionamiento de Internet: los ordenadores no entienden de nombres, solo de números.

¿Qué significa esto? Pues que los ordenadores se reconocen entre sí gracias a una dirección numérica conocida como dirección IP. Un ejemplo de este tipo de direcciones es la siguiente: 10.0.3.47. Hay algunos formatos más complicados todavía, como este que corresponde a las direcciones denominadas IPv6: fe80::14ff:261:bb88:a960%en0.

Qué es el servicio DNS - Dirección IP

Cada vez que conectamos un nuevo dispositivo a Internet a éste se le asigna una nueva IP. Es indiferente si es un servidor, ordenador portátil, teléfono, videoconsola o nevera inteligente: la IP es un requisito imprescindible para la conectividad, lo que hace muy importante el uso del sistema DNS En la mayoría de nuestros hogares, todos los dispositivos comparten la dirección IP del router.

A los humanos nos cuesta más memorizar patrones de números que nombres. A las máquinas no, pero sería un poco raro promocionar nuestra página web usando esas secuencias numéricas. Para solucionar este problema llegó el sistema DNS, un protocolo creado en los mismos albores de Internet. A continuación vamos a explicar qué es DNS y cómo va a ayudarnos a evitar tener que memorizar estos números.

¿Qué es el DNS?

El sistema DNS traduce los nombres de nuestros dominios, —que son fáciles de recordar para los humanos— a direcciones numéricas (direcciones IP) —que son requeridas por las máquinas para trabajar en Internet—. ¡Ya está! Esta es la explicación más fácil y veraz que podemos dar sobre qué es el DNS: un sistema para que los ordenadores conviertan el nombre de nuestro dominio en una serie de números que les permiten localizar sus servicios en internet.

¿Qué es DNS? un protocolo cuyas siglas son Domain Name System y permite traducir nombres de dominio a direcciones IP.

Pero vamos a acompañar la explicación con una analogía del mundo real para facilitar su comprensión. Imaginemos que Internet es un enorme conjunto de calles electrónicas que se cruzan enrevesadamente entre ellas.

En esta maraña de calles, para encontrar un domicilio en particular necesitaremos tener su dirección si no queremos perdernos, para lo que en la vida real consultaríamos un mapa. Eso es lo que es el DNS: una guía que traduce un dominio (el domicilio que buscamos) en una dirección numérica (la calle y el número en donde lo encontraremos).

Los ordenadores no saben encontrar un nombre en Internet sin su dirección numérica, de la misma forma que nosotros no podremos ubicar una casa o establecimiento sin saber su calle y su número. Cualquier tipo de conexión a través de redes que use un nombre va a requerir hacer, como mínimo, una consulta DNS.

No obstante, para que esto funcione en Internet es necesario que dicha guía sea veraz y esté actualizada. En otras palabras, la tecnología que se encargue de usar esta guía tendría que ser distribuida. ¿Como se consigue esto? Para saberlo vamos a empezar explicando qué es un servidor DNS.

¿Qué es un servidor DNS?

Un servidor DNS es un ordenador conectado a Internet que guarda en su interior una base de datos local que almacena nombres de dominio junto a las direcciones IP asociadas a cada uno de ellos.

Es importante fijarse en que hemos dicho “direcciones IP”, en plural, porque un mismo dominio puede tener varias direcciones numéricas asociadas a cada uno de los servicios que ofrece. Ejemplos de estos servicios pueden ser el correo electrónico o las páginas web: cualquiera de ellos pueden tener varias IP que no tienen por qué ser iguales.

A cada una de estas direcciones IP asociadas a un dominio se las denomina “registro DNS”, que es quizás el concepto que más coloquialmente se relaciona con lo que es DNS. La herramienta dnslookup.es te permite consultar los registros DNS de un dominio.

dnslookup.es ofrece mucha información sobre qué es DNS y los registros DNS de un dominio en concreto

A través de Internet, muchos servidores DNS mantienen incontables registros DNS de los dominios que controlan. ¿A qué nos referimos con esto de los dominios que controlan? Pues a que un dominio siempre va a tener un conjunto de servidores que van a ser la autoridad sobre su resolución de nombres. Esto es lo que conocemos coloquialmente como “los DNS del dominio”.

Esto es así porque, de lo contrario, cualquier servidor DNS podría enviar una petición de resolución a una dirección numérica que no es la nuestra. Por ello, la única autoridad competente para resolver las direcciones de uno de nuestros dominios van a ser los servidores DNS que establezcamos en la configuración de nuestro registrador de dominios.

La expresión “cambiar los DNSes conocida por todos aquellos que trabajamos con proveedores de hosting o de dominios. Ahora que ya hemos explicado un poco el tema, te será más fácil comprender que cuando cambiamos los DNS estamos diciéndole al mundo cuáles son los servidores DNS que tienen autoridad sobre nuestro dominio (hay excepciones en este punto, pero al tratarse de un nivel de complejidad superior, las dejaremos para un artículo más avanzado).

Cabe destacar que podemos diferenciar dos tipos de servidores DNS en función de su autoridad sobre un dominio: servidores DNS autoritativos y servidores no autoritativos o recursivos.

¿Qué es un servidor DNS autoritativo?

Un servidor DNS autoritativo es aquel que tiene una respuesta en su base de datos local para un dominio sobre el que se le pregunte. Éste es el tipo de servidores DNS con el que más habitualmente vas a trabajar con tus proveedores de dominios y de hosting.

Es en estos proveedores donde se crean los registros DNS que después conformarán el contenido de lo que es un servidor DNS. Esos registros podrán después usarse para dar respuestas autoritativas a los clientes que pregunten sobre las direcciones IP asociadas a alguno de los nombres previamente guardados.

Un tipo especial de servidor DNS autoritativo es el conocido como servidor DNS raíz (o “root DNS server”). ¿Qué es un servidor DNS raíz? Pues son grandes grupos de servidores repartidos por todo el mundo y mantenidos por organizaciones gubernamentales u otros comités y que se consideran servidores autoritativos para un tipo de dominios.

Esto significa que los servidores raíz son autoritativos para los dominios .com, .net, .es, .org, etcétera. Son los cimientos de Internet y de ellos depende el correcto funcionamiento de los dominios. Como consumidor nunca tendrás que tratar directamente con ellos, pues son los registradores de dominios los que ejecutan todas las gestiones que puedan ser necesarias.

¿Qué es un servidor DNS no autoritativo o recursivo?

Puede parecer rara la existencia de un tipo de servidor que no tiene autoridad sobre un dominio, pero su uso es imprescindible para la actividad diaria de Internet.

Cuando le preguntas a un servidor DNS por un nombre, se pueden dar dos situaciones:

  1. El servidor tiene ese nombre almacenado en su base de datos local, con lo que te dará una respuesta al mismo.
  2. El servidor no tiene ese nombre almacenado en su base de datos local, con lo que se abren dos posibilidades: usar la recursión o devolver un fallo.

Los servidores no autoritativos o servidores con recursión son los que pasan a la acción en la segunda situación. Entonces, ¿qué es un servidor DNS con recursión y que significa este término?

Un servidor con recursión es aquél que cuando no encuentra una respuesta en su base de datos local para un dominio intenta consultarlo con otros servidores DNS para tratar de resolver la petición que se le hace. De no encontrarlo, seguirá preguntando a más servidores hasta que encuentre una respuesta autoritativa o hasta que se supere un número definido de recursiones.

Así, puede darse el caso de que consultes a un servidor DNS por el nombre de un dominio, éste no lo sepa y le pregunte a otro, que le dará la respuesta al primero antes de enviártela a ti. Esto es lo que, de forma muy simplificada, se conoce como recursión DNS.

Tras consultar a máquinas externas, muchos servidores guardan los datos obtenidos en una caché DNS para que, en las próximas peticiones para ese nombre, no tengan que molestarse en consultarlo de nuevo. Esto es lo que se conoce como caché DNS y su tiempo de vida puede venir definido por un campo llamado TTL (time to live) que especificamos en la configuración de nuestros registros DNS.

¿Cómo funciona una petición DNS?

Repasando un poco: hemos hablado de qué es DNS, qué es un servidor DNS autoritativo y qué es un servidor DNS no autoritativo o con recursión. Ahora bien, ¿cómo funciona una petición DNS?, ¿cómo interactúan entre ellos todos estos elementos?

Cada vez que usas un dispositivo para acceder a un servicio de Internet —como consultar el correo electrónico o navegar por páginas web— estás haciendo centenares de consultas DNS a un servidor que tienes guardado en tu configuración de red.

Muchas veces esta configuración no es algo que hayas establecido directamente, si no que te viene dada por tu router, la red de tu empresa, de tu operadora móvil, etcétera. No obstante, si fuese necesario, puedes cambiar los DNS de tus dispositivos para usar otros que sean más rápidos o te convengan más. Esto es particularmente útil cuando las operadoras bloquean páginas web a través de DNS (cosa que se ha dado en varios países donde los gobiernos pretenden cerrar secciones de Internet).

Sabiendo esto, vamos a analizar cómo funciona una petición DNS con un ejemplo. Imagina que quieres acceder a esta página web: www.dnslookup.es.

Esta imagen ilustra, paso por paso, las acciones necesarias para realizar una consulta DNS. Nótese que el "DNS autoritativo" puede no ser el primer DNS a consultar, o que la consulta necesite realizar varias peticiones a distintos DNS (por ejemplo: a un servidor raíz y otro servidor autoritativo)

Cuando escribes el dominio en el navegador, lo primero que sucede es que el ordenador se da cuenta de que es un nombre y no una dirección numérica. Al indicarle a tu dispositivo que quieres visitar esa página web, éste no sabe cómo acceder. En primer lugar, necesita traducir ese nombre a una dirección numérica que le indique a qué red ha de acceder.

Para ello, necesitarás tener algún servidor al que puedas preguntar por un dominio y que se encargue de buscar la IP por toda la red DNS. Recordemos que esta definición encaja con lo que es un servidor DNS no autoritativo o con recursión. Estos son los servidores DNS configurados en nuestra red.

Una vez le preguntes a tu servidor DNS por el dominio, éste revisará si tiene almacenado ese nombre en la base de datos local. Puesto que ya hemos aclarado que se trata de un servidor DNS no autoritativo, no va a ser el caso. Tendrá que revisar si tiene la consulta en la caché DNS y, de ser así, te dará las direcciones numéricas asociadas a la web a la que quieres acceder.

Si no la tiene, comenzará la recursión para intentar localizar el dominio. Para ello, tendrá que preguntar a los servidores autoritativos de cada parte del dominio hasta llegar al final de la cadena de jerarquía DNS. ¿A qué nos referimos con “jerarquía DNS”?

Para responder a esto has de entender que los nombres de Internet están formados de palabras separadas por puntos “.” que finalizan en una extensión de dominio conocida (como “.es”, “.com”, etc.) y los segmentan en partes jerárquicas.

Esta imagen representa un árbol DNS donde se puede ver cómo el nivel superior (".") está compuesto por las palabras situadas "más a la derecha" del dominio (en este caso, ".es").

Para cada una de estas partes habrá que consultar a un servidor de autoridad que pueda contestar a tu petición. ¿Cuáles son estos servidores? Para dar con ellos hay que separar las partes del dominio y comenzar a consultar de derecha a izquierda, pues la palabra de más a la derecha es la que más peso tiene en la jerarquía.

Volvamos al ejemplo de “www.dnslookup.es”. Aquí hay tres partes: “www”, “dnslookup” y “es”. Empezamos de derecha a izquierda y seguimos este orden.

El primer paso es preguntarle a un servidor DNS raíz (antes ya hemos hablado de qué es un DNS raíz). En concreto, hay que consultar al grupo de servidores que están asociados a los dominios .es (regulados por la organización gubernamental nic.es). Estos servidores nos indicarán los DNS de autoridad para “dnslookup.es”.

Acto seguido, se consultará a dichos servidores de autoridad la dirección IP para “www.dnslookup.es, de modo que devolverán el número asociado a dicha IP. Con este valor, el ordenador podrá comunicarse con la máquina remota y finalmente conectarse.

Como ves, lo que es el DNS está compuesto de un montón de partes independientes que colaboran para sentar las bases de la comunicación por Internet. DNS es un protocolo complejo que ha madurado tras varias décadas y que es altamente laborioso de mantener y supervisar. Por esta razón son las empresas de hosting, las entidades gubernamentales y los registradores de dominios los encargados de mantener la infraestructura o comunicarse con las autoridades pertinentes.

Chuleta / glosario para todo lo que es DNS

Para quien no está familiarizado con esta tecnología, puede ser difícil comprender y memorizar todo lo relacionado con lo que es DNS y con lo que es un servidor DNS.  Por eso, en esta última sección del artículo vamos a crear una pequeña chuleta. Te vendrá muy bien cuando tengas que tratar con el personal técnico de tu empresa de hosting o de dominios.

Nombre Descripción
Servidor DNS del dominio Los servidores DNS autoritativos del dominio
Cambiar los DNS Modificar los servidores autoritativos de tu dominio. Lo haces con ayuda de tu registrador de dominios (por norma general te ofrece un panel para hacerlo).
Zona DNS Una zona DNS es la base de datos local que está almacenada en un servidor DNS. Guarda todos los registros del dominio. Tu hosting debería ofrecerte un panel para gestionar tus zonas DNS.
Registro DNS Un registro que asocia un nombre de dominio o subdominio con una o varias IPs.
Registro “A” Un registro que asocia un dominio o subdominio con una IP. Suele utilizarse  para apuntar tu página web.
Registro “AAAA” Un registro que asocia un dominio o subdominio con una dirección IPv6.
Registro “NS” Los servidores autoritativos de tu dominio.
Registro “MX” Los nombres de los servidores encargados de entregar el correo dirigido a tu dominio.
Registro “TXT” Registros especiales que permiten guardar textos especiales. Suelen usarse para validar tu dominio con Google o Facebook y para añadir validación de correo electrónico.
Registro “SPF” Es un tipo especial de registro TXT que permite especificar quién puede enviar correo en nombre de tu dominio. Consulta con tu proveedor de hosting si necesitas implementarlo.
Registro “DKIM” Un tipo especial de registro TXT que sirve para añadir una firma a tus correos y ayudar a prevenir el SPAM. Consulta con tu proveedor de hosting si necesitas implementarlo.
Registro “CNAME” Un registro CNAME es un registro DNS especial que sirve para establecer referencias. Puedes tener, por ejemplo, un registro “www” que apunte al mismo sitio que tu dominio.
DNSSEC Una extensión del protocolo que es DNS para añadir una capa extra de seguridad. Es complejo de configurar y requiere la intervención de tu registrador de dominios y tu empresa de hosting.