Contacto Dattics

Contáctenos

Nuestro WhatsApp

Azure DNS es un servicio de hospedaje para dominios DNS que ofrece resolución de nombres mediante la infraestructura de Microsoft Azure.

El servicio es muy útil si disponemos de algunos servicios en Azure, bien sean App Services, VM u otros, y contaremos con IAM por registro, lo que facilitará la administración sobre los DNS.

El precio es de 0,50 USD por mes, lo que lo hace una solución muy atractiva para administrar de forma centralizada todos nuestros servicios.

En ocasiones, requerimos migrar todos nuestros registros desde el proveedor actual a Azure, y hacerlo de forma manual (registro a registro) puede tomar mucho tiempo y generar más errores.

En esta entrada, veremos cómo realizar la migración de forma fácil utilizando con un archivo de zona.

1. Exportar los registros actuales

Este paso dependerá de cada proveedor, sin embargo, casi todos ellos cuentan con una opción para exportar los registros, lo importante será seleccionar el formato BIND.

How To Format A Zone File | Dyn Help Center

2. Validar el formato

Una vez descargado el archivo, procederemos a abrirlo con nuestro editor de texto de preferencia. Encontraremos algo similar a lo siguiente:

dattics.com. 3600 IN A 40.114.121.221 dattics.com. 3600 IN MX 0 dattics-com.mail.protection.outlook.com. dattics.com. 3600 IN TXT “v=spf1 include:spf.protection.outlook.com -all”

Notaremos quizás, algunos comentarios, los cuales iniciarán por punto y coma ( ; ).

Para poder migrar nuestros registros a Azure, es obligatorio agregar el SOA (Start Of Authority), el cual contiene información importante del dominio, y es requisito para todas las zonas DNS bajo los estándares de la IETF.

Para Azure, el SOA a utilizar será el siguiente:

dattics.com.                  3600 SOA   ns1-07.azure-dns.com. (
                              azuredns-hostmaster.microsoft.com.     	; address of responsible party
                              1                 						; serial number
                              3600              						; refresh period
                              300               						; retry period
                              2419200           						; expire time
                              300             ) 						; minimum ttl

Sin embargo, antes de utilizar este SOA, es recomendable validarlo en Azure, como veremos a continuación.

El archivo tendrá un estructura similar a la siguiente, podrá tener más registros según la cantidad que utilicemos actualmente.

3. Crear Zona DNS en Azure

En el Portal de Azure, procederemos a buscar “DNS” en el campo de búsqueda de servicios.

Seleccionaremos la opción “DNS zones”.

Haremos clic en “Crear” o “Create” para crear una nueva zona DNS.

A continuación, podremos seleccionar un Grupo de Recursos existente o crear uno nuevo, siempre recomendamos separar los recursos en grupos diferentes por orden.

En “Name” o “Nombre”, indicaremos nuestro dominio.

Esperaremos unos segundos para la creación del recurso, y procederemos a ingresar al mismo.

En este punto, encontraremos el registro SOA requerido en el paso anterior, podremos modificar los parametros según requiramos para garantizar que sean idénticos.

4. Iniciar Azure Cloud Shell

Una vez validado nuestro archivo de zona, y garantizando que el primer registro es el SOA, procederemos a abrir una sesión en Azure Cloud Shell.

Para ello, hacemos clic en el botón de la parte superior señalado a continuación:

Si es la primera vez que abrimos un Shell de Azure, procedemos a seleccionar PowerShell (recomendado).

5. Cargar archivo de Zona

Procederemos a cargar el archivo de zona en Azure Cloud Shell haciendo clic en el ícono indicado.

6. Ejecutar comando de importación

Una vez cargado el archivo, ejecutaremos el siguiente comando:

az network dns zone import -g <resource group> -n <zone name> -f <zone file name>

Resource Group: Es el grupo de recursos utilizado anteriormente durante la creación de la zona DNS en Azure
Zone Name: Es el nombre de nuestra zona (dattics.com por ejemplo)
Zone File Name: Es el nombre del archivo cargado en el paso 5

Para nuestro caso en Dattics, el comando es el siguiente:

az network dns zone import -g dns_zones -n dattics.com -f dattics.com.zone

Esto es todo, la zona se importará y tendremos todos nuestros registros en Azure para ser utilizados.

Ya solo queda cambiar los NS en nuestro proveedor del dominio por los NS de Azure, los cuales encontrarás en la parte del encabezado.

7. Solución error ResourceGroupNotFound

En caso que nos encontremos con este error, se debe a que tenemos varias suscripciones en nuestro Tenant y por defecto Azure Cloud Shell selecciono otra diferente a la cual tenemos nuestro Grupo de Recursos.

Para ello, buscaremos primero el ID de la suscripción correcta:

az account list --output table

En la lista resultante, copiaremos el ID de la suscripción correcta y ejecutamos el siguiente comando:

az account set --subscription <ID suscripción>

Por ejemplo:

az account set --subscription edcxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx8d