CNAME ¿Qué es un Registro CNAME?
Un registro CNAME crea un alias de hostname que apunta a otro hostname. Cuándo usar CNAME, la limitación del ápice de zona y los registros ALIAS.
¿Qué es un registro CNAME?
Un registro CNAME (Canonical Name) crea un alias de un hostname hacia otro. En vez de apuntar directamente a una dirección IP, un CNAME apunta a un hostname destino que después se resuelve mediante sus propios registros DNS.
Los CNAME son útiles cuando se quiere que varios nombres resuelvan a la misma IP sin duplicar registros A por todos lados — se cambia el registro A en un solo lugar y todos los CNAME se actualizan automáticamente.
Anatomía de un registro CNAME
www.ejemplo.com. 3600 IN CNAME ejemplo.com.
| Campo | Valor | Descripción |
|---|---|---|
| Nombre | www.ejemplo.com. | El alias — el nombre que se está consultando. |
| TTL | 3600 | Tiempo de vida en segundos. |
| Clase | IN | Clase internet. |
| Tipo | CNAME | Tipo de registro. |
| Destino | ejemplo.com. | El nombre canónico a resolver. El resolver después busca los registros A/AAAA de ese hostname. |
Usos comunes
- Subdominio www —
www.ejemplo.com→ejemplo.compara que ambos resuelvan al mismo servidor. - Alias de CDN — apuntar
assets.ejemplo.comal dominio del CDN (por ejemplo,ejemplo.cdn.com) para que los cambios de IP del CDN no requieran actualizar el DNS del lado propio. - Alias de servicios SaaS — muchos servicios piden agregar un CNAME para mapear un dominio propio a su infraestructura (por ejemplo,
blog.ejemplo.com→customer.ghost.io).
La restricción del ápice de zona
Un registro CNAME no se puede poner en el ápice de la zona (el dominio raíz mismo, por ejemplo ejemplo.com sin www). Es un límite estricto de la especificación DNS. La razón: el ápice de una zona debe tener registros SOA y NS, y un CNAME no puede coexistir con ningún otro tipo de registro en el mismo nombre.
Algunos proveedores de DNS ofrecen una solución propia llamada ALIAS, ANAME o aplanado de CNAME. Estos se ven como registros A/AAAA normales desde afuera, pero se comportan como CNAME internamente, permitiendo aliasing en el dominio raíz.
Cadenas de CNAME
Un CNAME puede apuntar a otro CNAME, formando una cadena. Los resolvers siguen la cadena hasta llegar a un registro A o AAAA. Las cadenas agregan latencia — una consulta DNS extra por cada salto. Conviene mantener las cadenas al mínimo (idealmente en cero).
Errores comunes
- CNAME en el ápice de la zona — no está permitido por el RFC. Hay que usar ALIAS/ANAME o un registro A en su lugar.
- CNAME coexistiendo con otros registros — un CNAME en un nombre dado no puede compartir ese nombre con ningún otro tipo de registro. Si se agrega un CNAME para
mail.ejemplo.com, no se puede agregar también un registro A para ese mismo nombre. - MX o NS apuntando a un destino CNAME — según el RFC 2181, los registros MX y NS no deberían referenciar destinos CNAME. Hay que usar registros A para los hostnames de correo y de servidores de nombres.
Frequently asked questions
¿Un CNAME puede apuntar a una dirección IP?
No. Un CNAME debe apuntar a un hostname, no a una dirección IP. Para apuntar a una IP hay que usar un registro A.
¿Qué es el aplanado de CNAME (CNAME flattening)?
El aplanado de CNAME (también llamado ALIAS o ANAME según el proveedor de DNS) es una función propia que permite usar un alias tipo CNAME en el dominio raíz. El proveedor de DNS lo resuelve del lado del servidor y devuelve registros A/AAAA, manteniéndose dentro de la especificación DNS.
¿Un CNAME afecta el TTL?
Tanto el registro CNAME como su registro A destino tienen su propio TTL. El TTL efectivo para la IP resuelta es el menor de los dos.