Reservar um endereço IP interno e estático
Nesta página, mostramos como reservar e gerenciar endereços IPv4 ou IPv6 internos estáticos em redes de nuvem privada virtual (VPC).
Os endereços IP internos estáticos oferecem a capacidade de reservar endereços IP internos do intervalo de endereços IP configurado na sub-rede e, em seguida, atribuir esses endereços IP internos reservados aos recursos conforme necessário. Reservar um endereço IP interno remove esse endereço do pool de alocação dinâmico e impede que ele seja usado em alocações automáticas. Para reservar endereços IP internos estáticos, é necessário ter permissões específicas do Identity and Access Management (IAM) para que apenas usuários autorizados possam reservar um endereço IP interno estático.
Com a possibilidade de reservar endereços IP internos estáticos, você pode sempre usar o mesmo endereço IP para o mesmo recurso, mesmo que precise excluir e recriar o recurso.
Para reservar um endereço IP externo estático em vez de um endereço IP interno, consulte Reservar um endereço IP externo estático.
Antes de começar
- Leia sobre endereços IP.
- Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud. Para executar código ou
amostras em um ambiente de desenvolvimento local, faça a autenticação da maneira a seguir.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Terraform
Para usar os exemplos do Terraform nesta página em um ambiente de desenvolvimento local, instale e inicialize a gcloud CLI e, em seguida, configure o Application Default Credentials com suas credenciais de usuário.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local na documentação de autenticação do Google Cloud.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Funções exigidas
Para ter as permissões necessárias para reservar e gerenciar endereços IP estáticos, peça ao administrador para conceder a você o Administrador de rede do Compute (
roles/compute.networkAdmin
) do IAM no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Esse papel predefinido contém as permissões necessárias para reservar e gerenciar endereços IP estáticos. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para reservar e gerenciar endereços IP estáticos:
-
compute.addresses.create
-
compute.addresses.createInternal
compute.networks.list
-
compute.subnetworks.use
-
compute.subnetworks.list
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Limitações
Não é possível cancelar a atribuição ou alterar o endereço IPv4 interno de um recurso. Por exemplo, não é possível atribuir um novo endereço IP interno estático a uma instância de VM em execução ou interrompida. No entanto, é possível promover o endereço IP interno efêmero de um recurso para um endereço IP interno estático. Dessa maneira, o endereço permanecerá reservado, mesmo depois que o recurso for excluído.
O número de endereços IP internos estáticos que você pode reservar não pode exceder a cota do seu projeto. Para obter mais informações, consulte as cotas por projeto na documentação da VPC.
Somente um recurso por vez pode usar um endereço IP interno estático.
A reserva de um endereço IP interno estático só é aceita para redes VPC. Ela não é compatível com redes de modo legado.
Excluir recursos não libera automaticamente os endereços IP internos estáticos. Será necessário liberá-los manualmente se você não precisar mais deles.
Não é possível alterar o nome de um endereço IP estático.
Os endereços IP internos estáticos são regionais, o que significa que são restritos à região em que estão reservados. Por exemplo, se houver um endereço IP interno estático reservado em
Region A
, você só poderá usar o endereço IP emRegion A
.
Reservar um novo endereço IPv4 interno ou IPv6 estático
Antes de reservar um novo endereço IP interno estático, é preciso criar uma rede VPC com uma sub-rede.
Se você quiser reservar um novo endereço IPv6 interno estático, a rede VPC precisará ter o intervalo IPv6 interno do ULA ativado. Além disso, ela precisa ter uma sub-rede dupla com o tipo de acesso
INTERNAL
IPv6.Para reservar um endereço IP interno autônomo, conclua as etapas a seguir.
Console
- No console do Google Cloud, acesse a página Endereços IP.
- Clique em Reservar endereço IP estático interno. Talvez seja necessário clicar no menu Mais ações para ver esse botão.
- No campo Nome, digite um nome de endereço IP.
- Na lista Versão do IP, selecione a versão do IP necessária:
- Para reservar um endereço IPv4 interno estático, selecione IPv4.
- Para reservar um endereço IPv6 interno estático, selecione IPv6.
- Nas listas Rede e Sub-rede, selecione uma rede VPC e uma sub-rede, respectivamente.
- Especifique como você quer reservar o endereço IP:
- Para endereços IPv4, para especificar um endereço IPv4 interno estático a ser reservado, em Endereço IP estático, selecione Deixe-me escolher e insira um IP personalizado. . Caso contrário, o sistema atribuirá automaticamente um endereço IPv4 interno estático na sub-rede.
- Para endereços IPv6, o sistema atribui automaticamente um endereço IPv6 interno estático do intervalo de endereços IPv6 interno da sub-rede.
Opcional: para compartilhar o endereço IPv4 interno estático em diferentes front-ends, na lista Objetivo, escolha Compartilhado. A seleção padrão é Não compartilhado.
Clique em Reservar.
gcloud
Para reservar um endereço IPv4 interno, use o comando
compute addresses create
:gcloud compute addresses create ADDRESS_NAMES \ --region REGION --subnet SUBNETWORK \ --addresses IP_ADDRESS
Substitua:
ADDRESS_NAMES
: os nomes de um ou mais endereços[--purpose=SHARED_LOADBALANCER_VIP]
que você quer criar. No caso de vários endereços, especifique todos como uma lista, separados por espaços. Por exemplo,example-address-1 example-address-2 example-address-3
.REGION
: a região desta solicitaçãoSUBNETWORK
: a sub-rede deste endereço IP internoIP_ADDRESS
: o endereço IP a ser reservado, que precisa estar no intervalo de IP principal da sub-rede. Se não for especificado, um endereço IP será alocado automaticamente pela sub-rede.
Para reservar um endereço IPv6 interno, use o comando
compute addresses create
. EspecifiqueIPV6
como o valor de--ip-version
.gcloud compute addresses create ADDRESS_NAMES \ --region REGION --subnet SUBNETWORK \ --ip-version IPV6
Substitua:
ADDRESS_NAMES
: os nomes de um ou mais endereços que você quer reservar. No caso de vários endereços, especifique todos como uma lista, separados por espaços. Por exemplo:example-address-1 example-address-2 example-address-3
REGION
: a região desta solicitaçãoSUBNETWORK
: a sub-rede deste endereço IPv6 interno
Ao contrário da reserva IPv4 interna, a reserva IPv6 interna não é compatível com a reserva de um endereço IP específico da sub-rede. Em vez disso, um endereço IPv6 interno
/96
é alocado automaticamente do intervalo de endereços IPv6 interno/64
da sub-rede.
Exemplos
Reserve um endereço IPv4 interno alocado automaticamente de uma sub-rede:
gcloud compute addresses create example-address-1 \ --region us-central1 \ --subnet subnet-1
Reserve um endereço IPv4 interno específico de uma sub-rede:
gcloud compute addresses create example-address-1 \ --region us-central1 \ --subnet subnet-1 \ --addresses 10.128.0.12
Reserve um endereço IPv6 interno estático de uma sub-rede:
gcloud compute addresses create example-address-1 \ --region us-central1 \ --subnet subnet-1 \ --ip-version IPV6
Crie vários endereços IPv4 passando mais de um nome de endereço IPv4. Todos os endereços são reservados na mesma sub-rede:
gcloud compute addresses create example-address-1 example-address-2 \ --region us-central1 \ --subnet subnet-1 \ --addresses 10.128.0.12,10.128.0.13
Terraform
Use um módulo do Terraform (em inglês) para criar um endereço IP interno.
No exemplo a seguir, os argumentos do Terraform têm valores de exemplo que podem ser alterados. No exemplo, dois endereços IP internos específicos são criados:
No exemplo a seguir, criamos dois endereços IP internos alocados dinamicamente:
API
Use o método
addresses.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
Para endereços IPv4 e IPv6, o corpo da solicitação precisa incluir o campo
addressType
, que precisa serINTERNAL
, oname
do endereço e osubnetwork
ao qual o endereço IP pertence. O corpo da solicitação pode incluirpurpose
do endereço IP interno.Além disso, para endereços IPv4 internos, é possível permitir que o sistema aloque automaticamente um endereço IP para você ou use
address
para especificar um endereço IPv4 interno. O endereço IPV4 precisa pertencer ao intervalo de endereços IP principal da sub-rede.{ "addressType": "INTERNAL", "name": "IPV4_ADDRESS_NAME", "subnetwork": "regions/REGION/subnetworks/SUBNETWORK", "address": "IPV4_ADDRESS" "purpose": "GCE_ENDPOINT" }
Exemplo:
POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-central1/addresses { "addressType": "INTERNAL", "name": "example-ipv4-address-1", "subnetwork": "regions/us-central1/subnetworks/my-custom-subnet", "address": "10.128.0.12" "purpose": "GCE_ENDPOINT" }
Para endereços IPv6 internos, você também precisa especificar
ipVersion
comoIPV6
. O sistema atribui automaticamente um endereço IPv6 interno estático do intervalo de endereços IPv6 interno da sub-rede.{ "addressType": "INTERNAL", "name": "IPV6_ADDRESS_NAME", "ipVersion": "IPV6", "subnetwork": "regions/REGION/subnetworks/SUBNETWORK", "purpose": "GCE_ENDPOINT" }
Exemplo:
POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-central1/addresses { "addressType": "INTERNAL", "name": "example-ipv6-address-1", "ipVersion": "IPV6" "subnetwork": "regions/us-central1/subnetworks/my-custom-subnet", "purpose": "GCE_ENDPOINT" }
Reservar um intervalo de endereços IP internos estáticos para VPN de alta disponibilidade no Cloud Interconnect
É possível reservar um intervalo de endereços IP internos estáticos para usar com a VPN de alta disponibilidade no Cloud Interconnect.
Ao criar o endereço IP interno estático, é preciso especificar a sinalização
--purpose=IPSEC_INTERCONNECT
e um comprimento de prefixo (--prefix-length
) entre 26 e 29.Os endereços IPv4 internos regionais que você reserva são aplicados aos gateways de VPN de alta disponibilidade usados pelo Cloud Interconnect.
Para mais informações, consulte Atribuir intervalos de endereços IP internos a gateways da VPN de alta disponibilidade.
Determinar se um endereço IPv4 ou IPv6 interno é temporário ou estático
Os endereços IP internos estáticos e temporários se comportam e aparecem da mesma forma na maioria dos contextos. No entanto, com endereços IP internos estáticos, é possível usar o mesmo endereço IP para o mesmo recurso, mesmo que ele seja excluído e recriado. Em geral, um endereço IP temporário é liberado ao interromper ou excluir o recurso.
Para determinar se um endereço é estático ou temporário, faça o seguinte:
No console do Google Cloud, acesse a página Endereços IP.
Localize o endereço na lista e verifique o tipo de endereço IP na coluna Tipo.
Promover um endereço IPv4 ou IPv6 interno efêmero em uso a um endereço estático
Se tiver endereços IP internos efêmeros em uso, é possível promover esses endereços a endereços IP internos estáticos. Dessa forma, os endereços permanecerão com o projeto até você os remover ativamente.
Para promover um endereço IP interno temporário a um estático, conclua as etapas a seguir.
Console
- No console do Google Cloud, acesse a página Endereços IP.
- Clique em Endereços IP internos.
- Opcional: no campo Filtro, para pesquisar endereços IP temporários,
insira
ephemeral
e selecione Temporário : tipo na lista suspensa , - Selecione o endereço IP interno que você quer promover.
- No menu Mais ações ( ) no final da linha de exibição do endereço IP selecionado, escolha Promover a endereço IP estático. ,
- Insira um nome para o novo endereço IP estático e clique em Reservar.
gcloud
Antes de promover um endereço IPv6 interno efêmero, você precisa saber o valor desse endereço IP. Use a Google Cloud CLI para fazer uma solicitação
describe
ao recurso para conseguir o valor do endereço IP.Para uma instância com um endereço IPv4, use o seguinte comando:
gcloud compute instances describe INSTANCE_NAME --zone ZONE | grep "networkIP"
Para uma instância com um endereço IPv6, use o seguinte comando:
gcloud compute instances describe INSTANCE_NAME --zone ZONE | grep "ipv6Address"
Para uma regra de encaminhamento regional, use o seguinte comando:
gcloud compute forwarding-rules describe FORWARDING_RULE_NAME --region REGION | grep "IPAddress"
Para uma regra de encaminhamento global, use a sinalização
--global
em vez da sinalização--region
.
Promova o endereço:
Para promover um ou mais endereços IPv4, use o comando
compute addresses create
e forneça a sinalização--addresses
com endereços IP internos explícitos para promover:gcloud compute addresses create IPV4_ADDRESS_NAMES \ --addresses IPV4_ADDRESSES \ --region REGION \ --prefix-length PREFIX_LENGTH \ --subnet SUBNETWORK
Substitua:
IPV4_ADDRESS_NAMES
: os nomes dos endereços IPv4. No caso de vários endereços, especifique todos os nomes de endereço como uma lista, separados por espaços, por exemplo,example-address-name-1 example-address-name-2 example-address-name-3
. Declare os nomes na mesma ordem em que você declara os endereços IP. Por exemplo, suponha que você especifique os nomes dos endereços comoexample-address-name-1 example-address-name-2 example-address-name-3
e os endereços IPv4 como192.0.2.0 192.0.2.1 192.0.2.2
. Nesse cenário, o Compute Engine mapeia os nomes e endereços da seguinte maneira:example-address-name-1
:192.0.2.0
example-address-name-2
:192.0.2.1
example-address-name-3
:192.0.2.2
IPV4_ADDRESSES
: os endereços IPv4 a serem promovidos. No caso de vários endereços, especifique todos os endereços como uma lista, separados por espaços. Por exemplo:192.0.2.0 192.0.2.1 192.0.2.2
.REGION
: a região para reservar este endereço.PREFIX_LENGTH
: opcional. O comprimento do prefixo do intervalo de endereços IPv4. O valor precisa ser um número inteiro entre 7 e 31. Só inclua esse campo se você especificar um intervalo de endereços. Exclua o campo se o endereço IPv4 especificado for um único endereço IP.SUBNETWORK
: a sub-rede desta solicitação.
Para promover um ou mais endereços IPv6 internos existentes, use o comando
compute addresses create
e forneça a sinalização--addresses
com os endereços IPv6 internos explícitos:gcloud compute addresses create IPV6_ADDRESS_NAMES \ --addresses IPV6_ADDRESSES \ --region REGION \ --prefix-length PREFIX_LENGTH \ --subnet SUBNETWORK
Substitua:
IPV6_ADDRESS_NAMES
: os nomes do endereço. Declare os nomes na mesma ordem em que você declara os endereços IPv6. Nesse caso,IPV6_ADDRESS_NAME_1
corresponde aIPV6_ADDRESS_1
eIPV6_ADDRESS_NAME_2
corresponde aIPV6_ADDRESS_2
.IPV6_ADDRESS_1,[IPV6_ADDRESS_2,...]
: os endereços IPv6 a serem promovidos no formato CIDR.PREFIX_LENGTH_1,[PREFIX_LENGTH_2,...]
: o tamanho do prefixo dos endereços IPv6.REGION
: a região para reservar este endereço.SUBNETWORK
: a sub-rede desta solicitação.
O endereço IPv6 interno permanece anexado à instância, mesmo depois de ser promovido para um endereço IPv6 interno estático. Se você precisar atribuir o endereço IPv6 interno estático recém-promovido a outro recurso, primeiro cancele a atribuição do endereço IPv6 interno estático da instância que já existe.
API
Use o método
addresses.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
Para endereços IPv4 e IPv6, o corpo da solicitação precisa incluir
addressType
, que precisa serINTERNAL
,name
do endereço eaddress
para promover e osubnetwork
ao qual o endereço IP pertence. Para endereços IPv6, o corpo da solicitação precisa incluirprefixLength
com96
como valor.Corpo da solicitação para promover endereços IPv4 internos:
{ "name": "ADDRESS_NAME", "addressType": "INTERNAL", "address": "IP_ADDRESS", "subnetwork": "regions/REGION/subnetworks/SUBNETWORK" }
Exemplo:
POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-central1/addresses { "name": "example-IPv4-address-1", "addressType": "INTERNAL", "address": "10.128.0.2", "subnetwork": "regions/us-central1/subnetworks/my-custom-subnet" }
Corpo da solicitação para promover endereços IPv6 internos:
{ "name": "ADDRESS_NAME", "addressType": "INTERNAL", "address": "IP_ADDRESS", "subnetwork": "regions/REGION/subnetworks/SUBNETWORK" "prefixLength": 96 }
Exemplo:
POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-central1/addresses { "name": "example-IPv6-address-1", "addressType": "INTERNAL", "address": "fd20:0:0::", "subnetwork": "regions/us-central1/subnetworks/my-custom-subnet" "prefixLength": 96 }
Usar um endereço IPv4 ou IPv6 interno estático com a VPC compartilhada
Você pode criar um endereço IP interno estático reservado em uma sub-rede compartilhada de uma rede VPC compartilhada. O próprio objeto de endereço IP é criado no mesmo projeto de serviço do recurso que o usará, embora o valor do endereço IP venha do intervalo de endereços IP disponíveis em uma sub-rede compartilhada selecionada da rede VPC compartilhada. Para mais informações sobre esse caso de uso, consulte os seguintes recursos:
- A seção Endereços IP na Visão geral da VPC compartilhada
- A seção Reservar um endereço IPv4 ou IPv6 estático em Provisionar VPC compartilhada
Listar endereços IPv4 ou IPv6 internos estáticos
Para visualizar todos os endereços IP internos estáticos atuais, conclua as etapas a seguir.
Console
No console do Google Cloud, acesse a página Endereços IP.
Clique em Endereços IP internos.
gcloud
Use o comando
gcloud compute addresses list
:gcloud compute addresses list
API
Use o método
addresses.list
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
Substitua:
PROJECT_ID
: o ID do projeto desta solicitaçãoREGION
: o nome da região para essa solicitação
Para listar todos os endereços em todas as regiões, use o método
addresses.aggregatedList
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/addresses
Excluir um endereço IPv4 ou IPv6 interno estático
Se você não precisar mais de um endereço IP interno estático, libere o endereço IP excluindo o recurso de endereço IP.
Se você estiver usando o console do Google Cloud, só poderá liberar um endereço IP estático se ele não estiver sendo usado por outro recurso.
Se você estiver usando a CLI gcloud ou API, poderá liberar um endereço IP, esteja ele sendo usado ou não por outro recurso.
Se o endereço IP não estiver sendo usado por um recurso, ele será retornado ao pool de endereços IP internos disponíveis.
Se o endereço IP estiver sendo usado por um recurso, ele permanecerá anexado ao recurso até o recurso ser excluído.
Para liberar um endereço IPv4 ou IPv6 interno e estático, siga as etapas abaixo.
Console
- No console do Google Cloud, acesse a página Endereços IP.
- Selecione a guia Endereços IP internos.
- Opcional: no campo Filtro, digite
static
e selecione Estático : tipo na lista suspensa. - Selecione o endereço IP interno estático que você quer liberar.
Clique em Liberar endereço estático e confirme essa operação clicando em Liberar na caixa de diálogo.
Se essa opção não estiver disponível, clique no menu Mais ações (
) na barra de menus superior e selecione Liberar endereço estático da lista.
gcloud
Use o comando
compute addresses delete
(em inglês).gcloud compute addresses delete ADDRESS_NAME \ --region REGION
Substitua:
ADDRESS_NAME
: o nome do endereço a ser excluído.REGION
: a região à qual o endereço pertence.
Exemplo:
gcloud compute addresses delete example-address-to-delete \ --region us-west1
API
Use o método
addresses.delete
.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses/ADDRESS_NAME
Este exemplo exclui um endereço na região
us-west1
:DELETE https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-west1/addresses/example-address-to-delete
A seguir
- Saiba como configurar endereços IP internos estáticos para VMs.
Crie um balanceador de carga interno que use um endereço IPv4 interno estático:
Saiba mais sobre especificações de endereço IP para regras de encaminhamento e como usar regras de encaminhamento na Visão geral das regras de encaminhamento.
Saiba mais sobre endereços IP.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2024-10-01 UTC.