DNS (Sistema de Nombres de Dominio): Qué es, cómo funciona y RFCs clave
DNS: qué es, cómo funciona y RFCs clave — guía clara sobre resolución de nombres, arquitectura, seguridad y RFCs (1034, 1035) para administradores y desarrolladores web.
El Sistema de Nombres de Dominio (DNS) es un sistema utilizado para convertir el nombre de host de un ordenador en una dirección IP en Internet. Por ejemplo, si un ordenador necesita comunicarse con el servidor web example.net, su ordenador necesita la dirección IP del servidor web example.net. El trabajo del DNS es convertir el nombre de host en la dirección IP del servidor web. A veces se le llama la guía telefónica de Internet porque convierte el nombre de un sitio web que la gente conoce, en un número que Internet utiliza realmente.
El DNS se define mediante documentos de solicitud de comentarios (RFC). Se trata de documentos técnicos sobre redes informáticas. El DNS se define principalmente en los documentos RFC 1034 y RFC 1035. Hay RFC posteriores que definen cambios en el sistema.
Cómo funciona el DNS (visión general)
Cuando una aplicación necesita resolver un nombre (por ejemplo, abrir example.net en un navegador), se siguen estos pasos básicos:
- El programa consulta al resolver local (stub resolver) del sistema operativo.
- Si el resolver local no tiene la respuesta en su caché, envía la consulta a un resolver recursivo (por ejemplo el del proveedor de Internet o un servicio público como 1.1.1.1 o 8.8.8.8).
- El resolver recursivo puede preguntar a los servidores raíz, luego a los servidores de los TLD (como .net), y finalmente al servidor autoritativo del dominio para obtener el registro solicitado.
- La respuesta vuelve al resolver recursivo y éste la almacena en caché durante un periodo definido por el TTL (Time To Live). Luego el resolver responde al stub resolver y, por último, la aplicación recibe la dirección IP.
En la práctica existen consultas recursivas (el resolver hace todo el trabajo) y iterativas (cada servidor responde con la referencia al siguiente servidor autoritativo). El DNS es jerárquico y está distribuido: los dominios se delegan mediante registros NS hacia servidores autoritativos.
Registros DNS comunes
- A: asocia un nombre de host a una dirección IPv4.
- AAAA: asocia un nombre de host a una dirección IPv6.
- CNAME: alias que apunta a otro nombre canónico.
- MX: indica los servidores de correo para un dominio.
- NS: indica los servidores autoritativos de una zona.
- SOA: inicio de autoridad; contiene metadatos de la zona (serial, refresco, etc.).
- PTR: resolución inversa (IP → nombre) en zonas PTR.
- TXT: textos arbitrarios, usados por SPF, DKIM, verificación de servicios, etc.
- SRV: ubica servicios (protocolo/puerto) para aplicaciones específicas.
Cada registro tiene un TTL que controla cuánto tiempo puede permanecer en caché la respuesta antes de solicitarse de nuevo al servidor autoritativo.
Componentes y mecanismos operativos
- Servidores raíz: hay 13 identificadores lógicos (A–M) de servidores raíz; en la práctica se usan muchas instancias mediante anycast.
- Delegación: los dominios de nivel superior (TLD) delegan a los servidores NS del dominio. La delegación se basa en registros NS y, para mayor seguridad, en registros DS relacionados con DNSSEC.
- Cacheo: optimiza rendimiento y reduce tráfico. El TTL controla su duración.
- Actualizaciones dinámicas: permiten modificar zonas en tiempo real (por ejemplo, DHCP actualizando registros DNS), definido por RFCs como RFC 2136.
Seguridad y privacidad
- DNSSEC: añade firma criptográfica a las respuestas DNS para proteger la integridad y autenticidad de los datos (registros RRSIG, DNSKEY, DS). Las especificaciones modernas se recogen en la familia RFC 4033–4035 y otros documentos relacionados.
- Encriptación del transporte: protocolos como DNS over TLS (DoT, RFC 7858) y DNS over HTTPS (DoH, RFC 8484) cifran las consultas entre el cliente y el resolver para mejorar la privacidad y evitar escuchas pasivas.
- Ataques comunes: envenenamiento de caché (cache poisoning), suplantación (spoofing), amplificación DDoS mediante consultas UDP a servidores abiertos. Mitigaciones incluyen DNSSEC, restricciones de acceso a resolvers recursivos y limitación de tasa.
- Minimización de QNAME: prácticas para reducir exposición de nombres completos al consultar servidores intermedios, mejorando la privacidad.
RFCs clave y documentos importantes
El DNS tiene una larga historia de especificaciones. Algunos RFCs relevantes son:
- RFC 1034 y RFC 1035: definiciones originales del DNS (conceptos y especificaciones técnicas).
- RFC 2136: actualizaciones dinámicas del DNS (Dynamic Updates).
- RFC 2181: aclaraciones y detalles operativos sobre el DNS.
- RFC 2308: caching negativo (cómo manejar respuestas NXDOMAIN).
- RFC 2782: registro SRV para localización de servicios.
- RFC 4033–4035: especificaciones modernas de DNSSEC (firma y validación).
- RFC 7858: DNS over TLS (cifrado del transporte de consultas DNS).
- RFC 8484: DNS over HTTPS (consulta DNS a través de HTTPS).
Además de estos, existen muchos otros RFCs y documentos que tratan aspectos operativos, extensiones y mejores prácticas del DNS.
Buenas prácticas y recomendaciones
- Usar resolvers de confianza y, cuando sea posible, encriptar las consultas (DoT/DoH).
- Habilitar DNSSEC en las zonas públicas para mejorar la autenticidad de las respuestas.
- Configurar TTL adecuados: TTL muy corto aumenta la carga y la latencia; TTL muy largo dificulta cambios rápidos.
- Evitar exponer resolvers recursivos abiertos que puedan ser utilizados para ataques de amplificación.
- Mantener actualizados los servidores DNS y seguir las recomendaciones de los proveedores y de la comunidad operativa.
El DNS es un componente fundamental de la red que combina diseño distribuido, rendimiento mediante caché y crecientes requisitos de seguridad y privacidad. Comprender su funcionamiento básico, los tipos de registros y las defensas frente a amenazas ayuda a administrar dominios y redes de forma segura y eficiente.
Estructura
Los nombres de dominio se componen de una o varias partes, o etiquetas que se unen y se mantienen separadas por puntos, como www.example.com.
- La etiqueta de la derecha es el dominio de primer nivel o TLD. Por ejemplo, el dominio de primer nivel de
www.example.comescom. - La siguiente es la subsección (o subdominio, como es la palabra adecuada) del TLD. En
ejemplo.comesejemplo. - El más a la izquierda es el
wwwque es un subdominio deejemplo. Elwwwsignifica que el sitio forma parte de la World Wide Web (NO es lo mismo que Internet ) - Cada etiqueta puede tener 63 letras/números (caracteres) y un nombre de dominio no puede tener más de 253 caracteres.
Proceso de búsqueda
Imaginemos que un PC llamado PC1 necesita conectarse a un servidor llamado Servidor1. Los siguientes pasos describen el proceso básico de búsqueda de DNS.
- PC1 envía una consulta DNS al servidor DNS. Esta consulta pide la dirección IP del Servidor1.
- El servidor DNS envía una respuesta DNS a PC1 que contiene la dirección IP de Server1.
- El PC1 puede ahora enviar un paquete IP a la dirección IP utilizada por el Servidor1.
Preguntas y respuestas
P: ¿Qué es el Sistema de Nombres de Dominio (DNS)?
R: El Sistema de Nombres de Dominio (DNS) es un sistema utilizado para convertir el nombre de host de un ordenador en una dirección IP en Internet.
P: ¿Por qué es importante el DNS?
R: El DNS es importante porque convierte el nombre de un sitio web que la gente conoce en un número que Internet utiliza realmente.
P: ¿Cuál es el trabajo del DNS?
R: El trabajo del DNS es convertir el nombre del host en la dirección IP del servidor web.
P: ¿Qué es RFC en DNS?
R: RFC es Request for Comments, que son documentos técnicos sobre redes informáticas.
P: ¿Qué documentos definen el DNS?
R: El DNS se define principalmente en los documentos RFC 1034 y RFC 1035.
P: ¿Existen RFC posteriores sobre cambios en el sistema DNS?
R: Sí, existen RFC posteriores que definen cambios en el sistema DNS.
P: ¿Cómo se denomina a veces el DNS?
R: A veces se llama al DNS la guía telefónica de Internet.
Buscar dentro de la enciclopedia