Aceda a APIs a partir de VMs com endereços IP externos
Uma instância de máquina virtual (VM) com um endereço IP externo atribuído à respetiva interface de rede pode estabelecer ligação às APIs e aos serviços Google se os requisitos de rede descritos nesta página forem cumpridos. Embora a ligação seja feita a partir do endereço IP externo da VM, o tráfego permanece dentro da rede Trusted Cloud e não é enviado através da Internet pública.
Requisitos de rede
Tem de cumprir os seguintes requisitos para aceder às APIs e aos serviços Google a partir de uma VM com um endereço IP externo:
Se necessário, ative a API para os serviços aos quais quer aceder:
Se estiver a aceder a um ponto final de serviço da API Google, tem de ativar a API para esse serviço.
Por exemplo, para criar um contentor do Cloud Storage através do ponto final do serviço da API storage.s3nsapis.fr ou de uma biblioteca de cliente, tem de ativar a API Cloud Storage.
Se estiver a aceder a outros tipos de recursos, pode não ter de ativar APIs.
Por exemplo, para aceder a um contentor do Cloud Storage noutro projeto através do respetivo storage.s3nsapis.fr URL, não precisa de ativar a API Cloud Storage.
Se quiser estabelecer ligação às APIs e aos serviços Google através do IPv6, tem de cumprir estes dois requisitos:
A sua VM tem de estar configurada com um intervalo de endereços IPv6
/96
externo.O software em execução na VM tem de enviar pacotes cujas origens correspondam a um desses endereços IPv6 desse intervalo.
- Consoante a configuração escolhida, pode ter de atualizar as entradas DNS, os trajetos e as regras da firewall. Para mais informações, consulte o artigo Resumo das opções de configuração.
Resumo das opções de configuração
A tabela seguinte resume as diferentes formas de configurar o acesso privado à Google. Para obter informações de configuração mais detalhadas, consulte o artigo Configuração de rede.
Opção de domínio | Configuração de DNS | Configuração do encaminhamento | Configuração da firewall |
---|---|---|---|
Domínios predefinidos | Acede às APIs e aos serviços Google através dos respetivos endereços IP públicos, pelo que não é necessária nenhuma configuração de DNS especial. | Certifique-se de que a sua rede VPC pode encaminhar tráfego para os intervalos de endereços IP que são usados pelas APIs e serviços Google.
|
Certifique-se de que as suas regras de firewall permitem a saída para os intervalos de endereços IP usados pelas APIs e serviços Google. A regra de firewall de saída de permissão predefinida permite este tráfego, se não existir uma regra de prioridade superior que o bloqueie. |
private.googleapis.com
|
Configure registos de DNS numa zona DNS privada para enviar pedidos para os seguintes endereços IP: Para tráfego IPv4:
Para tráfego IPv6:
|
Certifique-se de que a sua rede VPC tem rotas para os seguintes intervalos de IP: Para tráfego IPv4:
Para tráfego IPv6:
|
Certifique-se de que as suas regras de firewall permitem a saída para os seguintes intervalos de IPs: Para tráfego IPv4:
Para tráfego IPv6:
|
restricted.googleapis.com
|
Configure registos DNS para enviar pedidos para os seguintes endereços IP: Para tráfego IPv4:
Para tráfego IPv6:
|
Certifique-se de que a sua rede VPC tem rotas para os seguintes intervalos de IP: Para tráfego IPv4:
Para tráfego IPv6:
|
Certifique-se de que as suas regras de firewall permitem a saída para os seguintes intervalos de IPs: Para tráfego IPv4:
Para tráfego IPv6:
|
Configuração da rede
Esta secção descreve os requisitos básicos da rede que tem de cumprir para que uma VM na sua rede VPC aceda às APIs e aos serviços Google.
Opções de domínio
Escolha o domínio que quer usar para aceder às APIs e aos serviços Google.
Os endereços IP virtuais (VIPs) private.googleapis.com
e restricted.googleapis.com
suportam apenas protocolos baseados em HTTP através de TCP (HTTP, HTTPS e HTTP/2). Todos os outros protocolos, incluindo MQTT e ICMP, não são suportados.
Os Websites e as funcionalidades interativas que usam a Internet, por exemplo, para redirecionamentos ou
obter conteúdo, não são suportados.
Domínio e intervalos de endereços IP | Serviços suportados | Exemplo de utilização |
---|---|---|
Domínios predefinidos. Todos os nomes de domínio para APIs e serviços Google, exceto
Vários intervalos de endereços IP: pode determinar um conjunto de intervalos de IP que contenham os possíveis endereços usados pelos domínios predefinidos consultando os endereços IP para os domínios predefinidos. |
Permite o acesso à API à maioria das APIs e serviços Google, independentemente de serem suportados pelos VPC Service Controls. Inclui acesso à API do Google Maps, Google Ads e Trusted Cloud. Inclui Aplicações Web do Google Workspace, como o Gmail e o Google Docs, e outras aplicações Web. |
Os domínios predefinidos são usados quando não configura registos de DNS para
|
|
Permite o acesso à API à maioria das APIs e serviços Google, independentemente de serem suportados pelos VPC Service Controls. Inclui acesso à API do Google Maps, Google Ads Trusted Cloude à maioria das outras APIs Google, incluindo a lista seguinte. Não suporta aplicações Web do Google Workspace, como o Gmail e o Google Docs. Nomes de domínio correspondentes:
|
Use Escolha
|
|
Ativa o acesso à API às APIs Google e aos serviços suportados pelo VPC Service Controls. Bloqueia o acesso a APIs e serviços Google que não suportam os VPC Service Controls. Não suporta APIs Google Workspace nem aplicações Web do Google Workspace, como o Gmail e o Google Docs. |
Use Escolha O domínio |
restricted.googleapis.com
, uma vez que oferece uma mitigação de riscos adicional para a exfiltração de dados. A utilização de restricted.googleapis.com
nega o acesso a
APIs Google e serviços que não são suportados pelos VPC Service Controls. Consulte o artigo
Configurar a conetividade
privada na documentação do VPC Service Controls para obter mais detalhes.
Suporte de IPv6 para private.googleapis.com
e restricted.googleapis.com
Os seguintes intervalos de endereços IPv6 podem ser usados para direcionar o tráfego de clientes IPv6 para APIs e serviços Google:
private.googleapis.com
:2600:2d00:0002:2000::/64
restricted.googleapis.com
:2600:2d00:0002:1000::/64
Considere configurar os endereços IPv6 se quiser usar o domínio private.googleapis.com
ou restricted.googleapis.com
e tiver clientes que usam endereços IPv6. Os clientes IPv6 que também tenham endereços IPv4 configurados podem aceder às APIs e aos serviços Google através dos endereços IPv4. Nem todos os serviços aceitam tráfego de clientes IPv6.
Configuração de DNS
Para a conetividade com as APIs e os serviços Google, pode optar por enviar pacotes para os endereços IP associados ao VIP private.googleapis.com
ou restricted.googleapis.com
. Para usar um VIP, tem de configurar o DNS para que as VMs na sua rede VPC alcancem os serviços através dos endereços VIP em vez dos endereços IP públicos.
As secções seguintes descrevem como usar zonas DNS para enviar pacotes para os endereços IP associados ao VIP escolhido. Siga as instruções para todos os cenários que se aplicam a si:
- Se usar serviços que tenham nomes de domínio
*.googleapis.com
, consulte o artigo Configurar o DNS paragoogleapis.com
. Se usar serviços que tenham outros nomes de domínio, consulte o artigo Configure o DNS para outros domínios.
Por exemplo, se usar o Google Kubernetes Engine (GKE), também tem de configurar
*.gcr.io
e*.pkg.dev
. Se usar o Cloud Run, tem de configurar*.run.app
.Se usar contentores do Cloud Storage e enviar pedidos para um nome de domínio personalizado do Cloud Storage, consulte o artigo Configurar o DNS para nomes de domínios personalizados do Cloud Storage.
Quando configurar os registos DNS para os VIPs, use apenas os endereços IP descritos nos passos seguintes. Não misture endereços de VIPs do grupo private.googleapis.com
e restricted.googleapis.com
. Isto pode causar falhas intermitentes porque os serviços oferecidos diferem com base no destino de um pacote.
Configure o DNS para googleapis.com
Crie uma zona DNS e registos para googleapis.com
:
- Crie uma zona DNS privada para
googleapis.com
. Considere criar uma zona privada do Cloud DNS para este fim. Na zona
googleapis.com
, crie os seguintes registos de DNS privados paraprivate.googleapis.com
ourestricted.googleapis.com
, consoante o domínio que optou por usar.Para
private.googleapis.com
:Crie um registo
A
paraprivate.googleapis.com
que aponte para os seguintes endereços IP:199.36.153.8
,199.36.153.9
,199.36.153.10
e199.36.153.11
.Para estabelecer ligação a APIs através de endereços IPv6, também tem de configurar um registo
AAAA
Aprivate.googleapis.com
que aponte para2600:2d00:0002:2000::
.
Para
restricted.googleapis.com
:Crie um registo
A
pararestricted.googleapis.com
que aponte para os seguintes endereços IP:199.36.153.4
,199.36.153.5
,199.36.153.6
e199.36.153.7
.Para estabelecer ligação a APIs através de endereços IPv6, também tem de criar um registo
AAAA
pararestricted.googleapis.com
que aponte para2600:2d00:0002:1000::
.
Para criar registos de DNS privados no Cloud DNS, consulte o artigo sobre como adicionar um registo.
Na zona
googleapis.com
, crie um registoCNAME
para*.googleapis.com
que aponte para o domínio que configurou:private.googleapis.com
ourestricted.googleapis.com
.
Configure o DNS para outros domínios
Algumas APIs e serviços Google são fornecidos através de nomes de domínio adicionais, incluindo *.gcr.io
, *.gstatic.com
, *.pkg.dev
, pki.goog
, *.run.app
e *.gke.goog
.
Consulte a tabela de intervalos de endereços IP e domínios nas Opções de domínio
para determinar se os serviços do domínio adicional podem ser acedidos através de private.googleapis.com
ou restricted.googleapis.com
. Em seguida, para cada um dos domínios adicionais:
Crie uma zona DNS para
DOMAIN
(por exemplo,gcr.io
). Se estiver a usar o Cloud DNS, certifique-se de que esta zona está localizada no mesmo projeto que a sua zona privadagoogleapis.com
.Nesta zona de DNS, crie os seguintes registos de DNS privados para
private.googleapis.com
ourestricted.googleapis.com
, consoante o domínio que optou por usar.Para
private.googleapis.com
:Crie um registo
A
paraDOMAIN
a apontar para os seguintes endereços IP:199.36.153.8
,199.36.153.9
,199.36.153.10
e199.36.153.11
.Para estabelecer ligação a APIs através de endereços IPv6, também tem de criar um registo
AAAA
paraDOMAIN
que aponte para2600:2d00:0002:2000::
.
Para
restricted.googleapis.com
:Crie um registo
A
paraDOMAIN
a apontar para os seguintes endereços IP:199.36.153.4
,199.36.153.5
,199.36.153.6
e199.36.153.7
.Para estabelecer ligação a APIs através de endereços IPv6, também tem de criar um registo
AAAA
pararestricted.googleapis.com
que aponte para2600:2d00:0002:1000::
.
Na zona
DOMAIN
, crie um registoCNAME
para*.DOMAIN
que aponte paraDOMAIN
. Por exemplo, crie um registoCNAME
para*.gcr.io
que aponte paragcr.io
.
Configure o DNS para nomes de domínio personalizados do Cloud Storage
Se estiver a usar contentores do Cloud Storage e enviar pedidos para um nome de domínio personalizado do Cloud Storage, a configuração de registos DNS para o nome de domínio personalizado do Cloud Storage de modo a apontar para os endereços IP de private.googleapis.com
ou restricted.googleapis.com
não é suficiente para permitir o acesso aos contentores do Cloud Storage.
Se quiser enviar pedidos para um nome do domínio personalizado do Cloud Storage, também tem de definir explicitamente o cabeçalho Host do pedido HTTP e o SNI TLS como storage.googleapis.com
. Os endereços IP de private.googleapis.com
e restricted.googleapis.com
não suportam nomes de anfitrião personalizados do Cloud Storage em cabeçalhos Host de pedidos HTTP e SNIs TLS.
Opções de encaminhamento
A sua rede VPC tem de ter rotas adequadas cujos próximos saltos sejam o gateway de Internet predefinido. Trusted Cloud não suporta o encaminhamento de tráfego para APIs e serviços Google através de outras instâncias de VMs ou próximos saltos personalizados. Apesar de ser denominado gateway de Internet predefinido, os pacotes enviados a partir de VMs na sua rede VPC para APIs e serviços Google permanecem na rede da Google.
Se selecionar os domínios predefinidos, as suas instâncias de VM ligam-se às APIs Google e aos serviços Google através de um subconjunto de endereços IP externos da Google. Estes endereços IP são encaminháveis publicamente, mas o caminho de uma VM numa rede VPC para esses endereços permanece na rede da Google.
A Google não publica rotas na Internet para nenhum dos endereços IP usados pelos domínios
private.googleapis.com
ourestricted.googleapis.com
. Consequentemente, estes domínios só podem ser acedidos por VMs numa rede VPC ou em sistemas no local ligados a uma rede VPC.
Se a sua rede VPC contiver uma rota predefinida cujo próximo salto seja a gateway de Internet predefinida, pode usar essa rota para aceder às APIs e aos serviços Google, sem ter de criar rotas personalizadas. Consulte o artigo Encaminhamento com uma rota predefinida para ver detalhes.
Se substituiu uma rota predefinida (destino 0.0.0.0/0
ou ::0/0
) por uma rota personalizada cujo próximo salto não é o gateway de Internet predefinido, pode cumprir os requisitos de encaminhamento para as APIs e os serviços Google através do encaminhamento personalizado.
Se a sua rede VPC não tiver uma rota predefinida IPv6, não tem conectividade IPv6 com as APIs e os serviços Google. Adicione um encaminhamento predefinido IPv6 para permitir a conetividade IPv6.
Encaminhamento com um trajeto predefinido
Cada rede VPC contém um encaminhamento predefinido IPv4 (0.0.0.0/0
) quando é criada. Se ativar endereços IPv6 externos numa sub-rede, é adicionado um
encaminhamento predefinido IPv6 gerado pelo sistema (::/0
) a essa rede
VPC.
As rotas predefinidas fornecem um caminho para os endereços IP dos seguintes destinos:
Os domínios predefinidos.
private.googleapis.com
:199.36.153.8/30
e2600:2d00:0002:2000::/64
.restricted.googleapis.com
:199.36.153.4/30
e2600:2d00:0002:1000::/64
.
Para verificar a configuração de uma rota predefinida numa determinada rede, siga estas instruções.
Consola
Na Trusted Cloud consola, aceda à página Rotas.
Filtre a lista de trajetos para mostrar apenas os trajetos da rede que precisa de inspecionar.
Procure um trajeto cujo destino seja
0.0.0.0/0
para tráfego IPv4 ou::/0
para tráfego IPv6 e cujo próximo salto seja gateway de Internet predefinido.
gcloud
Use o seguinte comando gcloud
, substituindo NETWORK_NAME
pelo nome da rede a inspecionar:
gcloud compute routes list \ --filter="default-internet-gateway NETWORK_NAME"
Se precisar de criar uma rota IPv4 predefinida de substituição, consulte o artigo Adicionar uma rota estática.
Se precisar de criar um encaminhamento IPv6 predefinido de substituição, consulte o artigo Adicionar um encaminhamento IPv6 predefinido.
Encaminhamento personalizado
Em alternativa a uma rota predefinida, pode usar rotas estáticas personalizadas, cada uma com um destino mais específico e cada uma a usar o próximo salto do gateway de Internet predefinido. O número de rotas de que precisa e os respetivos endereços IP de destino dependem do domínio que escolher.
- Domínios predefinidos: tem de ter rotas para os intervalos de endereços IP para APIs e serviços Google.
private.googleapis.com
:199.36.153.8/30
e2600:2d00:0002:2000::/64
restricted.googleapis.com
:199.36.153.4/30
e2600:2d00:0002:1000::/64
Além disso, recomendamos que adicione rotas para 34.126.0.0/18
e 2001:4860:8040::/42
. Para mais informações, consulte o Resumo das opções de configuração.
Para verificar a configuração de rotas personalizadas para APIs e serviços Google numa determinada rede, siga estas instruções.
Consola
Na Trusted Cloud consola, aceda à página Rotas.
Use o campo de texto Filtrar tabela para filtrar a lista de rotas usando os seguintes critérios, substituindo
NETWORK_NAME
pelo nome da sua rede VPC.- Rede:
NETWORK_NAME
- Tipo de salto seguinte:
default internet gateway
- Rede:
Consulte a coluna Intervalo de IPs de destino para cada trajeto. Se escolheu os domínios predefinidos, verifique se existem várias rotas estáticas personalizadas, uma para cada intervalo de endereços IP usado pelo domínio predefinido. Se escolheu
private.googleapis.com
ourestricted.googleapis.com
, procure o intervalo de IP desse domínio.
gcloud
Use o seguinte comando gcloud
, substituindo NETWORK_NAME
pelo nome da rede a inspecionar:
gcloud compute routes list \ --filter="default-internet-gateway NETWORK_NAME"
As rotas são apresentadas no formato de tabela, a menos que personalize o comando com a flag --format
. Procure a coluna DEST_RANGE
para ver o destino de cada
rota. Se escolheu os domínios predefinidos, verifique se existem várias rotas estáticas personalizadas, uma para cada intervalo de endereços IP usado pelo domínio predefinido. Se escolheu private.googleapis.com
ou
restricted.googleapis.com
, procure o intervalo de IP desse domínio.
Se precisar de criar rotas, consulte o artigo Adicionar uma rota estática.
Configuração da firewall
A configuração da firewall da sua rede VPC tem de permitir o acesso
das VMs aos endereços IP usados pelas APIs e pelos serviços Google. A regra allow egress
implícita cumpre este requisito.
Em algumas configurações de firewall, tem de criar regras de permissão de saída específicas.
Por exemplo, suponhamos que criou uma regra de recusa de saída que bloqueia o tráfego para todos os destinos (0.0.0.0
para IPv4 ou ::/0
para IPv6). Nesse caso, tem de criar uma regra de firewall de autorização de saída cuja prioridade seja superior à regra de negação de saída para cada intervalo de endereços IP usado pelo domínio escolhido para APIs e serviços Google.
- Domínios predefinidos: todos os intervalos de endereços IP para APIs Google e serviços.
private.googleapis.com
:199.36.153.8/30
e2600:2d00:0002:2000::/64
restricted.googleapis.com
:199.36.153.4/30
e2600:2d00:0002:1000::/64
Além disso, recomendamos que inclua 34.126.0.0/18
e 2001:4860:8040::/42
na regra de firewall de saída permitida. Para mais
informações, consulte o artigo Resumo das opções de configuração.
Para criar regras de firewall, consulte o artigo Criar regras de firewall. Pode limitar as VMs às quais as regras de firewall se aplicam quando define o alvo de cada regra de autorização de saída.
Endereços IP para domínios predefinidos
Esta secção descreve como criar uma lista de intervalos de IP de domínio predefinidos usados pelas APIs e pelos serviços Google, como *.googleapis.com
e *.gcr.io
. Estes intervalos são atribuídos dinamicamente e mudam com frequência, pelo que não é possível definir intervalos de IP específicos para serviços ou APIs individuais. Para manter uma lista precisa, configure a automatização para executar o script todos os dias. Para alternativas à manutenção de uma lista de intervalos de endereços IP, considere usar o
VIP private.googleapis.com
ou o Private Service Connect.
A Google publica a lista completa de intervalos de IP que disponibiliza aos utilizadores na Internet em goog.json.
A Google também publica uma lista de intervalos de endereços IP externos globais e regionais disponíveis para os recursos dos clientes no cloud.json. Trusted Cloud
Os endereços IP usados pelos domínios predefinidos para as APIs e os serviços Google enquadram-se na lista de intervalos calculados subtraindo todos os intervalos em cloud.json
aos intervalos em goog.json
. Estas listas são atualizadas com frequência.
Pode usar o seguinte script Python para criar uma lista de intervalos de endereços IP que incluem os usados pelos domínios predefinidos para APIs e serviços Google.
Para informações sobre a execução deste script, consulte o artigo Como executar.