Crea un registro PTR para una instancia de VM


Los registros PTR configurables te permiten definir el registro DNS inverso asociado con la dirección IP externa de una instancia de VM para que las aplicaciones que dependen de estos registros puedan funcionar según lo previsto.

Algunas aplicaciones requieren registros DNS inversos (registros PTR) para resolver las direcciones IP de los nombres de dominio. Por ejemplo, las aplicaciones que usan SMTP requieren un registro PTR que apunta al dominio desde el cual se envía un correo electrónico. Sin ese registro, los filtros de spam pueden marcar correos electrónicos con baja reputación, lo que provoca que el correo electrónico termine en carpetas de spam o no se envíe.

Puedes agregar registros PTR solo a la interfaz de red principal de una instancia de VM. Los registros PTR no están disponibles para frontends del balanceador de cargas, Cloud NAT o cualquier otra dirección IP que no sea de VM.

Los registros PTR IPv6 solo están disponibles si la interfaz de red principal de la instancia está conectada a una subred de pila doble que tiene un rango de direcciones IPv6 externas. En este caso, puedes tener registros PTR IPv4 e IPv6 independientes.

Para crear registros PTR personalizados que anulen los nombres PTR de DNS interno creados de forma automática, consulta Zonas de búsqueda inversa administradas.

Antes de comenzar

  • Configura la autenticación si aún no lo hiciste. La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las API de Google Cloud. Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine de la siguiente manera

    Selecciona la pestaña para saber cómo planeas usar las muestras en esta página:

    Consola

    Cuando usas la consola de Google Cloud para acceder a los servicios y las APIs de Google Cloud, no necesitas configurar la autenticación.

    gcloud

    1. Instala Google Cloud CLI y, luego, inicializa la ejecución del siguiente comando:

      gcloud init
    2. Configura una región y una zona predeterminadas.

    REST

    Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.

      Instala Google Cloud CLI y, luego, inicializa la ejecución del siguiente comando:

      gcloud init

Verifique que es el propietario de su dominio

Antes de crear una VM con un registro PTR personalizado, verifica que tienes el nombre de dominio. Verificar la propiedad es una medida de seguridad para demostrarle a Google que eres el propietario del dominio.

Puedes verificar tu nombre de dominio de 2 maneras:

  • Si tienes una Cuenta de Google, puedes realizar la verificación con Search Console.
  • Si tienes una Cuenta de Google o una que no sea de Google, puedes agregar la dirección IP de tu VM a la configuración de DNS para verificarlo.

Realiza la verificación con Search Console

  1. Abre Search Console y, luego, accede con la Cuenta de Google que usarás a fin de agregar un registro PTR a tu instancia. Puedes verificar la propiedad del dominio con varias cuentas.
  2. Ingresa el nombre de dominio PTR.
  3. Haz clic en Continuar.
  4. Sigue las instrucciones y, luego, haz clic en Ir a la propiedad.
  5. Haz clic en Configuración (que se encuentra en el menú de la izquierda, cerca de la parte inferior) y, luego, en Verificación de propiedad.

Después de verificar que tienes el dominio, en el panel Configuración, haz clic en Usuarios para ver otros propietarios verificados. Para agregar registros PTR en otros dominios, haz clic en el selector de propiedades a la izquierda que muestra tu dominio actual. Haz clic en Agregar una propiedad para agregar esos dominios.

Si tu nombre de dominio no se verifica de inmediato, utiliza el método recomendado para obtener la verificación.

Agrega la dirección IP de tu VM a tu configuración de DNS para realizar una verificación

  1. Si tu VM aún no existe, reserva una dirección IP externa estática regional y úsala más adelante durante la creación de la VM.
  2. Agrega un registro “A” con la dirección IP externa de la VM a la configuración de DNS de tu dominio.

Crea instancias de VM con registros PTR

Puedes especificar registros PTR cuando crees instancias nuevas. A fin de agregar un registro PTR para una instancia existente, consulta Agrega registros PTR.

Consola

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

    Ir a Crear una instancia

  2. Especifica los detalles de la VM.

  3. Expande la sección Opciones avanzadas y sigue estos pasos:

    1. Expande la sección Herramientas de redes.
    2. Crea una o más interfaces de red para usar con esta VM. Como alternativa, puedes usar la interfaz de red predeterminada.
    3. En la sección Interfaces de red, expande la primera interfaz de red, que es la interfaz de red principal.
    4. En la sección Registro PTR de DNS público, selecciona cada tipo de registro PTR que deseas agregar.
    5. En el campo Nombre de dominio PTR, ingresa un nombre de dominio para cada tipo de registro PTR que deseas agregar.
    6. En el campo Dirección IPv4 externa o Dirección IPv6 externa, elige la dirección IP reservada con anterioridad. Si verificaste la dirección IP de tu VM a través de tu configuración de DNS, debes especificar esa dirección.
    7. Para confirmar la configuración de la interfaz de red, haz clic en Listo.
  4. Configura las propiedades restantes de tu nueva VM.

  5. Al final de la página, haz clic en Crear.

Después de que se inicie la VM, puedes ejecutar una búsqueda de DNS inversa en la dirección IP externa de tu VM para confirmar que el registro PTR funciona como se espera.

gcloud

  • Para crear una instancia nueva con un registro PTR IPv4 asociado, usa el comando gcloud instances create.

    gcloud compute instances create INSTANCE_NAME \
        --image-family IMAGE_FAMILY \
        --image-project IMAGE_PROJECT \
        --public-ptr \
        --public-ptr-domain DOMAIN_NAME \
        --address=IP_ADDRESS
    

    Reemplaza lo siguiente:

    • INSTANCE_NAME: El nombre de la instancia de VM nueva.
    • IMAGE_FAMILY: una de las familias de imágenes disponibles
    • IMAGE_PROJECT: El proyecto de Google Cloud en el que se resuelven todas las referencias a imágenes y familias de imágenes. Si no proporcionas un nombre de proyecto, se usa el proyecto predeterminado actual.
    • DOMAIN_NAME: el nombre de dominio que se agregará a esta instancia.
    • IP_ADDRESS: la dirección IP reservada con anterioridad. Si verificaste la dirección IP de tu VM a través de tu configuración de DNS, debes especificar esa dirección.
  • Para crear una instancia nueva con un registro PTR IPv6 asociado, haz lo siguiente:

    1. Crea una VM de doble pila.
    2. Agrega un registro PTR IPv6.

REST

  • Para crear una instancia nueva con un registro PTR IPv4, realiza una solicitud POST al método instances.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    {
      "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
      "name": "INSTANCE_NAME",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-10"
          },
          "boot": true
        }
      ],
      "networkInterfaces": [
        {
          "network": "NETWORK",
          "accessConfigs": [
            {
              "type": "ONE_TO_ONE_NAT",
              "name": "External NAT",
              "natIP": "IP_ADDRESS",
              "publicPtrDomainName": "DOMAIN_NAME",
              "setPublicPtr": true
            }
          ]
        }
      ]
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID de tu proyecto.
    • ZONE: La zona de la instancia.
    • MACHINE_TYPE: Es el tipo de máquina.
    • INSTANCE_NAME: El nombre de la instancia.
    • NETWORK: la URL de la red.
    • IP_ADDRESS: la dirección IP reservada con anterioridad. Si verificaste la dirección IP de tu VM a través de tu configuración de DNS, debes especificar esa dirección.
    • DOMAIN_NAME: Es el nombre de dominio que se agregará.
  • Para crear una instancia nueva con un registro PTR IPv6, haz lo siguiente:

    1. Crea una VM de doble pila.
    2. Agrega un registro PTR IPv6.

Agrega registros PTR

Para agregar registros PTR, actualiza la configuración de acceso en la interfaz de red principal, nic0, de una instancia de VM.

Consola

  1. En la consola de Google Cloud, ve a la página Instancias de VM.

    Ir a Instancias de VM

  2. Selecciona la instancia que deseas borrar.

  3. Haga clic en Editar.

  4. En la sección Interfaces de red, haz clic en la interfaz de la red principal.

  5. En la sección Registro PTR de DNS público, selecciona cada tipo de registro PTR que deseas agregar.

  6. En el campo Nombre de dominio PTR, ingresa un nombre de dominio para cada tipo de registro PTR que deseas agregar.

  7. Haz clic en Listo y, luego, en Guardar.

gcloud

  1. Si la VM no tiene una configuración de acceso, agrega una con el comando gcloud compute instances add-access-config.

    gcloud compute instances add-access-config INSTANCE_NAME
    

    Reemplaza INSTANCE_NAME por el nombre de tu instancia.

  2. Actualiza la configuración de acceso para agregar el registro PTR con el comando gcloud compute instances update-access-config. Para agregar registros PTR IPv4 e IPv6, usa los siguientes comandos de forma individual.

    • Para IPv4:

      gcloud compute instances update-access-config INSTANCE_NAME \
          --public-ptr \
          --public-ptr-domain DOMAIN_NAME
      
    • Para IPv6:

      gcloud compute instances update-access-config INSTANCE_NAME \
          --ipv6-public-ptr-domain=DOMAIN_NAME
      

    Reemplaza lo siguiente:

    • INSTANCE_NAME: Es el nombre del ejemplar que se actualizará.
    • DOMAIN_NAME: Es el nombre de dominio que se agregará.

REST

  1. Si la VM no tiene una configuración de acceso, agrega una mediante una solicitud POST al método instances.addAccessConfig.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addAccessConfig?networkInterface="nic0"
    
  2. Actualiza la configuración de acceso para agregar el registro PTR mediante una solicitud POST al método instances.updateAccessConfig. Para agregar registros PTR IPv4 e IPv6, realiza las siguientes solicitudes de forma individual.

    • Para IPv4:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
      {
        "setPublicPtr": true,
        "publicPtrDomainName": "DOMAIN_NAME",
        "type": "ONE_TO_ONE_NAT"
      }
      
    • Para IPv6:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
      {
        "publicPtrDomainName": "DOMAIN_NAME",
        "type": "DIRECT_IPV6"
      }
      

    Reemplaza lo siguiente:

    • PROJECT_ID: El ID del proyecto.
    • ZONE: La zona de la instancia.
    • INSTANCE_NAME: Es el nombre de la instancia.
    • DOMAIN_NAME: Es el nombre de dominio que se agregará.

Quita registros PTR

Para quitar registros PTR, actualiza la configuración de acceso en la interfaz de red principal, nic0, de una instancia de VM. Cuando quitas un registro PTR, Google Cloud responde a búsquedas de DNS inversas con un nombre de dominio predeterminado completamente calificado de googleusercontent.com.

Consola

  1. En la consola de Google Cloud, ve a la página Instancias de VM.

    Ir a Instancias de VM

  2. Selecciona la instancia que deseas borrar.

  3. Haga clic en Editar.

  4. En la sección Interfaces de red, haz clic en la interfaz de red principal.

  5. En la sección Registro PTR de DNS público, desmarca la casilla de verificación de cada tipo de registro PTR que deseas quitar.

  6. Haz clic en Listo y, luego, en Guardar.

gcloud

Para quitar un registro PTR, usa el comando gcloud compute instances update-access-config. Para quitar los registros PTR IPv4 e IPv6, usa los siguientes comandos por separado.

  • Para IPv4:

    gcloud compute instances update-access-config INSTANCE_NAME \
        --no-public-ptr
    
  • Para IPv6:

    gcloud compute instances update-access-config INSTANCE_NAME \
        --no-ipv6-public-ptr
    

Reemplaza INSTANCE_NAME por el nombre del ejemplar que deseas actualizar.

REST

Para quitar un registro PTR, realiza una solicitud POST al método instances.updateAccessConfig. Para quitar los registros PTR IPv4 e IPv6, realiza las siguientes solicitudes de forma individual.

  • Para IPv4:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
    {
      "setPublicPtr": false,
      "type": "ONE_TO_ONE_NAT"
    }
    
  • Para IPv6:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
    {
      "publicPtrDomainName": "",
      "type": "DIRECT_IPV6"
    }
    

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto.
  • ZONE: La zona de la instancia.
  • INSTANCE_NAME: Es el nombre de la instancia.

Limitaciones

  • Cuando una VM se migra a otro host como parte del proceso de migración en vivo durante los eventos de mantenimiento, la lógica del registro PTR no maneja algunos casos extremos de forma correcta y revierte los registros PTR de DNS al nombre de dominio completamente calificado (FQDN) googleusercontent.com. Para restablecer la funcionalidad, vuelve a aplicar el registro PTR.

  • Cuando detienes una VM que tiene un registro PTR IPv6, el registro PTR IPv6 se cancela de forma temporal y no es visible en la VM. El registro se vuelve a agregar de forma automática cuando reinicias la VM.

¿Qué sigue?