Crea, modifica y borra zonas

En esta página, se proporcionan instrucciones para crear, actualizar, enumerar y borrar zonas administradas de Cloud DNS. Antes de usar esta página, conoce la descripción general de Cloud DNS y los términos clave.

Antes de comenzar

La API de Cloud DNS requiere que crees un proyecto de Cloud DNS y que habilites la API de Cloud DNS.

Si creas una aplicación que usa la API de REST, también debes crear un ID de cliente de OAuth 2.0.

  1. Si aún no lo hiciste, regístrate para obtener una Cuenta de Google.
  2. Habilita la API de Cloud DNS en la consola de Google Cloud . Puedes seleccionar un proyecto existente de Compute Engine o App Engine, o puedes crear uno nuevo.
  3. Si necesitas realizar solicitudes a la API de REST, deberás crear un ID de OAuth 2.0. Consulta Configura OAuth 2.0.
  4. En el proyecto, presta atención a la información que deberás ingresar en en los pasos posteriores:
    • El ID de cliente (xxxxxx.apps.googleusercontent.com)
    • El ID del proyecto que deseas usar. Puedes encontrarlo en la parte superior de la página Descripción general en la consola de Google Cloud . También podrías solicitarle al usuario que te brinde el nombre del proyecto que desea usar en tu app

Si no ejecutaste Google Cloud CLI antes, debes ejecutar el siguiente comando para especificar el nombre del proyecto y autenticarlo con la consola de Google Cloud :

gcloud auth login

Si deseas ejecutar un comando gcloud en los recursos de Google Cloud en otro proyecto, especifica la opción --project para este comando y los otros comandos gcloud en esta página.

Crea zonas administradas

Cada zona administrada que creas está asociada a un proyecto deGoogle Cloud . En las siguientes secciones, se describe cómo crear el tipo de zona administrada compatible con Cloud DNS.

Crea una zona pública

Para crear una nueva zona administrada, completa los siguientes pasos.

Consola

  1. En la consola de Google Cloud , ve a la página Crea una zona del DNS.

    Ir a Crea una zona del DNS

  2. En Tipo de zona, selecciona Pública.

  3. Ingresa un Nombre de zona, como my-new-zone.

  4. Ingresa un sufijo de nombre de DNS para la zona. Usa un nombre de dominio de tu propiedad. En todos los registros de la zona, se comparte este sufijo, por ejemplo: example.com.

  5. En DNSSEC, selecciona Desactivado, Activado o Transferir. Para obtener más información, consulta Habilita DNSSEC para zonas administradas existentes.

  6. Haz clic en Crear. Se muestra la página Detalles de la zona.

gcloud

Ejecuta el comando dns managed-zones create:

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --labels=LABELS \
    --visibility=public

Reemplaza lo siguiente:

  • NAME: un nombre para tu zona
  • DESCRIPTION: una descripción para tu zona
  • DNS_SUFFIX: el sufijo DNS para tu zona, como example.com
  • LABELS: una lista opcional delimitada por comas de pares clave-valor, como dept=marketing o project=project1; para obtener más información, consulta la documentación de SDK

Terraform

resource "google_dns_managed_zone" "example_zone" {
  name        = "example-zone"
  dns_name    = "example-${random_id.rnd.hex}.com."
  description = "Example DNS zone"
  labels = {
    name = "value"
  }
}

resource "random_id" "rnd" {
  byte_length = 4
}

API

Envía una solicitud POST usando el método managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{
  "name": "NAME",
  "description": "DESCRIPTION",
  "dnsName": "DNS_NAME",
  "visibility": "public"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto en el que se crea la zona administrada
  • NAME: un nombre para tu zona
  • DESCRIPTION: una descripción para tu zona
  • DNS_NAME: el sufijo DNS para tu zona, como example.com

Crea una zona privada

Para crear una zona privada administrada nueva con registros DNS privados administrados por Cloud DNS, completa los siguientes pasos. Si deseas obtener más información, consulta Prácticas recomendadas para las zonas privadas de Cloud DNS.

Consola

  1. En la consola de Google Cloud , ve a la página Crea una zona del DNS.

    Ir a Crea una zona del DNS

  2. En Tipo de zona, selecciona Privada.

  3. Ingresa un Nombre de zona, como my-new-zone.

  4. Ingresa un sufijo de nombre de DNS para la zona privada. En todos los registros de la zona, se comparte este sufijo, por ejemplo: example.private.

  5. Opcional: Agrega una descripción.

  6. En Opciones, selecciona Predeterminada (privada).

  7. Selecciona las redes de nube privada virtual (VPC) en las que estará visible la zona privada. Solo las redes de VPC que selecciones tienen autorización para consultar registros en la zona.

  8. Haz clic en Crear.

gcloud

Ejecuta el comando dns managed-zones create:

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --networks=VPC_NETWORK_LIST \
    --labels=LABELS \
    --visibility=private

Reemplaza lo siguiente:

  • NAME: un nombre para tu zona
  • DESCRIPTION: una descripción para tu zona
  • DNS_SUFFIX: el sufijo DNS para tu zona, como example.private
  • VPC_NETWORK_LIST: una lista delimitada por comas de redes de VPC que están autorizadas para consultar la zona
  • LABELS: una lista opcional delimitada por comas de pares clave-valor, como dept=marketing o project=project1; para obtener más información, consulta la documentación de SDK

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

API

Envía una solicitud POST usando el método managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{

  "name": "NAME",
  "description": "DESCRIPTION",
  "dnsName": "DNS_NAME",
  "visibility": "private",
  "privateVisibilityConfig": {
    "kind": "dns#managedZonePrivateVisibilityConfig",
    "networks": [
      {
        "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
        "networkUrl": "VPC_NETWORK_1"
      },
      {
        "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
        "networkUrl": "VPC_NETWORK_2"
      },
      ....
    ]
  }
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto en el que se crea la zona administrada
  • NAME: un nombre para tu zona
  • DESCRIPTION: una descripción para tu zona
  • DNS_NAME: el sufijo DNS para tu zona, como example.private
  • VPC_NETWORK_1 y VPC_NETWORK_2: URLs de las redes de VPC del mismo proyecto que pueden consultar registros en esta zona. Puedes agregar varias redes de VPC como se indica. Para determinar la URL de una red de VPC, usa el siguiente comando gcloud y reemplaza VPC_NETWORK_NAME por el nombre de la red:

    gcloud compute networks describe VPC_NETWORK_NAME \
     --format="get(selfLink)"
    

Crea una zona con permisos de IAM específicos

El permiso de Identity and Access Management (IAM) para la zona administrada individual de recursos te permite configurar permisos específicos de lectura, escritura o administración para diferentes zonas administradas en el mismo proyecto.

Para obtener instrucciones sobre cómo crear una zona con permisos específicos de Identity and Access Management (IAM), consulta Crea una zona con permisos de IAM específicos.

Crea una zona del DNS del Directorio de servicios

Puedes crear una zona del Directorio de servicios que permita que tus servicios basados en Google Cloud consulten tu espacio de nombres del Directorio de servicios usando DNS.

Para obtener instrucciones detalladas para crear una zona del DNS del Directorio de servicios, consulta Configura una zona del DNS del Directorio de servicios.

Si deseas obtener instrucciones sobre cómo usar DNS para consultar tu Directorio de servicios, consulta Cómo realizar una consulta con DNS.

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

Crea una zona privada administrada de búsqueda inversa

Una zona de búsqueda inversa administrada es una zona privada con un atributo especial que le indica a Cloud DNS que realice una búsqueda PTR en los datos de DNS de Compute Engine. Debes configurar zonas de búsqueda inversa administradas para Cloud DNS con el objetivo de resolver de forma correcta los registros PTR que no sean RFC 1918 para tus instancias de máquina virtual (VM).

Para obtener instrucciones a la hora de crear una nueva zona privada de búsqueda inversa administrada, consulta Crea una zona de búsqueda inversa administrada.

Crea una zona de reenvío

Las zonas de reenvío te permiten orientar los servidores de nombres a zonas privadas específicas. Para obtener instrucciones a la hora de crear una nueva zona de reenvío privada administrada, consulta Crea una zona de reenvío.

Crea una zona de intercambio de tráfico

Con el intercambio de tráfico de DNS, puedes enviar consultas de los registros que provienen del espacio de nombres de una zona a otra red de VPC. Para obtener instrucciones a la hora de crear una zona de intercambio de tráfico, consulta Crea una zona de intercambio de tráfico.

Crea una zona de vinculación entre proyectos

Crea una zona privada administrada que pueda vincularse a una red que pertenezca a un proyecto diferente dentro de la misma organización. Si deseas obtener instrucciones a la hora de crear una zona de vinculación entre proyectos, consulta Zonas de vinculación entre proyectos.

Actualiza zonas administradas

Cloud DNS te permite modificar ciertos atributos de tu zona administradapública o privada.

Actualiza zonas públicas

Puedes cambiar la descripción o la configuración de DNSSEC de una zona pública.

Consola

  1. En la consola de Google Cloud , ve a la página Zonas de Cloud DNS.

    Ir a Zonas de Cloud DNS

  2. Haz clic en la zona pública que deseas actualizar.

  3. Haz clic en Editar.

  4. Para cambiar la configuración de DNSSEC, en DNSSEC, selecciona Desactivado, Activado o Transferir. Para obtener más información, consulta Habilita DNSSEC para zonas administradas existentes.

  5. Opcional: Actualiza la descripción.

  6. Haz clic en Guardar.

gcloud

Ejecuta el comando dns managed-zones update:

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --dnssec-state=STATE

Reemplaza lo siguiente:

  • NAME: un nombre para tu zona
  • DESCRIPTION: una descripción para tu zona
  • STATE: un parámetro de configuración de DNSSEC, como Off, On o Transfer

Actualiza zonas privadas

Puedes modificar las redes de VPC para las que una zona privada es visible.

Consola

  1. En la consola de Google Cloud , ve a la página Zonas de Cloud DNS.

    Ir a Zonas de Cloud DNS

  2. Haz clic en la zona privada que deseas actualizar.

  3. Haz clic en Editar.

  4. Selecciona las redes de VPC en las que debe estar visible la zona privada. Solo las redes de VPC seleccionadas están autorizadas para consultar registros en la zona.

  5. Haz clic en Guardar.

gcloud

Ejecuta el comando dns managed-zones update:

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --networks=VPC_NETWORK_LIST

Reemplaza lo siguiente:

  • NAME: un nombre para tu zona
  • DESCRIPTION: una descripción para tu zona
  • VPC_NETWORK_LIST: una lista delimitada por comas de redes de VPC que están autorizadas para consultar la zona

Actualiza etiquetas

Para agregar una etiqueta nueva, cambiar una existente, quitar las seleccionadas o eliminar todas las de una zona administrada, completa los siguientes pasos.

gcloud

Ejecuta el comando dns managed-zones update:

gcloud dns managed-zones update NAME \
    --update-labels=LABELS
gcloud dns managed-zones update NAME \
    --remove-labels=LABELS
gcloud dns managed-zones update NAME \
    --clear-labels

Reemplaza lo siguiente:

  • NAME: un nombre para tu zona
  • LABELS: una lista opcional delimitada por comas de pares clave-valor, como dept=marketing o project=project1; para obtener más información, consulta la documentación de SDK

Enumera y describe zonas administradas

En las siguientes secciones, se muestra cómo enumerar o describir una zona administrada.

Enumera zonas administradas

Para obtener una lista de todas tus zonas administradas dentro de un proyecto, completa los siguientes pasos.

Consola

  1. En la consola de Google Cloud , ve a la página Zonas de Cloud DNS.

    Ir a Zonas de Cloud DNS

  2. Consulta las zonas administradas en el panel derecho.

gcloud

Ejecuta el comando dns managed-zones list:

gcloud dns managed-zones list

Para enumerar todas las zonas administradas, modifica el siguiente comando:

gcloud dns managed-zones list 
--filter="visibility=public"
Para enumerar todas las zonas privadas administradas, modifica el siguiente comando:

gcloud dns managed-zones list \
   --filter="visibility=private"

Describe una zona administrada

Para ver los atributos de una zona administrada, completa los siguientes pasos.

Consola

  1. En la consola de Google Cloud , ve a la página Zonas de Cloud DNS.

    Ir a Zonas de Cloud DNS

  2. Haz clic en la zona que deseas inspeccionar.

gcloud

Ejecuta el comando dns managed-zones describe:

gcloud dns managed-zones describe NAME

Reemplaza NAME por el nombre de tu zona.

Borra una zona administrada

Cuando borras una zona, sus registros DNS se quitan de forma permanente y no se pueden recuperar. Para evitar perder tus registros DNS, exporta los datos de tu zona antes de eliminarla. Para obtener información sobre cómo exportar datos de zonas, consulta Importa y exporta conjuntos de registros de recursos.

Para borrar una zona administrada, completa los siguientes pasos.

Consola

  1. En la consola de Google Cloud , ve a la página Zonas de Cloud DNS.

    Ir a Zonas de Cloud DNS

  2. Haz clic en la zona administrada que deseas borrar.

  3. Haz clic en Borrar la zona.

gcloud

  1. Quita todos los registros de la zona, excepto los registros SOA y NS. Para obtener más información, consulta Cómo quitar un registro. Para vaciar rápidamente una zona completa, importa un archivo vacío a un conjunto de registros. Para obtener más información, consulta Importa y exporta conjuntos de registros. Por ejemplo:

    touch empty-file
    gcloud dns record-sets import -z NAME \
       --delete-all-existing \
       empty-file
    rm empty-file
    

    Reemplaza NAME por el nombre de tu zona.

  2. Para borrar una nueva zona privada administrada, ejecuta el comando dns managed-zones delete:

    gcloud dns managed-zones delete NAME
    

    Reemplaza NAME por el nombre de tu zona.

¿Qué sigue?