Conceitos avançados de VPC

Esta página apresenta detalhes adicionais sobre as redes da nuvem virtual privada (VPC). Antes de ler esta página, consulte o artigo Redes VPC. Se tiver interesse em redes VPC com intercâmbio, consulte o artigo Intercâmbio da rede da VPC.

Detalhes de rede VPC de baixo nível

Esta secção fornece alguns detalhes de rede da VPC de baixo nível. Não precisa de ler este artigo para uma utilização típica, mas fornece mais informações sobre o funcionamento das redes VPC. O diagrama seguinte descreve estes detalhes de baixo nível, com mais informações nas secções correspondentes.

A rede VPC.
A rede VPC (clique para aumentar).

Quem trata de quê

As diferentes funcionalidades de rede da VPC são processadas por diferentes partes do sistema. Algumas destas funcionalidades são funcionalidades de rede padrão bem documentadas, e algumas delas são específicas das redes de VPC. Pode configurar algumas funcionalidades, mas não outras. As redes VPC usam o módulo de rede VIRTIO do Linux para modelar a funcionalidade do router e da placa Ethernet, mas os níveis mais elevados da pilha de rede, como as pesquisas ARP, são processados através de software de rede padrão.

Procura de ARP
Os problemas do kernel da instância pedidos ARP e a rede VPC enviam respostas ARP. O mapeamento entre endereços MAC e endereços IP é processado pelo kernel da instância.
Tabela de pesquisa de MAC, tabela de pesquisa de IP, tabela de ligações ativas
Estas tabelas estão alojadas na rede VPC subjacente e não podem ser inspecionadas nem configuradas.
Servidor DNS

O servidor de metadados de cada instância funciona como um servidor DNS. Armazena as entradas DNS para todos os endereços IP da rede VPC na rede VPC local e chama o servidor DNS público da Google para entradas fora da rede VPC. Não pode configurar este servidor DNS. O cliente DHCP em cada instância está configurado para gerir o ficheiro /etc/resolv.conf da instância.

Pode adicionar o seu próprio domínio de pesquisa ou servidores de nomes à instância /etc/resolv.conf modificando a política de DHCP. Muitas distribuições Linux permitem que estas modificações persistam através do /etc/dhcp/dhclient.conf. Consulte a documentação sobre o DNS interno para obter mais informações.

Processamento de pacotes entre a rede VPC e o exterior

Os pacotes que entram ou saem da rede VPC são processados por código de rede que examina o pacote em relação às regras de firewall, à tabela de pesquisa de IP externo e à tabela de ligações ativas. A rede da VPC também executa NAT em pacotes que entram e saem da rede da VPC.

Pacotes recebidos por uma instância

Estes pacotes são recebidos e transformados num fluxo pelo kernel da instância da forma padrão.

Pacotes enviados por uma instância

Os pacotes são enviados pelo kernel da instância da forma padrão. A funcionalidade de interface e de rede é modelada através do módulo de rede VIRTIO.

Instruções detalhadas de associações

Seguem-se mais detalhes sobre o que acontece quando uma instância faz uma chamada de rede VPC.

Uma instância faz uma chamada:

  1. Se o endereço de destino for um nome de instância ou um URL, como www.google.com, a instância chama o serviço DNS no respetivo servidor de metadados e recebe o endereço IP correspondente. Pode configurar a sua instância para consultar outro serviço DNS, mas, nesse caso, não vai poder resolver nomes de instâncias.
  2. O endereço IP de destino é examinado em relação ao intervalo de endereços IP da sub-rede, que todas as instâncias conhecem.

    1. Se o endereço IP não estiver na rede VPC atual ou numa rede VPC com peering através do peering de redes VPC:

      1. A instância envia o pacote para o endereço MAC da gateway da sub-rede com o destino definido para o destino final do pacote. A instância pode ter de fazer um pedido ARP para resolver o endereço MAC da gateway.

      2. A rede VPC reescreve o cabeçalho IP para declarar o endereço IP externo da instância como a origem. Se a instância não tiver um endereço IP externo, a chamada não é permitida e a rede VPC rejeita o pacote sem informar o remetente.

      3. A rede VPC regista o pacote de saída e adiciona a origem e o destino à tabela de ligações ativas.

      4. A rede VPC envia o pacote para o respetivo destino.

      5. O destino recebe o pacote e responde se quiser.

      6. A rede VPC recebe a resposta, consulta a tabela de ligações ativas, observa que se trata de uma ligação ativa e permite-a. A rede VPC consulta a respetiva tabela de pesquisa de IP externo/de rede e substitui o endereço IP externo da instância pelo endereço de rede correspondente e envia o pacote para a instância de origem.

      7. A instância recebe o pacote.

    2. Se o endereço IP de destino estiver na rede da VPC ou numa rede da VPC com intercâmbio através do intercâmbio das redes da VPC:

      1. A instância está configurada com um IP com a máscara 255.255.255.255, pelo que a instância envia o pacote para o endereço MAC do gateway da sub-rede. Primeiro, a instância pode ter de fazer um pedido ARP para resolver o endereço MAC da gateway.

      2. Google Cloud encaminha o pacote para o endereço IP de destino na rede da VPC atual ou com intercâmbio.

      3. A instância de destino recebe o pacote. A instância de destino verifica a firewall de entrada para determinar se o pacote é permitido. Caso contrário, o pacote é ignorado silenciosamente. Caso contrário, a instância processa o pacote.

Uma instância ou um computador externo chama uma instância:

  1. O autor da chamada externo envia um pacote para o endereço IP externo de uma instância, que é propriedade da rede VPC.

  2. A rede da VPC compara o pacote com a tabela de ligações ativas para ver se se trata de uma ligação existente:

    1. Se não for uma ligação existente, a rede VPC procura uma regra de firewall para permitir a ligação.
    2. Se não existir uma regra de firewall, a rede da VPC rejeita o pacote sem informar o remetente.
  3. Se existir uma ligação ou uma regra de firewall válida, a rede VPC examina a respetiva tabela de consulta e substitui o IP externo pelo IP interno correspondente no pacote, regista o pacote recebido na tabela de ligações ativas e envia o pacote para a instância de destino.

  4. A instância recebe o pacote e responde conforme descrito em Se o endereço IP estiver fora do intervalo de IPs da rede VPC ao enviar um pacote fora do intervalo de rede.

  5. A rede VPC recebe a resposta, encontra o pedido de entrada correspondente na tabela de ligações ativas e permite a passagem do pacote. Antes de enviar, modifica o endereço IP de origem substituindo o IP interno da instância pelo IP externo correspondente da respetiva tabela de consulta.

Meça o débito da rede VPC

Para ver instruções, consulte o artigo Calcule a taxa de transferência da rede.

O que se segue?