¿Qué es el DNS? Un vistazo al Domain Name System

El Domain Name System forma parte del día a día de nuestra navegación por Internet sin que siquiera nos demos cuenta. Con la ayuda del DNS, los nombres de dominio que los usuarios escriben en el navegador se traducen en direcciones IP de servidor con las que el ordenador puede trabajar.

¿Qué es el DNS?

Las siglas DNS significan “Domain Name System”. Con la ayuda del DNS, los nombres de dominio que son fácilmente identificables por el ser humano se transforman en direcciones IP del servidor. En cuanto escribes en tu navegador el dominio que quieres, como por ejemplo www.ionos.es, este busca el nombre del dominio en varios servidores DNS. Se suele empezar a buscar en el servidor DNS del router. A partir de ahí, se busca el nombre de dominio deseado en otros servidores DNS hasta encontrarlo.

Una vez tu navegador recibe la dirección IP correspondiente, puede finalmente establecer una conexión con la página web deseada. Así pues, el Domain Name System permite comunicarse en una red sin conocer las respectivas direcciones IP.

¿Cómo funciona el Domain Name System?

El Domain Name System se conoce a menudo como la “guía telefónica de Internet”. Esto no es una casualidad, sino que está directamente relacionado con el modo de funcionamiento del DNS, que las direcciones IP correspondientes a un determinado nombre de dominio. Este proceso se denomina resolución de nombres DNS y puede descomponerse en varios pasos:

  1. Introduce cualquier dirección web en el buscador de tu navegador.
  2. La consulta se remite a un DNS-Resolver, que suele estar gestionado por tu proveedor de servicios de Internet.
  3. El DNS resolver reenvía la consulta a un servidor DNS que, a su vez, es remitida a otro servidor DNS.
  4. El DNS resolver redirige la consulta a diferentes servidores DNS hasta que encuentra el nombre de la dirección web.
  5. El servidor final busca en su registro hasta que encuentra la dirección IP correspondiente y la transmite al DNS resolver.
  6. El DNS resolver proporciona la dirección IP al navegador web y este accede a la página web correspondiente.

En la resolución de nombres intervienen varios componentes, como el DNS resolver y los diferentes servidores de nombres. A grandes rasgos, el DNS resolver es el programa que controla el proceso de resolución de nombres y obtiene la información necesaria del Domain Name System. La herramienta de línea de comandos nslookup puede resultarte útil para comprobar si la resolución de nombres funciona correctamente.

¿Qué servidores se utilizan para el DNS?

Se puede distinguir fácilmente entre los diferentes servidores de nombres que juegan un papel en la resolución de nombres:

  • Root server DNS: los servidores root son servidores de nombres autoritativos que normalmente retornan una lista de otros servidores de nombres autoritativos para un determinado TLD.
  • Servidor de nombres TLD: el servidor TLD responde en función del Top-Level Domain correspondiente. Si buscas la página www.ionos.es, responderá un servidor de nombres TLD para la extensión de dominio .es.
  • Servidores de nombres autoritativos: los servidores de nombres autoritativos son responsables de una zona DNS, es decir, de un dominio o subdominio concreto. La información que proporcionan los servidores de nombres autoritativos es vinculante. Se distingue entre DNS secundario y primario.
  • Servidores de nombres no autoritativos: los servidores de nombres no autoritativos obtienen su información de otros servidores de nombres que sí son autoritativos.
Consejo

También puede ocurrir que un servidor DNS no responda. En ese caso, deberías probar, por ejemplo, a cambiar de navegador, desactivar temporalmente el cortafuegos (firewall) o reiniciar tu router.

Críticas al Domain Name System

Aunque el DNS desempeña un papel importante en el tráfico diario de la red, el sistema también tiene vulnerabilidades. Uno de los mayores problemas del DNS son sus deficiencias de seguridad. Dado que los servidores DNS almacenan las direcciones IP pertenecientes a un dominio sin cifrar y básicamente las pasan a cualquiera que las solicite, son el objetivo ideal para los ciberdelincuentes.

DNS leaks son también un problema al que se enfrentan los usuarios que quieren mantener su navegación privada. En caso de haber un DNS leak, en lugar de enviar una solicitud de DNS a través del VPN, se envía sin protección a un servidor de nombres.

El DNS también puede causar problemas a la hora de tener un Internet libre y sin censura. Recientemente, por ejemplo, el Ministerio de Digitalización ruso ordenó que todos los servicios de Internet disponibles en el país se dirigieran a través de servidores DNS rusos, bloqueando así las webs extranjeras. Esto permite a los gobiernos autoritarios controlar todo el tráfico de la red. También se puede censurar a través del DNS, por ejemplo, si se bloquea un determinado TLD. Los proveedores de Internet también pueden bloquear el acceso a determinadas páginas web en cumplimiento con la legislación de censura del gobierno.

Un vistazo a las extensiones del DNS

Hay una serie de extensiones DNS que pueden utilizarse para dotar al Domain Name System de funciones adicionales:

  • DDNS o DynDNS: DynDNS o DNS dinámico tiene por objeto garantizar que los dominios del Domain Name System se actualicen automáticamente y de forma periódica. Tan pronto como un ordenador cambie su dirección IP, este cambio debe ser registrado en el registro DNS correspondiente.
  • Extended DNS: varias extensiones de protocolo del DNS se han combinado en el extended DNS. La extensión es especialmente importante para el transporte de paquetes UDP.
  • DNSSEC: DNSSEC ofrece una mejora en términos de seguridad. El objetivo de DNSSEC es evitar que los hackers interfieran en la resolución de nombres del DNS. Para ello, la extensión utiliza un cifrado asimétrico.

Peligros de las consultas DNS

Para la seguridad de la red, un DNS anticuado o mal mantenido puede ser problemático. Una estrategia de ataque muy popular es el DNS hijacking. En este caso, el servidor de nombres es controlado por los hackers, que redirigen a los usuarios a una página que no querían visitar originalmente. En combinación con el pharming o phishing, los atacantes suelen intentar capturar datos sensibles. También es posible que las páginas a los usuarios son dirigidos estén destinadas a infectar sus ordenadores con software malicioso.

Una consulta DNS también corre el peligro de verse afectada por DNS spoofing. En ese caso no se controla todo el servidor de nombres, sino que solo se manipula la resolución de nombres. Esto significa que no se obtiene la dirección IP correcta, sino que el registro DNS ha sido alterado para devolver una dirección IP controlada por los atacantes. La página a la que se llega parece legítima a primera vista. Lo único que le falta a dicha página es un certificado de seguridad.

Consultas DNS: recursivas e iterativas

Diferentes tipos de consultas DNS garantizan que se recupere la información correcta durante la resolución de nombres:

  • Consulta recursiva: el ordenador solicita una dirección IP o la confirmación de que el servidor de nombres no conoce dicha dirección IP.
  • Consulta iterativa: las consultas iterativas son las más frecuentes. Aquí, el ordenador solicita al servidor DNS la mejor respuesta posible. Si el servidor no conoce la dirección correspondiente, este remite a la persona que realiza la solicitud a los servidores de nombres autoritativos.

Registros DNS: A, CNAME, TXT y MX

Los DNS records son importantes entradas de información para un servidor DNS. Indican a qué dirección de destino pertenece un determinado nombre de dominio. Se distinguen diferentes tipos de registros DNS:

  • Registros A: los registros A son los registros DNS más comunes. Asignan una dirección IPv4 a un dominio y se utilizan para asignar un dominio a un servidor web.
  • Registros CNAME: este tipo de registro se utiliza para asignar un subdominio a un dominio principal.
  • Registros TXT: los registros TXT pueden utilizarse para asignar cualquier texto a un dominio.
  • Registros MX: los registros MX se utilizan para asignar cualquier dominio a un servicio de correo electrónico.