Cómo Funciona un Servidor DNS: Proceso Completo de Resolución

El Sistema de Nombres de Dominio (DNS) traduce nombres legibles (example.com) a direcciones máquina (93.184.216.34). Aquí el viaje completo de una consulta:

1. La Consulta del Cliente

Escribe example.com en navegador. El resolver stub (SO) verifica:

  1. Archivo hosts local
  2. Caché local (basado en TTL)
  3. Si fallo → envía consulta recursiva a resolver recursivo configurado (ISP, Google 8.8.8.8, Cloudflare 1.1.1.1, etc.)

2. Resolución Recursiva (Trabajo del Resolver)

El resolver recursivo recorre la jerarquía:

Root (.) → TLD (.com) → Autoritativo (example.com) → Respuesta 
  1. Servidores raíz (13 clusters, anycast): Resolver pregunta a . por NS de .com. Obtiene referencia a servidores TLD .com.
  2. Servidores TLD (Verisign para .com): Resolver pregunta a .com por NS de example.com. Obtiene referencia a NS autoritativos (ej. ns1.example.com).
  3. Servidores autoritativos: Resolver pregunta a ns1.example.com por registro A/AAAA de example.com. Obtiene IP(s).

3. Caché y Respuesta

  • Resolver cachea cada respuesta según TTL (Time To Live).
  • Devuelve respuesta final al cliente.
  • Cliente cachea localmente (SO/navegador).

4. Iterativo vs. Recursivo

  • Recursivo: Resolver hace todo el trabajo, devuelve respuesta final. (Lo que usan clientes.)
  • Iterativo: Resolver devuelve mejor referencia que tiene; cliente recorre árbol. (Servidores raíz/TLD/Autoritativos responden iterativamente.)

5. Tipos Clave de Registros de Recursos

TipoPropósito
ADirección IPv4
AAAADirección IPv6
CNAMEAlias (www → example.com)
MXIntercambiadores correo (prioridad + host)
TXTTexto arbitrario (SPF, DKIM, verificación)
NSDelegación (NS autoritativos para zona)
SOAMetadatos zona (serial, refresh, retry, expire, min TTL)
PTRDNS inverso (IP → nombre)
SRVUbicación servicio (puerto, target, prioridad, peso)
CAAAutorización Autoridad Certificación

6. Mejoras Modernas

  • DNSSEC: Firmas criptográficas en registros (previene suplantación)
  • DoH / DoT: DNS sobre HTTPS/TLS (cifra consultas)
  • EDNS Client Subnet: Geo-routing para CDNs
  • DANE: Registros TLSA para pinning certificados

Todo en <50 ms típicamente. La jerarquía, caché y anycast raíz lo hacen sentir instantáneo.