Qué hace el DNS
El sistema de nombres de dominio (DNS) es la base de datos distribuida que traduce los nombres de dominio legibles (example.com) en direcciones IP (93.184.216.34). Sin DNS tendrías que memorizar la dirección IP de cada web que visitas.
La cadena completa de consulta
Cuando tu navegador va a api.example.com por primera vez:
**1. Comprobación de la caché local**: el navegador mira si ya tiene guardada la respuesta de una consulta anterior.
**2. Resolvedor recursivo**: si no está en caché, tu equipo pregunta a un resolvedor recursivo (normalmente el de tu proveedor de internet o uno público, como 8.8.8.8). Ese resolvedor se encarga de buscar la respuesta.
**3. Servidores raíz**: si el resolvedor tampoco la tiene, pregunta a uno de los 13 conjuntos de servidores raíz. Los servidores raíz no saben la respuesta, pero sí dónde encontrar la información de los dominios .com, así que apuntan a los servidores del dominio de primer nivel.
**4. Servidores del dominio de primer nivel**: el resolvedor pregunta a los servidores de .com, que saben qué servidores son los autoritativos de example.com y le indican el camino.
**5. Servidor autoritativo**: el resolvedor pregunta al servidor autoritativo de example.com. Ese servidor tiene los registros DNS reales y devuelve el registro A (la dirección IP) de api.example.com.
**6. Respuesta y almacenamiento en caché**: la dirección IP vuelve hasta tu navegador. Cada eslabón de la cadena guarda el resultado durante el tiempo de vida (TTL) del registro.
Todo el proceso suele tardar entre 20 y 120 ms la primera vez, y prácticamente nada cuando está en caché.
Tipos de registro DNS
**Registro A**: asocia un dominio a una dirección IPv4. Es el tipo más habitual.
example.com → 93.184.216.34
**Registro AAAA**: asocia un dominio a una dirección IPv6.
example.com → 2606:2800:220:1:248:1893:25c8:1946
**Registro CNAME**: crea un alias de un dominio hacia otro. Apunta a otro nombre de dominio, no a una dirección IP. www.example.com → example.com
**Registro MX**: indica los servidores de correo de un dominio. Los mensajes enviados a @example.com se dirigen a los servidores que figuren en sus registros MX.
**Registro TXT**: guarda texto libre. Se usa para verificar la propiedad de un dominio (Google Search Console, emisión de certificados SSL), para la autenticación SPF del correo y para las claves públicas DKIM.
**Registro NS**: indica qué servidores de nombres son autoritativos para un dominio.
**Registro SOA**: el inicio de autoridad. Contiene la información administrativa de la zona, incluido el servidor de nombres principal y el correo de quien la administra.
**Registro SRV**: indica un servidor y un puerto para un servicio concreto. Lo usan servicios como SIP (voz sobre IP) y XMPP.
**Registro CAA**: autorización de autoridades de certificación. Indica qué autoridades pueden emitir certificados SSL para un dominio, lo que reduce el riesgo de emisiones fraudulentas.
El TTL: por qué los cambios de DNS tardan
Cada registro DNS tiene un tiempo de vida (TTL): los segundos que los resolvedores deberían guardarlo en caché. Un TTL de 3600 significa que se guarda una hora antes de volver a preguntar.
Cuando cambias un registro, el antiguo sigue en la caché de resolvedores de todo el mundo hasta que expira su TTL. Por eso la "propagación de DNS" puede tardar hasta 48 horas si el TTL está muy alto. Para migrar un dominio con el mínimo corte, baja el TTL a 300 o 600 segundos 24 horas antes del cambio, haz el cambio y vuelve a subirlo cuando todo esté estable.
Cuestiones de seguridad del DNS
**Suplantación de DNS y envenenamiento de caché**: alguien inyecta registros falsos en la caché de un resolvedor y redirige a la gente a servidores maliciosos. DNSSEC lo evita firmando criptográficamente los registros.
**DNS sobre HTTPS (DoH)** y **DNS sobre TLS (DoT)** cifran las consultas, de modo que ni tu proveedor de internet ni quien esté en la red pueden ver qué dominios consultas.
**Compromiso del servidor autoritativo**: si alguien accede a tu registrador de dominios o a tu proveedor de DNS, puede modificar tus registros directamente. Usa credenciales robustas y el bloqueo del registrador.
Depurar problemas de DNS
dig example.com A: consulta los registros A de un dominio (en Linux y macOS)
nslookup example.com: el equivalente en Windows
dig @8.8.8.8 example.com: consulta un resolvedor concreto
dig +trace example.com: muestra la cadena completa, desde la raíz hasta el servidor autoritativo
El formateador de registros DNS de NoxaKit te ayuda a estructurar y validar la sintaxis de un archivo de zona antes de aplicar los cambios en tu servidor de nombres.