Configura el Acceso privado a Google para hosts locales

El Acceso privado a Google para hosts locales proporciona una forma de conectar sistemas locales a los servicios y las APIs de Google mediante el enrutamiento del tráfico a través de un túnel de Cloud VPN o un adjunto de VLAN para Cloud Interconnect. El Acceso privado a Google para hosts locales es una alternativa para conectarse a los servicios y a la API de Google a través de Internet.

En este documento, se describe cómo habilitar el Acceso privado a Google para hosts locales.

Especificaciones y requisitos

El Acceso privado a Google para hosts locales tiene los siguientes requisitos:

  • El Acceso privado a Google no habilita de forma automática ninguna API. Debes habilitar por separado las APIs de Google que pecesitas mediante la página de APIs y servicios en la consola de Google Cloud.

  • Debes dirigir el tráfico de los servicios y las API de Google que envían los sistemas locales a las direcciones IP asociadas con los nombres de dominio especiales private.googleapis.com o restricted.googleapis.com. Para obtener detalles sobre a qué servicios se puede acceder en cada dominio, consulta Opciones de dominio.

  • Tu red local debe estar conectada a una red de VPC mediante túneles de Cloud VPN o adjuntos de VLAN.

  • La red de VPC a la que está conectada tu red local debe tener rutas adecuadas para los rangos de IP de destino private.googleapis.com o restricted.googleapis.com. Para obtener más detalles, consulta Enrutamiento de red de VPC.

  • La red de VPC a la que está conectada tu red local debe tener rutas adecuadas para llegar a la red local. Los túneles de Cloud VPN o los adjuntos de VLAN de siguiente salto que se conectan a la red local para estas rutas deben estar dentro de la misma región en la que se originó la solicitud. Si el siguiente salto se encuentra en una región diferente de donde se originó la solicitud al Acceso privado a Google, la respuesta del Acceso privado a Google no llegará a la red local.

  • Tu red local debe tener rutas para los rangos de IP de destino private.googleapis.com o restricted.googleapis.com. Estas rutas deben dirigir el tráfico al túnel de Cloud VPN o al adjunto de VLAN apropiado que se conecta a tu red de VPC. Para obtener más detalles, consulta Enrutamiento local con Cloud Router.

  • Para permitir que los clientes IPv6 de tu entorno local accedan a las APIs de Google mediante private.googleapis.com o restricted.googleapis.com, debes configurar la conexión a la red de VPC para que sea compatible con IPv6. Si deseas obtener más información, consulta las siguientes páginas:

  • Los clientes locales pueden enviar solicitudes desde cualquier dirección IPv6 GUA o ULA, excepto el rango ULA fda3:e722:ac3:cc00::/64, que está reservado para uso interno.

Permisos

Los propietarios del proyecto, los editores y los principales de IAM con la función de administrador de red pueden crear o actualizar las subredes y asignar direcciones IP.

Para obtener más información sobre los roles, consulta la documentación sobre los roles de IAM.

Configuración de red

El Acceso privado a Google para hosts locales tiene requisitos de red específicos de los sistemas locales y la red de VPC mediante la cual los sistemas locales envían tráfico a los servicios y las API de Google.

Opciones de dominio

El Acceso privado a Google para hosts locales requiere que dirijas los servicios a uno de los siguientes dominios especiales. El dominio especial que elijas determina a qué servicios puedes acceder.

Las VIP private.googleapis.com y restricted.googleapis.com solo admiten protocolos basados en HTTP en TCP (HTTP, HTTPS y HTTP/2). No se admite ningún otro protocolo, incluidos ICMP y MQTT.

Rangos de direcciones IP y de dominio Servicios compatibles Ejemplo de uso

private.googleapis.com

199.36.153.8/30

2600:2d00:0002:2000::/64

Habilita el acceso a la mayoría de los servicios y las APIs de Google, sin importar si son compatibles con los Controles del servicio de VPC. Incluye acceso a la API de Google Maps, Google Ads, Google Cloud y la mayoría de las otras APIs de Google, incluida la siguiente lista. Es compatible con las aplicaciones web de Google Workspace, como Gmail y Documentos de Google. No es compatible con ningún sitio web interactivo.

Nombres de dominio que coinciden:

  • accounts.google.com (solo las rutas de acceso necesarias para la autenticación OAuth)
  • *.aiplatform-notebook.cloud.google.com
  • *.aiplatform-notebook.googleusercontent.com
  • appengine.google.com
  • *.appspot.com
  • *.backupdr.cloud.google.com
  • backupdr.cloud.google.com
  • *.backupdr.googleusercontent.com
  • backupdr.googleusercontent.com
  • *.cloudfunctions.net
  • *.cloudproxy.app
  • *.composer.cloud.google.com
  • *.composer.googleusercontent.com
  • *.datafusion.cloud.google.com
  • *.datafusion.googleusercontent.com
  • *.dataproc.cloud.google.com
  • dataproc.cloud.google.com
  • *.dataproc.googleusercontent.com
  • dataproc.googleusercontent.com
  • dl.google.com
  • gcr.io o *.gcr.io
  • *.googleapis.com
  • *.gstatic.com
  • *.kernels.googleusercontent.com
  • *.ltsapis.goog
  • *.notebooks.cloud.google.com
  • *.notebooks.googleusercontent.com
  • packages.cloud.google.com
  • pkg.dev o *.pkg.dev
  • pki.goog o *.pki.goog
  • *.run.app
  • source.developers.google.com
  • storage.cloud.google.com

Usa private.googleapis.com para acceder a las API y a los servicios de Google mediante un conjunto de direcciones IP que solo se pueden enrutar desde Google Cloud.

Elige private.googleapis.com en estas circunstancias:

  • Si no usas los Controles del servicio de VPC.
  • Debes usar los Controles del servicio de VPC, así como acceder a los servicios y las API de Google que no son compatibles con estos controles. 1

restricted.googleapis.com

199.36.153.4/30

2600:2d00:0002:1000::/64

Habilita el acceso a la API a los servicios y las APIs de Google que son compatibles con los Controles del servicio de VPC.

Bloquea el acceso a los servicios y a las APIs de Google que son incompatibles con los Controles del servicio de VPC. Es incompatible con las API de Google Workspace y con las aplicaciones web de Google Workspace, como Gmail y Documentos de Google.

Usa restricted.googleapis.com para acceder a las APIs y a los servicios de Google mediante un conjunto de direcciones IP que solo se pueden enrutar desde Google Cloud.

Elige restricted.googleapis.com solo cuando necesites acceso a los servicios y las APIs de Google que son compatibles con los Controles del servicio de VPC.

El dominio restricted.googleapis.com no permite el acceso a las APIs y los servicios de Google que no son compatibles con los Controles del servicio de VPC. 1

1. Si necesitas restringir los usuarios solo a los servicios y las APIs de Google compatibles con los Controles del servicio de VPC, usa restricted.googleapis.com, ya que proporciona una mitigación de riesgos adicional para el robo de datos. Usar restricted.googleapis.com rechaza el acceso a los servicios y a las APIs de Google que no son compatibles con los Controles del servicio de VPC. Consulta Configura una conectividad privada en la documentación de los Controles del servicio de VPC para obtener más información.

Compatibilidad con IPv6 para private.googleapis.com y restricted.googleapis.com

Los siguientes rangos de direcciones IPv6 se pueden usar para dirigir el tráfico de los clientes IPv6 a los servicios y las APIs de Google:

  • private.googleapis.com: 2600:2d00:0002:2000::/64
  • restricted.googleapis.com: 2600:2d00:0002:1000::/64

Considera configurar las direcciones IPv6 si deseas usar el dominio private.googleapis.com o restricted.googleapis.com y tienes clientes que usan direcciones IPv6. Los clientes IPv6 que también tienen direcciones IPv4 configuradas pueden acceder a los servicios y las APIs de Google mediante las direcciones IPv4. No todos los servicios aceptan tráfico de clientes IPv6.

Configuración del DNS

Tu red local debe tener las zonas de DNS y los registros configurados para que los nombres de dominio de Google se resuelvan en el conjunto de direcciones IP de private.googleapis.com o restricted.googleapis.com. Puedes crear zonas privadas administradas de Cloud DNS y usar una política de servidor entrante de Cloud DNS, o configurar servidores de nombres locales. Por ejemplo, puedes usar BIND o Microsoft Active Directory DNS (DNS de Active Directory de Microsoft).

En las siguientes secciones se describe cómo usar las zonas del DNS para enviar paquetes a las direcciones IP asociadas con la VIP elegida. Sigue las instrucciones para todas las situaciones que se aplican a tu caso:

Cuando configures los registros DNS para VIPs, usa solo las direcciones IP que se describen en los siguientes pasos. No mezcles direcciones de los VIP private.googleapis.com y restricted.googleapis.com. Esto puede causan fallas intermitentes, porque los servicios que se ofrecen difieren según el destino del paquete.

Configura el DNS para googleapis.com

Crea una zona de DNS y registros para googleapis.com:

  1. Crea una zona de DNS privada para googleapis.com. Se recomienda crear una zona privada de Cloud DNS para este propósito.
  2. En la zona googleapis.com, crea los siguientes registros DNS privados para private.googleapis.com o restricted.googleapis.com, según el dominio que elijas usar.

    • Para private.googleapis.com:

      1. Crea un registro A para private.googleapis.com que apunte a las siguientes direcciones IP: 199.36.153.8, 199.36.153.9, 199.36.153.10 y 199.36.153.11.

      2. Si deseas conectarte a las APIs mediante direcciones IPv6, también configura un registro AAAA para private.googleapis.com que apunte a 2600:2d00:0002:2000::.

    • Para restricted.googleapis.com:

      1. Crea un registro A para restricted.googleapis.com que apunte a las siguientes direcciones IP: 199.36.153.4, 199.36.153.5, 199.36.153.6 y 199.36.153.7.

      2. Si deseas conectarte a las APIs mediante direcciones IPv6, también debes crear un registro AAAA para restricted.googleapis.com que apunte a 2600:2d00:0002:1000::.

    Para crear registros DNS privados en Cloud DNS, consulta Agrega un registro.

  3. En la zona googleapis.com, crea un registro CNAME para *.googleapis.com que dirija al dominio que configuraste: private.googleapis.com o restricted.googleapis.com.

Configura DNS para otros dominios

Algunos servicios y APIs de Google se proporcionan a través de nombres de dominio adicionales, incluidos *.gcr.io, *.gstatic.com, *.pkg.dev, pki.goog, y *.run.app Consulta la tabla de rangos de direcciones IP y dominios en Opciones de dominio para determinar si se puede acceder a los servicios del dominio adicional mediante private.googleapis.com o restricted.googleapis.com. Luego, para cada uno de los dominios adicionales, sigue estos pasos:

  1. Crea una zona de DNS para DOMAIN (por ejemplo, gcr.io). Si usas Cloud DNS, asegúrate de que esta zona se encuentre en el mismo proyecto que la zona privada googleapis.com.

  2. En esta zona de DNS, crea los siguientes registros DNS para private.googleapis.com o restricted.googleapis.com, según el dominio que elijas.

    • Para private.googleapis.com:

      1. Crea un registro A para DOMAIN que apunte a las siguientes direcciones IP: 199.36.153.8, 199.36.153.9, 199.36.153.10 y 199.36.153.11.

      2. Si deseas conectarte a las APIs mediante direcciones IPv6, también debes crear un registro AAAA para DOMAIN que apunte a 2600:2d00:0002:2000::.

    • Para restricted.googleapis.com:

      1. Crea un registro A para DOMAIN que apunte a las siguientes direcciones IP: 199.36.153.4, 199.36.153.5, 199.36.153.6 y 199.36.153.7.

      2. Si deseas conectarte a las APIs mediante direcciones IPv6, también debes crear un registro AAAA para restricted.googleapis.com que apunte a 2600:2d00:0002:1000::.

  3. En la zona DOMAIN, crea un registro CNAME para *.DOMAIN que apunte a DOMAIN. Por ejemplo, crea un registro CNAME para *.gcr.io que apunte a gcr.io.

Configura DNS para los nombres de dominio personalizados de Cloud Storage

Si usas buckets de Cloud Storage y envías solicitudes a un nombre de dominio personalizado de Cloud Storage, no es suficiente configurar los registros DNS para que el nombre de dominio personalizado de Cloud Storage apunte a las direcciones IP de private.googleapis.com o restricted.googleapis.com para permitir el acceso a los buckets de Cloud Storage.

Si deseas enviar solicitudes a un nombre de dominio personalizado de Cloud Storage, también debes establecer de manera explícita el encabezado del host de la solicitud HTTP y la SNI de TLS en storage.googleapis.com Las direcciones IP deprivate.googleapis.com y restricted.googleapis.com no admiten nombres de host personalizados de Cloud Storage en los encabezados del host de la solicitud HTTP ni en las SNI de TLS.

Configura DNS para sistemas locales

Si implementaste la configuración de DNS mediante Cloud DNS, deberás configurar los sistemas locales para que puedan realizar consultas en tus zonas privadas administradas de Cloud DNS:

  • Crea una política del servidor de entrada en la red de VPC a la que se conecta tu red local.
  • Identifica los puntos de entrada de reenvío entrantes, en las regiones en las que se encuentran los túneles de Cloud VPN y los adjuntos de VLAN, en la red de VPC a la que tu red local se conecta.
  • Configura los sistemas locales y los servidores de nombres de DNS locales para reenviar googleapis.com y cualquiera de los nombres de dominio adicionales a un punto de entrada de reenvío entrante en la misma región que el túnel de Cloud VPN o el adjunto de VLAN que se conecta a la red de VPC.

Enrutamiento de la red de VPC

La red de VPC a la que se conecta tu red local debe tener rutas para los rangos de direcciones IP que usan private.googleapis.com o restricted.googleapis.com. Estas rutas deben usar el siguiente salto de puerta de enlace de Internet predeterminado.

Google no publica rutas en Internet para los rangos de direcciones IP que usan los dominios private.googleapis.com o restricted.googleapis.com. En consecuencia, aunque las rutas en la red de VPC envían tráfico al siguiente salto de la puerta de enlace de Internet predeterminada, los paquetes enviados a esos rangos de direcciones IP permanecen dentro de la red de Google.

Si la red de VPC a la que se conecta tu red local contiene una ruta predeterminada, cuyo siguiente salto es la puerta de enlace de Internet predeterminada, esa ruta cumple con los requisitos de enrutamiento del Acceso privado a Google para hosts locales.

Enrutamiento personalizado de la red de VPC

Si reemplazaste o cambiaste la ruta predeterminada, asegúrate de tener las rutas estáticas personalizadas configuradas para los rangos de IP de destino que usan private.googleapis.com o restricted.googleapis.com. A fin de verificar la configuración de las rutas personalizadas para las API y los servicios de Google en una red determinada, sigue estas instrucciones.

Console

  1. En la consola de Google Cloud, ve a la página Supervisión.

    Ir a Rutas

  2. Usa el texto Filtrar tabla para filtrar la lista de rutas en función de los siguientes criterios, pero reemplaza NETWORK_NAME por el nombre de la red de VPC a la que se conecta tu red local:

    • Red: NETWORK_NAME
    • Tipo de salto siguiente: default internet gateway
  3. Observa la columna Rango de IP de destino para cada ruta. Busca una ruta cuyo rango de destino coincida:

    • 199.36.153.8/30 si elegiste private.googleapis.com
    • 199.36.153.4/30 si elegiste restricted.googleapis.com

gcloud

Usa el siguiente comando de gcloud y reemplaza NETWORK_NAME por el nombre de la red de VPC a la que se conecta tu red local:

gcloud compute routes list \
    --filter="default-internet-gateway NETWORK_NAME"

Las rutas se enumeran en el formato de la tabla, a menos que personalices el comando con la marca --format. Busca en la columna DEST_RANGE una ruta cuyo rango de destino coincida:

  • 199.36.153.8/30 si elegiste private.googleapis.com
  • 199.36.153.4/30 si elegiste restricted.googleapis.com

Si necesitas crear rutas en tu red de VPC, consulta Agrega una ruta estática.

Enrutamiento local con Cloud Router

Las rutas en tu red local deben configurarse para dirigir el tráfico de los rangos de direcciones IP que usan los dominios private.googleapis.com o restricted.googleapis.com a los túneles de Cloud VPN o los adjuntos de VLAN del siguiente salto que se conectan a la red de VPC.

Puedes usar los anuncios de ruta personalizados de Cloud Router para anunciar rutas para los rangos de IP que usan los dominios private.googleapis.com y restricted.googleapis.com.

Las rutas IPv6 solo se anuncian en las sesiones de BGP en las que IPv6 está habilitado.

Console

A fin de actualizar el modo de anuncio de ruta para todas las sesiones de BGP en un Cloud Router, excepto las sesiones de BGP que usan anuncios BGP personalizados, sigue estos pasos:

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

    Ir a Cloud Routers

  2. Selecciona el Cloud Router que administra las sesiones de BGP para los túneles de Cloud VPN o los adjuntos de VLAN que conectan tu red local a tu red de VPC.

  3. En la página de detalles de Cloud Router, haz clic en Editar.

  4. Expande la sección Rutas anunciadas.

  5. En Rutas, selecciona Crear rutas personalizadas.

  6. Si quieres anunciar todas las rutas de subredes disponibles para Cloud Router, selecciona Anuncia todas las subredes visibles para Cloud Router. Esta configuración replica la predeterminada en tu configuración personalizada.

  7. Para cada ruta anunciada que quieras agregar, haz lo siguiente:

    1. Selecciona Add custom route.
    2. En Fuente, selecciona Rango de IP personalizado.
    3. En Rango de direcciones IP, ingresa uno de los rangos que quieras usar:
      • Si usas private.googleapis.com:
        • Para la conectividad IPv4: 199.36.153.8/30
        • Para la conectividad IPv6: 2600:2d00:0002:2000::/64
      • Si usas restricted.googleapis.com:
        • Para la conectividad IPv4: 199.36.153.4/30
        • Para la conectividad IPv6: 2600:2d00:0002:1000::/64
    4. Haz clic en Listo.
  8. Cuando termines de agregar las rutas, selecciona Guardar.

Para actualizar el modo de anuncio de ruta para una sesión de BGP en particular, haz lo siguiente:

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

    Ir a Cloud Routers

  2. Selecciona el Cloud Router que administra la sesión de BGP para un túnel de Cloud VPN o un adjunto de VLAN que conecta tu red local a tu red de VPC.

  3. En la página de detalles de Cloud Router, selecciona la sesión de BGP que quieres actualizar.

  4. En la página de detalles de la sesión de BGP, haz clic en Editar.

  5. En Rutas, selecciona Crear rutas personalizadas.

  6. Selecciona Anunciar todas las subredes visibles para Cloud Router a fin de anunciar todas las rutas de las subredes disponibles en Cloud Router si deseas el provocar el comportamiento predeterminado de Cloud Router.

  7. Para cada ruta anunciada que quieras agregar, haz lo siguiente:

    1. Selecciona Add custom route.
    2. En Fuente, selecciona Rango de IP personalizado.
    3. En Rango de direcciones IP, ingresa uno de los rangos que quieras usar:
      • Si usas private.googleapis.com:
        • Para la conectividad IPv4: 199.36.153.8/30
        • Para la conectividad IPv6: 2600:2d00:0002:2000::/64
      • Si usas restricted.googleapis.com:
        • Para la conectividad IPv4: 199.36.153.4/30
        • Para la conectividad IPv6: 2600:2d00:0002:1000::/64
    4. Haz clic en Listo.
  8. Cuando termines de agregar las rutas, selecciona Guardar.

gcloud

  1. Identifica el nombre y la región del Cloud Router que administra las sesiones de BGP en los túneles de Cloud VPN o los adjuntos de VLAN que conectan tu red local a la red de VPC.

  2. Usa compute routers update para actualizar el modo de anuncio de ruta en todas las sesiones de BGP de Cloud Router, excepto en las sesiones de BGP que usan anuncios de BGP personalizados:

    gcloud compute routers update ROUTER_NAME \
        --region=REGION \
        --advertisement-mode=CUSTOM \
        --set-advertisement-groups=ALL_SUBNETS \
        --set-advertisement-ranges=CUSTOM_RANGES
    

    Puedes agregar nuevos rangos de anuncios si ya usas el modo de anuncio CUSTOM para el Cloud Router. De esta forma, se actualiza el modo de anuncio de ruta en todas las sesiones de BGP de Cloud Router, excepto en las sesiones de BGP que usan anuncios BGP personalizados:

    gcloud compute routers update ROUTER_NAME \
        --region=REGION \
        --add-advertisement-ranges=CUSTOM_RANGES
    
  3. Como alternativa, usa compute routers update-bgp-peer para configurar un par de BGP específico en Cloud Router:

    Si agregas rangos personalizados IPv6, y si el tráfico IPv6 está inhabilitado para la sesión de BGP, puedes habilitarlo con la marca --enable-ipv6.

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --region=REGION \
        --peer-name=PEER_NAME \
        --advertisement-mode=CUSTOM \
        --set-advertisement-groups=ALL_SUBNETS \
        --set-advertisement-ranges=CUSTOM_RANGES
    

    Puedes agregar nuevos rangos de anuncios si ya usas el modo de anuncio CUSTOM para una sesión de BGP en un Cloud Router.

    Si agregas rangos personalizados IPv6, y si el tráfico IPv6 está inhabilitado para la sesión de BGP, puedes habilitarlo con la marca --enable-ipv6.

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --region=REGION \
        --peer-name=PEER_NAME \
        --add-advertisement-ranges=CUSTOM_RANGES
    

    En los comandos anteriores, reemplaza esta información por valores válidos:

Consideraciones del firewall

Las reglas de firewall de Google Cloud en la red de VPC a las que se conecta tu red local no afectan a lo siguiente:

  • Paquetes enviados mediante un túnel de Cloud VPN conectado a la red de VPC
  • Paquetes enviados mediante un adjunto de VLAN conectado a la red de VPC
  • Paquetes entrantes a direcciones IP de reenvío entrantes de Cloud DNS en la red de VPC

Debes asegurarte de que la configuración de firewall de los sistemas locales permita el tráfico saliente y las respuestas establecidas desde las direcciones IP adecuadas:

  • Si usas private.googleapis.com:
    • Para la conectividad IPv4: 199.36.153.8/30
    • Para la conectividad IPv6: 2600:2d00:0002:2000::/64
  • Si usas restricted.googleapis.com:
    • Para la conectividad IPv4: 199.36.153.4/30
    • Para la conectividad IPv6: 2600:2d00:0002:1000::/64
  • Cualquier dirección IP de reenvío entrante de Cloud DNS, si usas Cloud DNS para la configuración de DNS

¿Qué sigue?