Si has leído el capítulo sobre los tipos de registros DNS, ya sabes que cada registro guardado en un servidor de nombres tiene una función concreta. Un registro A asocia un nombre de dominio con una dirección IP. Un registro MX gestiona el enrutamiento del correo. Un registro CNAME funciona de otra manera. En lugar de apuntar a una dirección IP o a un servidor de correo, apunta un nombre de dominio a otro nombre de dominio. Esa diferencia tan simple lo convierte en uno de los registros más útiles y más malentendidos del DNS.
¿Qué significa CNAME?
CNAME significa canonical name (nombre canónico). En este contexto, "canónico" quiere decir la versión oficial o principal. Cuando creas un registro CNAME, estás diciendo que un nombre de host es solo un alias de otro. El nombre de host de destino es el nombre canónico y el alias lo sigue allá donde vaya.
Por ejemplo, si configuras un registro CNAME para que "www.yoursite.com" apunte a "yoursite.com", le estás diciendo al DNS que "www.yoursite.com" es un alias. El nombre canónico es "yoursite.com". Cada vez que alguien consulte la versión con www, el DNS sigue el alias y resuelve el nombre canónico en su lugar.
¿Cómo funciona un registro CNAME?
Explicado de forma sencilla, un registro CNAME funciona como una dirección de reenvío. El navegador pide al DNS la dirección IP de un nombre de host. El DNS encuentra un registro CNAME en ese nombre de host. En lugar de devolver una dirección IP, devuelve otro nombre de dominio. Entonces el navegador consulta ese segundo nombre de dominio y sigue su registro A hasta llegar al servidor real.
Esto es lo que ocurre paso a paso.
- Un visitante escribe "blog.yoursite.com" en un navegador
- El navegador pide al DNS que resuelva "blog.yoursite.com"
- El DNS encuentra un registro CNAME que apunta "blog.yoursite.com" a "yoursite.com"
- El DNS busca entonces el registro A de "yoursite.com"
- El registro A devuelve la dirección IP del servidor
- El navegador se conecta a esa dirección IP y carga la página
El paso extra ocurre entre bastidores y solo tarda milisegundos. El visitante nunca lo ve. La ventaja es que, si cambias la dirección IP del registro A de "yoursite.com", todos los alias CNAME que apuntan a él lo siguen automáticamente. Actualizas un registro en lugar de muchos.
¿Qué aspecto tiene un registro CNAME?
Un registro CNAME tiene cuatro partes. Cada una cumple una función concreta.
- El nombre de host (nombre) es el alias que estás creando. Es el nombre de dominio que apuntará a otro sitio. Un valor de ejemplo es "www" o "blog"
- El tipo le dice al DNS que es un registro CNAME
- El destino (valor) es el nombre de dominio canónico al que apunta el alias. Un valor de ejemplo es "yoursite.com"
- El TTL (tiempo de vida) controla cuánto tiempo guardan en caché este registro los servidores DNS antes de comprobar si hay actualizaciones. Se mide en segundos. Un valor habitual es 3600, que equivale a una hora
En un panel de gestión de DNS, una entrada típica de registro CNAME mostraría "www" como nombre de host, "CNAME" como tipo, "yoursite.com" como destino y "3600" como TTL.
¿Cuándo debes usar un registro CNAME?
Los registros CNAME son útiles siempre que quieras que un nombre de host siga a otro. Estas son las situaciones más comunes.
Apuntar www a tu dominio raíz
El uso más común de un registro CNAME es hacer que "www.yoursite.com" apunte a "yoursite.com". El dominio raíz tiene un registro A con la dirección IP del servidor. La versión con www tiene un CNAME que apunta a la raíz. Si cambia la IP del servidor, solo actualizas el registro A. El alias www lo sigue automáticamente.
Conectar subdominios a servicios externos
Muchos servicios de terceros te piden crear un registro CNAME para conectar tu subdominio a su plataforma. Por ejemplo, puedes apuntar "shop.yoursite.com" a la dirección del servidor de un servicio externo. El CNAME te permite usar tu propio nombre de dominio mientras el servicio se encarga del hosting entre bastidores.
Configurar una CDN
Una red de distribución de contenido (CDN) acelera tu web sirviendo los archivos desde servidores más cercanos a cada visitante. Para usar una CDN, a menudo creas un registro CNAME que apunta tu dominio o subdominio a la dirección del proveedor de la CDN. Así tu tráfico pasa por su red sin cambiar tu configuración de hosting real.
Gestionar varios subdominios de forma eficiente
Si tienes varios subdominios que deben llegar al mismo servidor, puedes apuntarlos todos como alias CNAME a un dominio que tenga el registro A. Cuando cambia la dirección IP del servidor, actualizas un solo registro A en lugar de actualizar cada subdominio por separado.
¿Cuál es la diferencia entre un registro CNAME y un registro A?
La diferencia principal es a qué apunta cada registro. Un registro A asocia un nombre de dominio directamente con una dirección IP. Un registro CNAME asocia un nombre de dominio con otro nombre de dominio. El registro A es el destino final. El CNAME es un desvío que lleva al destino final.
Estas son las diferencias clave.
- Un registro A contiene una dirección IP. Un CNAME contiene un nombre de dominio
- Un registro A puede existir en cualquier nombre de host, incluido el dominio raíz. Un CNAME no puede existir en el dominio raíz
- Un registro A se resuelve en un solo paso. Un CNAME añade un paso de consulta más, porque el DNS tiene que seguir el alias y luego resolver el registro A del destino
- Un registro A hay que actualizarlo a mano si cambia la dirección IP. Un CNAME sigue automáticamente la dirección IP a la que se resuelva el destino
Usa un registro A cuando conozcas la dirección IP y sea poco probable que cambie. Usa un CNAME cuando quieras que un nombre de host siga a otro nombre de host, sobre todo cuando la dirección IP que hay detrás la gestiona otra persona.
¿Cuáles son las reglas y limitaciones de los registros CNAME?
Los registros CNAME tienen reglas específicas en la especificación del DNS que los distinguen de otros tipos de registro. Incumplirlas provoca errores que pueden dejar sin conexión tu web o tu correo.
Un CNAME no puede existir en el dominio raíz
La especificación del DNS no permite un registro CNAME en el dominio raíz (apex). El dominio raíz es la versión "desnuda" de tu dominio, sin prefijo, como "yoursite.com" en lugar de "www.yoursite.com". Esta restricción existe porque los registros CNAME no pueden coexistir con otros tipos de registro en el mismo nombre de host, y el dominio raíz necesita otros registros (como los registros MX para el correo y los registros NS para los servidores de nombres) para funcionar.
Si necesitas que el dominio raíz apunte a algún sitio, usa un registro A. Algunos proveedores de DNS ofrecen una solución llamada registros ALIAS o ANAME, que funcionan como un CNAME pero se permiten en el dominio raíz. No todos los proveedores lo admiten.
Un CNAME no puede compartir nombre de host con otros registros
Si un nombre de host tiene un registro CNAME, no puede tener ningún otro tipo de registro en ese mismo nombre. Ni registros A, ni registros MX, ni registros TXT. El CNAME debe ser el único registro de ese nombre. Por eso no puedes poner un CNAME en el dominio raíz: el dominio raíz ya necesita registros NS y normalmente también registros MX y TXT.
Conviene evitar las cadenas de CNAME
Una cadena de CNAME ocurre cuando un CNAME apunta a otro CNAME, que apunta a otro CNAME, antes de llegar por fin a un registro A. Aunque el DNS técnicamente puede seguir estas cadenas, cada salto añade tiempo de consulta y aumenta la probabilidad de un tiempo de espera agotado o de un fallo. Hazlo simple. Apunta cada CNAME directamente a un nombre de host que tenga un registro A.
¿Cómo se añade un registro CNAME?
Añadir un registro CNAME sigue los mismos pasos generales con la mayoría de los proveedores de DNS. El diseño exacto de la página de ajustes varía, pero la información que introduces es la misma en todas partes.
- Inicia sesión en el panel de gestión de DNS donde estén configurados los servidores de nombres de tu dominio. Suele ser tu registrador de dominios o tu proveedor de hosting
- Busca la sección de registros DNS o el editor de zona DNS
- Haz clic en la opción de añadir un registro nuevo
- Selecciona CNAME como tipo de registro
- Introduce el nombre de host que quieres crear como alias (por ejemplo, "www" o "blog")
- Introduce el nombre de dominio de destino al que debe apuntar el alias (por ejemplo, "yoursite.com" o la dirección de un proveedor de servicios)
- Configura el TTL. Si no estás seguro, usa el valor predeterminado que sugiere tu proveedor o ponlo en 3600 (una hora)
- Guarda el registro
Los cambios de DNS pueden tardar desde unos minutos hasta 48 horas en extenderse por internet. Este retraso se llama propagación del DNS. Durante ese tiempo, algunos visitantes pueden seguir viendo los ajustes antiguos mientras otros ven los nuevos. Para saber más sobre cómo funciona este proceso, lee el capítulo sobre cómo funciona el DNS.
¿Cuáles son los errores más comunes con los CNAME?
La mayoría de los problemas con los CNAME vienen de unos pocos errores repetidos. Conocerlos de antemano ahorra tiempo y evita caídas.
- Poner un CNAME en el dominio raíz. Esto rompe el DNS. Usa un registro A en el dominio raíz
- Añadir otros registros junto a un CNAME. Si un nombre de host tiene un CNAME, debe ser el único registro de ese nombre. Añadir un registro MX o TXT al mismo nombre de host provoca conflictos
- Crear cadenas de CNAME. Apuntar un CNAME a otro CNAME y a otro más añade consultas innecesarias. Apunta cada CNAME directamente a un nombre de host que se resuelva con un registro A
- Olvidar el punto final. Algunos proveedores de DNS exigen un punto al final del dominio de destino (como "yoursite.com.") para indicar que es un nombre de dominio completo. Si lo omites, el proveedor puede añadir texto extra al destino
- Usar un CNAME cuando un registro A es mejor. Si controlas el servidor y la dirección IP es estable, un registro A es más simple y se resuelve más rápido. Usa un CNAME cuando la dirección IP de destino pueda cambiar o la gestione un tercero
Cómo gestiona WEMASY los registros CNAME
Cuando conectas un dominio propio a tu web de WEMASY, WEMASY te indica exactamente qué registros DNS añadir. Para los subdominios, normalmente se trata de crear un registro CNAME que apunta a los servidores de WEMASY. WEMASY se encarga del hosting, el SSL y el enrutamiento al otro lado, así que, una vez creado el CNAME, tu subdominio se conecta a tu web automáticamente.
Para los dominios raíz, WEMASY te da los valores del registro A, porque los CNAME no se pueden usar en la raíz. La guía de configuración te acompaña en ambas opciones según el tipo de dominio que conectes. Consulta lo que incluye cada plan en la página de precios de WEMASY.
Qué viene después
Ahora que entiendes cómo los registros CNAME crean alias entre nombres de dominio, el siguiente capítulo trata otro tipo de registro esencial. Los registros MX controlan adónde se entrega el correo de tu dominio y siguen sus propias reglas. Eso se explica en el siguiente capítulo, sobre qué es un registro MX. Para ver todos los tipos de registro y cuándo usar cada uno, consulta el capítulo sobre los tipos de registros DNS.
¿Puede un registro CNAME apuntar a una dirección IP?
No. Un registro CNAME solo puede apuntar a otro nombre de dominio, nunca a una dirección IP. Si necesitas apuntar un nombre de host directamente a una dirección IP, usa un registro A (para IPv4) o un registro AAAA (para IPv6). La finalidad de un CNAME es crear un alias entre dos nombres de dominio.
¿Afecta un registro CNAME a la velocidad de la web?
Un CNAME añade una consulta DNS extra, porque el navegador tiene que resolver primero el alias y luego el destino. En la práctica, este paso extra solo tarda unos milisegundos y normalmente no se nota. Si la velocidad te preocupa, evita las cadenas de CNAME en las que varios alias apuntan unos a otros, porque cada salto añade otra consulta.
¿Qué pasa si el destino de un registro CNAME se cae?
Si el nombre de dominio al que apunta un CNAME deja de resolverse o el servidor que hay detrás se cae, tu alias también deja de funcionar. El CNAME sigue al destino allá donde vaya, incluidas sus caídas. El propio registro CNAME no incluye ningún respaldo.
¿Un CNAME es lo mismo que una redirección?
No. Un CNAME es un alias a nivel de DNS que le dice al navegador dónde encontrar el servidor. La URL del navegador se queda igual. Una redirección es una instrucción a nivel de servidor que envía el navegador a una URL totalmente distinta, y la URL del navegador cambia. Un CNAME conecta nombres de dominio entre bastidores. Una redirección envía a los visitantes a una dirección nueva.
¿Se puede usar un CNAME y un registro A en el mismo nombre de host?
No. La especificación del DNS no permite que un CNAME conviva con ningún otro tipo de registro en el mismo nombre de host. Si un nombre de host tiene un CNAME, debe ser el único registro de ese nombre. Es una de las razones por las que no se puede poner un CNAME en el dominio raíz, que ya necesita registros NS y a menudo también registros MX y TXT.