Zona DNS

Protocolos y Estándares
Una porción del espacio de nombres DNS que es gestionada por una organización o administrador específico.
← Volver al Glosario

¿Qué es una Zona DNS?

Una zona DNS es una porción distinta del espacio de nombres DNS que es gestionada por una organización o administrador específico. Una zona contiene registros DNS para uno o más dominios y es servida por servidores de nombres autoritativos. Mientras que un dominio es un nombre en el árbol DNS, una zona es un límite administrativo que define qué servidores de nombres son responsables de responder consultas.

Dominio vs Zona

Entender la distinción es crucial:

Dominio

Un dominio es un nombre en la jerarquía DNS:

example.com (domain)

└── www.example.com (subdomain)

└── blog.example.com (subdomain)

└── api.example.com (subdomain)

Zona

Una zona es control administrativo sobre registros:

Zona Única para Dominio y Subdominios:
example.com zone contains:

- example.com

- www.example.com

- blog.example.com

- api.example.com

Managed by: ns1.example.com, ns2.example.com

Zona de Subdominio Delegada:
example.com zone contains:

- example.com

- www.example.com

- Delegation: api.example.com → different nameservers

api.example.com zone (separate) contains:

- api.example.com

- v1.api.example.com

- v2.api.example.com

Managed by: ns1.apihost.com, ns2.apihost.com

Componentes de la Zona

Archivo de Zona

Un archivo de texto que contiene todos los registros DNS para una zona:

; example.com zone file

$TTL 3600

@ IN SOA ns1.example.com. admin.example.com. (

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

; Nameserver records

@ IN NS ns1.example.com.

@ IN NS ns2.example.com.

; A records

@ IN A 203.0.113.50

www IN A 203.0.113.50

blog IN A 203.0.113.51

; MX records

@ IN MX 10 mail.example.com.

mail IN A 203.0.113.52

; CNAME records

ftp IN CNAME www.example.com.

; TXT records

@ IN TXT "v=spf1 include:_spf.google.com ~all"

Registro SOA (Inicio de Autoridad)

Cada zona debe tener exactamente un registro SOA:

example.com.  IN  SOA  ns1.example.com. admin.example.com. (

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

Campos SOA:
CampoPropósitoValor Ejemplo
NS primarioServidor de nombres maestrons1.example.com
Correo AdminContacto (@ → .)admin.example.com ([email protected])
SerialNúmero de versión de zona2024010101
RefreshIntervalo de verificación NS secundario7200s (2 horas)
RetryIntervalo de reintento si refresh falla3600s (1 hora)
ExpireNS secundario se rinde después de1209600s (14 días)
Minimum TTLDuración de caché negativo3600s (1 hora)

Registros NS (Servidores de Nombres)

Especifican qué servidores son autoritativos para la zona:

example.com.  IN  NS  ns1.example.com.

example.com. IN NS ns2.example.com.

Estos le dicen al mundo qué servidores consultar para registros en esta zona.

Tipos de Zona

Zona Primaria (Maestro)

La fuente autoritativa donde se editan los registros de zona:

ns1.example.com (primary)

→ Zone file edited here

→ Changes made directly

→ Notifies secondaries of updates

Zona Secundaria (Esclava)

Copias de sólo lectura que se replican desde la primaria:

ns2.example.com (secondary)

→ Retrieves zone data from primary

→ Cannot be edited directly

→ Automatically syncs based on SOA refresh interval

Transferencia de Zona (AXFR):
1. Secondary checks SOA serial number

2. If primary serial is higher → request full zone transfer

3. Primary sends entire zone

4. Secondary updates its copy

Transferencia Incremental (IXFR):
1. Secondary requests only changes since last serial

2. Primary sends diff

3. More efficient for large zones with small changes

Zona Directa

Asigna nombres de dominio a direcciones IP (la más común):

example.com → 203.0.113.50

www.example.com → 203.0.113.50

Zona Inversa

Asigna direcciones IP a nombres de dominio (registros PTR):

50.113.0.203.in-addr.arpa → example.com

Usada para:

Delegación de Zona

La delegación crea zonas separadas para subdominios:

Zona Primaria (example.com)

; example.com zone

@ IN A 203.0.113.50

www IN A 203.0.113.50

; Delegate api.example.com to different nameservers

api IN NS ns1.apihost.com.

api IN NS ns2.apihost.com.

; Glue records (if needed)

ns1.api IN A 198.51.100.1

ns2.api IN A 198.51.100.2

Zona Delegada (api.example.com)

Archivo de zona completamente separado en servidores de nombres diferentes:

; api.example.com zone (on ns1.apihost.com)

@ IN A 198.51.100.10

v1 IN A 198.51.100.11

v2 IN A 198.51.100.12

¿Por qué Delegar?

Gestión de Zona

Gestión de Número de Serie

Los números de serie rastrean versiones de zona (típicamente formato YYYYMMDDnn):

2024010101  ; January 1, 2024, version 01

2024010102 ; January 1, 2024, version 02

2024010201 ; January 2, 2024, version 01

Regla crítica: El serial debe aumentar con cada cambio, o las secundarias no se actualizarán.

Seguridad de Transferencia de Zona

Problema: Las transferencias de zona exponen todos los registros DNS Solución: Restringir transferencias de zona a secundarias autorizadas Configuración BIND:
zone "example.com" {

type master;

file "/var/named/example.com.zone";

allow-transfer { 203.0.113.52; 203.0.113.53; }; // Secondary IPs only

notify yes;

};

TSIG (Firma de Transacción): Autenticar transferencias de zona con claves compartidas:
key "transfer-key" {

algorithm hmac-sha256;

secret "base64-encoded-key";

};

allow-transfer { key transfer-key; };

Verificación de Configuración de Zona

Consultar Registro SOA

dig example.com SOA

; ANSWER SECTION:

example.com. 3600 IN SOA ns1.example.com. admin.example.com. (

2024010101 7200 3600 1209600 3600 )

Consultar Registros NS

dig example.com NS

; ANSWER SECTION:

example.com. 86400 IN NS ns1.example.com.

example.com. 86400 IN NS ns2.example.com.

Solicitar Transferencia de Zona (AXFR)

dig @ns1.example.com example.com AXFR

# If allowed, returns entire zone

# If denied, returns transfer failed

La mayoría de servidores de nombres públicos deniegan AXFR para prevenir divulgación de información.

Configuraciones Comunes de Zona

Sitio Web Simple

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

@ MX 10 mail.example.com

mail A 203.0.113.51

@ TXT "v=spf1 mx -all"

Zona Multiservicio

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

blog CNAME hosting.wordpress.com.

shop CNAME shops.myshopify.com.

cdn CNAME d111111abcdef8.cloudfront.net.

@ MX 10 aspmx.l.google.com.

Subdominios Delegados

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

; Delegate api to AWS Route 53

api NS ns-123.awsdns-01.com.

api NS ns-456.awsdns-02.net.

; Delegate cdn to Cloudflare

cdn NS ns1.cloudflare.com.

cdn NS ns2.cloudflare.com.

Mejores Prácticas de Archivo de Zona

1. Siempre incrementar serial: Después de cada cambio, o las secundarias no se actualizarán

2. Usar seriales basados en fecha: Formato YYYYMMDDnn para claridad

3. Restringir transferencias de zona: Permitir sólo secundarias autorizadas

4. Usar múltiples servidores de nombres: Al menos 2, preferiblemente en redes diferentes

5. Establecer TTL apropiados: Equilibrar beneficios de caché vs velocidad de actualización

6. Probar antes de aplicar: Validar sintaxis de archivo de zona antes de cargar

7. Monitorizar transferencias de zona: Asegurar que secundarias se están sincronizando

8. Documentar delegaciones: Anotar qué zonas se delegan y dónde

9. Hacer copia de seguridad de archivos de zona: Copias de seguridad regulares previenen pérdida de datos

10. Usar control de versiones: Rastrear cambios de archivo de zona a lo largo del tiempo

Características Avanzadas de Zona

DNSSEC (Firma de Zona)

Firmar criptográficamente registros de zona:

example.com.  IN  A       203.0.113.50

example.com. IN RRSIG A 8 2 3600 (

signature-data-here )

Protege contra envenenamiento de caché y manipulación.

DNS Dinámico (DDNS)

Permitir actualizaciones de zona programáticas:

# Update A record dynamically

nsupdate -k Kupdate.key <<EOF

server ns1.example.com

update delete www.example.com A

update add www.example.com 300 A 203.0.113.51

send

EOF

Útil para:

Vistas de Zona (DNS Split Horizon)

Servir datos de zona diferentes basados en IP del cliente:

Internal clients: example.com → 10.0.0.50 (internal)

External clients: example.com → 203.0.113.50 (public)

Casos de uso:

Solución de Problemas de Zona

Fallos de Transferencia de Zona

Síntoma: Secundarias desfasadas Verificar:
# Check if primary allows transfers

dig @ns1.example.com example.com AXFR

# Check secondary logs for errors

tail -f /var/log/named.log

Soluciones:

Número de Serie No Incrementado

Síntoma: Los cambios no se propagan a secundarias Solución: Siempre incrementar serial con cada edición de zona

Delegación No Funciona

Síntoma: Subdominio no se resuelve Verificar:
# Verify delegation

dig example.com NS

dig api.example.com NS

# Should show different nameservers for delegated subdomain

Soluciones:

Las zonas DNS son la base de la gestión DNS distribuida—entender estructura de zona, delegación y gestión le permite arquitecturar DNS de manera efectiva para organizaciones de cualquier tamaño.

Pon Este Conocimiento en Práctica

Usa la API de DomScan para comprobar disponibilidad de dominios, estado y mucho más.