Muitos Google Cloud recursos podem ter endereços IP internos e externos. Por exemplo, é possível atribuir um endereço IP interno e externo a instâncias do Compute Engine. As instâncias usam esses endereços para se comunicarem com outros recursos Google Cloud e sistemas externos.
Cada interface de rede usada por uma instância precisa ter um endereço IPv4 interno principal. Cada interface de rede também pode ter um ou mais intervalos IPv4 de alias e um endereço IPv4 externo. Se a instância estiver conectada a uma sub-rede compatível com IPv6, cada interface de rede também poderá ter endereços IPv6 internos ou externos atribuídos.
Uma instância pode se comunicar com instâncias na mesma rede de nuvem privada virtual (VPC), usando o endereço IPv4 interno da instância. Se as instâncias tiverem o IPv6 configurado, também será possível usar um dos endereços IPv6 interno ou externo da instância. Como prática recomendada, use endereços IPv6 internos para comunicação interna.
Para se comunicar com a Internet, use um endereço IPv4 ou IPv6 externo configurado na instância. Se nenhum endereço externo estiver configurado na instância, o Cloud NAT poderá ser usado para o tráfego IPv4.
Da mesma forma, é preciso usar o IPv4 externo ou o IPv6 externo da instância para se conectar a instâncias fora da mesma rede VPC. No entanto, se as redes estiverem conectadas de alguma forma (por exemplo, usando o peering de rede VPC), será possível usar o endereço IP interno da instância.
Para informações sobre como identificar o endereço IP interno e externo das instâncias, consulte Conferir a configuração de rede de uma instância.
Endereços IP internos
As interfaces de rede de uma instância recebem endereços IP da sub-rede a que estão conectadas. Cada interface de rede tem um endereço IPv4 interno principal, que é atribuído a partir do intervalo IPv4 principal da sub-rede. Se a sub-rede tiver um intervalo IPv6 interno, além do endereço IPv4 interno principal, será possível configurar a interface de rede com um endereço IPv6 interno principal.
Os endereços IPv4 internos podem ser atribuídos das seguintes maneiras:
- O Compute Engine atribui um único endereço IPv4 dos intervalos de sub-rede IPv4 principal automaticamente.
- É possível atribuir um endereço IPv4 interno específico ao criar uma instância de computação.
Endereços IPv6 internos podem ser atribuídos a instâncias conectadas a uma sub-rede que tem um intervalo IPv6 interno das seguintes maneiras:
- Quando você configura um endereço IPv6 interno na vNIC de uma instância, o Compute Engine atribui um único intervalo
/96
de endereços IPv6 do intervalo IPv6 interno da sub-rede. - É possível atribuir um endereço IPv6 interno específico ao criar uma instância.
Também é possível reservar um endereço interno estático no intervalo IPv4 ou IPv6 da sub-rede e atribuí-lo a uma instância.
As instâncias de computação também podem ter intervalos e endereços IP de alias. Se você tiver mais de um serviço em execução em uma instância, poderá atribuir a cada um deles o próprio endereço IP exclusivo.
Nomes DNS internos
Google Cloud resolve automaticamente o nome DNS totalmente qualificado (FQDN, na sigla em inglês) de uma instância para os endereços IP internos dela. Os nomes DNS internos funcionam apenas na rede VPC da instância.
Para ver mais informações sobre nomes de domínio totalmente qualificados (FQDN, na sigla em inglês), leia DNS interno.
Endereços IP externos
Se você precisa se comunicar com a Internet ou com recursos em outra rede VPC, é possível atribuir um endereço IPv4 ou IPv6 externo a uma instância. Se as regras de firewall ou as políticas hierárquicas de firewall permitirem a conexão, as origens externas a uma rede VPC poderão acessar um recurso específico usando o endereço IP externo dele. Somente recursos com um endereço IP externo podem se comunicar diretamente com recursos fora da rede VPC. A comunicação com um recurso usando um endereço IP externo pode gerar cobranças adicionais.
Os endereços IPv4 externos estão disponíveis para todas as instâncias de computação. Quando você configura um endereço IPv4 externo na vNIC de uma instância, um único endereço IPv4 é atribuído dos intervalos de endereços IPv4 externos do Google. Para mais informações, consulte Onde posso encontrar intervalos de IP do Compute Engine.
Os endereços IPv6 externos estão disponíveis para instâncias de computação conectadas a uma sub-rede com um intervalo IPv6 externo. Quando você configura um endereço IPv6 externo na interface de rede da instância, um único intervalo
/96
de endereços IPv6 é atribuído do intervalo IPv6 externo da sub-rede.Também é possível reservar um endereço IPv6 externo estático no intervalo IPv6 da sub-rede e atribuí-lo a uma instância de computação.
Alternativas ao uso de um endereço IP externo
Os endereços IP internos ou privados oferecem várias vantagens sobre os endereços IP externos ou públicos, incluindo:
- Superfície de ataque reduzida. A remoção de endereços IP externos de instâncias de computação dificulta o acesso dos invasores às instâncias e a exploração de possíveis vulnerabilidades.
- Maior flexibilidade. A introdução de uma camada de abstração, como um balanceador de carga ou um serviço NAT, permite a entrega de serviços mais confiável e flexível quando comparada com endereços IP externos estáticos.
A tabela a seguir resume as maneiras pelas quais as instâncias de computação podem acessar ou ser acessadas pela Internet quando não têm um endereço IP externo.
Método de acesso | Solução | Melhor usado quando |
---|---|---|
Interativo | Configurar o encaminhamento de TCP para o Identity-Aware Proxy (IAP) | Você quer usar serviços administrativos, como SSH e RDP, para se conectar às suas instâncias de back-end, mas as solicitações precisam passar nas verificações de autenticação e autorização antes de chegar ao recurso de destino. |
Busca | Gateway do Cloud NAT | Você quer que as instâncias do Compute Engine que não têm endereços IP externos se conectem à Internet (saída), mas os hosts fora da sua rede VPC não podem iniciar as próprias conexões com as instâncias de computação (entrada). Você pode usar essa abordagem para atualizações do SO ou APIs externas. |
Proxy seguro da Web | É necessário isolar as instâncias do Compute Engine da Internet criando novas conexões TCP em nome delas, mantendo a política de segurança administrada. | |
Disponibilização | Criar um balanceador de carga externo | Você quer que os clientes se conectem a recursos sem endereços IP externos em qualquer lugar do Google Cloud , protegendo suas instâncias de computação contra ataques DDoS e diretos. |
Endereços IP regionais e globais
Ao listar ou descrever endereços IP no seu projeto,o Google Cloud
rotula os endereços como globais ou regionais, o que indica como um endereço específico
está sendo usado. Quando você associa um endereço a um recurso regional, como
uma instância, Google Cloud rotula o endereço como regional.
As regiões são Google Cloud
regiões, como us-east4
ou europe-west2
.
Os endereços IP globais são usados nas seguintes configurações:
- Endereços IP internos globais: Acessar APIs do Google por meio de endpoints ou Acesso a serviços particulares
- Endereços IP externos globais: balanceadores de carga de rede de proxy externos e balanceadores de carga de aplicativo externos usando uma rede de nível Premium.
Para instruções sobre como criar um endereço IP global, consulte Reservar um novo endereço IP externo estático.
Visão geral do SLA para a rede do Compute Engine
O Compute Engine tem um contrato de nível de serviço (SLA), que define os objetivos de nível de serviço (SLO) para a porcentagem de tempo de atividade mensal dos níveis de serviço de rede.
Ao criar uma instância do Compute Engine, você recebe por padrão um endereço IP interno. Também é possível configurar um endereço IP externo com a rede do nível Premium (padrão) ou Standard. O nível de serviço de rede escolhido depende dos seus requisitos de custo e qualidade de serviço. Cada nível de serviço de rede tem um SLO diferente.
Ao criar a instância de computação, é possível configurar várias NICs anexadas à instância, e cada NIC pode ter uma configuração de rede diferente, conforme mostrado no diagrama a seguir:
Figura 1. Uma instância com três NICs, cada uma lidando com diferentes tráfegos de rede com diferentes níveis de serviço de rede.
No diagrama anterior, a instância de exemplo chamada VM appliance tem três NICs, que são configuradas da seguinte maneira:
nic0
está configurado com uma sub-rede IP interna.nic1
está configurado com uma sub-rede IP externa e usa o nível de rede padrão.nic2
está configurado com uma sub-rede IP externa e usa o nível de rede Premium.
Neste exemplo, a instância de VM não é uma VM com otimização de memória. Dependendo de qual NIC sofre uma perda de conectividade, diferentes SLOs são aplicáveis. A lista a seguir descreve o SLA para as diferentes NICs neste exemplo.
nic0
: uma VM de instância única com endereços IP internos. A porcentagem de tempo de atividade mensal é de 99,9%.nic1
: uma VM de instância única com um endereço IP externo que usa o nível de rede padrão. Essa VM não está protegida por nenhum SLA. Apenas várias instâncias em zonas são protegidas em 99,9% com o nível de rede padrão.nic2
: uma VM de instância única com endereço IP externo que usa o nível de rede Premium. A porcentagem de tempo de atividade mensal é de 99,9%. Para várias instâncias em zonas, a porcentagem de tempo de atividade mensal é de 99,99% com o nível de rede Premium.
A seguir
- Conferir a configuração de rede de uma instância.
- Reservar um novo endereço IP externo estático.
- Como atribuir um IP externo estático a uma nova instância.
- Como especificar um endereço IP interno na criação da instância.
- Como promover um endereço IP externo temporário.
- Saiba como usar nomes DNS internos para mencionar as instâncias na rede VPC interna.
- Saiba mais sobre endereços IP.
- Saiba mais sobre o IPv6.
- Saiba mais sobre endereços IP e balanceamento de carga.
- Revise o preço do endereço IP externo.