Várias interfaces de rede

Esta página oferece uma visão geral de várias interfaces de rede para instâncias do Compute Engine. As instâncias com várias interfaces de rede são chamadas de instâncias de várias NICs.

Uma interface de rede de instância se conecta a uma rede de nuvem privada virtual (VPC) e pode ser uma interface de rede virtual (vNIC) ou uma NIC dinâmica, em que uma NIC dinâmica é uma subinterface filha de uma vNIC pai. As vNICs de uma instância são apoiadas por uma ou mais NICs físicas no servidor host que executa a instância. Para mais informações, consulte Tipos de interface de rede.

Casos de uso

As instâncias multi-NIC são úteis nos seguintes cenários:

  • Para se conectar a recursos em redes VPC separadas: as instâncias com várias NICs podem se conectar a recursos localizados em redes VPC diferentes que não estão conectadas entre si por peering de rede VPC ou NCC.

    • Como cada interface de uma instância com várias NICs está em uma rede VPC separada, é possível usar cada interface para uma finalidade exclusiva. Por exemplo, é possível usar algumas interfaces para rotear pacotes entre redes VPC que transportam tráfego de produção e outra interface para fins de gerenciamento ou configuração.

    • No SO convidado de cada instância com várias NICs, é preciso configurar políticas de rota e tabelas de rotas locais.

  • Para rotear pacotes entre redes VPC: instâncias multi-NIC podem ser usadas como próximos saltos para rotas que conectam duas ou mais redes VPC.

    • O software em execução no SO convidado de uma instância com várias NICs pode realizar inspeção de pacotes, conversão de endereços de rede (NAT) ou outra função de segurança de rede.

    • Ao conectar redes VPC usando instâncias com várias NICs, uma prática recomendada é configurar duas ou mais instâncias com várias NICs e usá-las como back-ends para um balanceador de carga de rede de passagem interno em cada rede VPC. Para mais informações, consulte Casos de uso na documentação sobre balanceadores de carga de rede de passagem interna como próximos saltos.

  • Para aumentar a largura de banda total da rede de uma instância: as instâncias com várias NICs aceitam o aumento da largura de banda da seguinte maneira:

    • Para alguns tipos de máquina em Google Cloud, as instâncias são apoiadas por várias NICs físicas no servidor host. Criar uma instância com várias vNICs em que cada uma usa uma NIC física diferente aumenta a largura de banda de rede total da instância. Para mais informações, consulte Largura de banda para várias interfaces de rede na mesma rede VPC.

    • Para a maioria dos tipos de máquina em Google Cloud, as instâncias são apoiadas por uma única NIC física no servidor host, e cada vNIC usa a mesma NIC física. Quando as vNICs compartilham uma NIC física, adicionar vNICs não aumenta a largura de banda da rede.

Também é possível usar instâncias com várias NICs com interfaces do Private Service Connect para conectar redes de produtores e consumidores de serviços em projetos diferentes.

Tipos de interface de rede

Consulte as seções a seguir para detalhes sobre os tipos de interfaces de rede em Google Cloud.

Interfaces de rede da instância

As instâncias do Compute Engine se conectam a redes VPC usando interfaces de rede configuradas por você, que podem ser vNICs ou NICs dinâmicas. Essas interfaces de rede da instância correspondem ao recurso e à propriedade instances.networkInterfaces[] na API Compute Engine.

Para mais informações sobre cada tipo de interface de rede de instância, consulte o seguinte:

  • Interface de rede virtual (vNIC): uma interface de rede definida por software exposta ao SO convidado da sua instância que permite que ela se conecte a redes VPC. Cada instância precisa ter pelo menos uma vNIC.

    • Só é possível configurar vNICs ao criar uma instância.

    • O nome de uma vNIC atribuída por Google Cloud tem o seguinte formato: nicN, como nic0. O nome correspondente atribuído pelo SO convidado depende do sistema operacional, como ens4 para o Ubuntu.

    • Uma vNIC pode ser de um dos seguintes tipos, dependendo da rede VPC associada. Cada tipo corresponde a um driver de rede específico no SO convidado:

      Para saber quais tipos de máquina são compatíveis com quais tipos de vNIC, consulte Comparação de séries de máquinas.

  • NIC dinâmica: uma filha de uma vNIC mãe que é implementada como uma subinterface no SO convidado da instância.

    • É possível configurar NICs dinâmicas ao criar uma instância ou adicioná-las mais tarde.

    • O nome de uma NIC dinâmica atribuída por Google Cloud tem o seguinte formato: nicN.VLAN_ID, como nic0.2. O nome correspondente atribuído pelo SO convidado depende do sistema operacional. Por exemplo, se você usar o agente convidado para gerenciar NICs dinâmicas no Ubuntu, o nome poderá ser a-gcp.ens4.2.

    • As NICs dinâmicas não são compatíveis com redes VPC com um perfil de rede RDMA.

    Para mais informações, consulte NICs dinâmicas.

Detalhes da NIC dinâmica

Se o caso de uso exigir qualquer um dos itens a seguir, use NICs dinâmicas. Confira também as propriedades e as limitações das NICs dinâmicas.

  • Você precisa adicionar ou remover interfaces de rede de instâncias atuais. A adição ou remoção de NICs dinâmicas não exige a reinicialização ou recriação da instância.

  • Você precisa de mais interfaces de rede do que o número máximo de vNICs. Para a maioria dos tipos de máquina em Google Cloud, o número máximo é 10. No entanto, é possível configurar até 16 interfaces usando NICs dinâmicas. Para mais informações, consulte Número máximo de interfaces de rede.

  • É necessário configurar instâncias bare metal do Compute Engine com várias NICs, que têm apenas uma vNIC.

Propriedades das NICs dinâmicas

Consulte as seguintes informações sobre as propriedades das NICs dinâmicas:

  • As NICs dinâmicas são interfaces VLAN que usam o formato de pacote padrão IEEE 802.1Q. Confira as seguintes considerações:

    • O ID da VLAN de uma NIC dinâmica precisa ser um número inteiro de 2 a 255.
    • O ID da VLAN de uma NIC dinâmica precisa ser exclusivo em uma vNIC mãe. No entanto, NICs dinâmicas que pertencem a vNICs principais diferentes podem usar o mesmo ID da VLAN.
  • Google Cloud usa o seguinte formato para o nome de uma NIC dinâmica: nicNUMBER.VLAN_ID, em que

    • nicNUMBER é o nome da vNIC principal, como nic0.
    • VLAN_ID é o ID da VLAN que você definiu, como 4.

    Um exemplo de nome de NIC dinâmica é nic0.4.

  • Para criar uma instância com NICs dinâmicas ou adicionar NICs dinâmicas a uma instância atual, é necessário seguir outras etapas para instalar e gerenciar as interfaces de VLAN correspondentes no SO convidado. Use um destes métodos:

    • Configure o gerenciamento automático de NICs dinâmicas usando o agente convidado.

    • Configurar o SO convidado manualmente.

    Para mais informações, consulte Configurar o SO convidado para NICs dinâmicas.

  • As NICs dinâmicas compartilham a largura de banda da vNIC mãe. Para evitar que qualquer uma das interfaces de rede consuma toda a largura de banda, é preciso criar uma política de tráfego específica do aplicativo no SO convidado para priorizar ou distribuir o tráfego, por exemplo, usando o controle de tráfego (TC, na sigla em inglês) do Linux.

  • As NICs dinâmicas compartilham as mesmas filas de recebimento e transmissão que a vNIC mãe. Para configurar uma interface de rede para usar filas de recebimento e transmissão diferentes, use vNICs em vez de NICs dinâmicas.

  • O tipo de pilha de uma NIC dinâmica pode ser igual ou diferente da vNIC mãe. Por exemplo, é possível criar NICs dinâmicas somente IPv6 e de pilha dupla em uma vNIC pai somente IPv4.

Limitações das NICs dinâmicas

Confira as seguintes limitações das NICs dinâmicas:

NICs físicas

Uma NIC física é o componente de hardware instalado diretamente no servidor host em que uma instância é executada. Dependendo do tipo de máquina da instância, as vNICs dela são mapeadas para uma ou mais NICs físicas em um servidor host da seguinte maneira:

  • Instâncias com suporte de uma NIC física: para a maioria dos tipos de máquina, as instâncias são executadas em um servidor host com uma única NIC física. Para uma determinada instância, todas as vNICs da instância são mapeadas para a única NIC física.

  • Instâncias com suporte de várias NICs físicas: para um conjunto limitado de tipos de máquina, como tipos de máquina C4N e tipos de máquina com GPU, as instâncias são executadas em um servidor host com várias NICs físicas. Para uma determinada instância, o Compute Engine mapeia as vNICs da instância para diferentes NICs físicas.

    • As instâncias com várias NICs físicas são compatíveis com casos de uso como maior largura de banda de rede e comunicação de GPU para GPU em uma rede VPC RoCE. Para mais informações, consulte Suporte de rede para instâncias C4N e Máquinas de rede e GPU.

    • Quando você cria a instância, o Compute Engine mapeia cada vNIC para uma NIC física exclusiva, até a contagem total de NICs físicas do tipo de máquina da instância.

    • Para entender o suporte a várias NICs físicas, consulte a documentação de uma determinada série de máquinas. Se aplicável, a tabela de tipos de máquina inclui uma coluna intitulada Contagem de NICs físicas. Por exemplo, consulte Tipos de máquina C4N.

Além disso, na maioria dos tipos de máquinas, as instâncias compartilham um servidor host com outras instâncias. As instâncias que compartilham um servidor host também compartilham a NIC física ou o conjunto de NICs físicas. No entanto, para alguns tipos de máquina, como os tipos de máquina bare metal ou H3 e H4D, uma única instância ocupa um servidor host inteiro.

Especificações

As especificações a seguir se aplicam a instâncias com várias interfaces de rede:

  • Instâncias e interfaces de rede: cada instância tem uma interface nic0. O número máximo de interfaces de rede varia de acordo com o tipo de máquina da instância.

    • Cada interface tem um tipo de pilha associado, que determina os tipos de pilha de sub-rede e as versões de endereço IP compatíveis. Para mais informações, consulte Tipo de pilha e endereços IP.
  • Requisitos de rede e sub-rede: cada interface de rede precisa usar uma sub-rede exclusiva em uma rede VPC.

    • É possível anexar interfaces de rede a sub-redes em diferentes redes VPC.

    • É possível anexar interfaces de rede a diferentes sub-redes na mesma rede VPC nos seguintes cenários:

    • Uma rede VPC e uma sub-rede precisam existir antes de criar uma instância cuja interface de rede use a rede e a sub-rede. Para mais informações sobre como criar redes e sub-redes, consulte Criar e gerenciar redes VPC.

    • A vinculação de interfaces de rede com agregação de links não é compatível. Para detalhes sobre como várias interfaces de rede na mesma rede VPC afetam a largura de banda, consulte Largura de banda para várias interfaces de rede na mesma rede VPC.

  • Projeto de instância e sub-redes: para instâncias com várias NICs em projetos independentes, cada interface de rede precisa usar uma sub-rede localizada no mesmo projeto que a instância.

  • Considerações sobre encaminhamento de IP, MTU e roteamento: as instâncias multi-NIC exigem um planejamento cuidadoso para as seguintes opções de configuração específicas da instância e da interface:

    • A opção de encaminhamento de IP é configurável por instância e se aplica a todas as interfaces de rede. Para mais informações, consulte Ativar encaminhamento de IP para instâncias.

    • Cada interface de rede pode usar uma unidade máxima de transmissão (MTU, na sigla em inglês) exclusiva, correspondente à MTU da rede VPC associada. Para mais informações, consulte Unidade de transmissão máxima.

    • Cada instância recebe uma rota padrão usando a opção 121 do DHCP, conforme definido pela RFC 3442. A rota padrão está associada a nic0. Qualquer tráfego que saia de uma instância para um destino que não seja uma sub-rede diretamente conectada usará a rota padrão em nic0, a menos que isso seja configurado manualmente.

      Em sistemas Linux, é possível configurar regras e rotas personalizadas no SO convidado usando o arquivo /etc/iproute2/rt_tables e os comandos ip rule e ip route. Para mais informações, consulte a documentação do SO convidado. Para um exemplo, consulte o seguinte tutorial: Configurar o roteamento para uma interface adicional.

Regras para várias interfaces de rede na mesma rede VPC

O Compute Engine aplica todas as regras a seguir quando duas ou mais interfaces de rede de uma única instância usam a mesma rede VPC:

  • Sub-rede exclusiva: cada interface de rede precisa ser anexada a uma sub-rede exclusiva.

  • Outras vNICs precisam ser anexadas à rede que contém nic0: duas ou mais vNICs podem ser anexadas à mesma rede VPC somente se essa rede também contiver a vNIC nic0. Por exemplo, nic0, nic1 e nic2 podem ser anexados a sub-redes exclusivas na mesma rede VPC, mas nic1 e nic2 não podem ser anexados à mesma rede VPC se nic0 não estiver anexado a essa rede.

  • Uma rede que contém uma NIC dinâmica e pelo menos uma outra NIC precisa conter a vNIC mãe de cada NIC dinâmica. Por exemplo:

    • Para anexar as NICs dinâmicas nic1.6 e nic1.7 à mesma rede VPC, você também precisa anexar a vNIC pai, nic1, a essa rede VPC.

    • Para anexar a NIC dinâmica nic1.6 e a vNIC nic2 à mesma rede VPC, também é necessário anexar as vNICs nic1 e nic0 a essa rede VPC. Anexar nic1 é necessário porque nic1 é a vNIC mãe da NIC dinâmica nic1.6. É necessário anexar nic0 porque a rede contém várias vNICs.

    • Para anexar as NICs dinâmicas nic2.5 e nic3.6 à mesma rede VPC, você também precisa anexar todas as seguintes vNICs à mesma rede VPC: nic0, nic2 e nic3. A anexação das vNICs nic2 e nic3 é necessária porque elas são as vNICs principais das NICs dinâmicas nic2.5 e nic3.6. É necessário anexar nic0 porque a rede contém várias vNICs.

  • Rede exclusiva para cada interface do Private Service Connect: não é possível anexar duas ou mais interfaces de rede à mesma rede VPC se uma delas usar um anexo de rede nessa rede.

Largura de banda para várias interfaces de rede na mesma rede VPC

Várias vNICs na mesma rede VPC afetam a largura de banda da rede de acordo com estas regras:

  • Para instâncias apoiadas por uma NIC física, anexar duas ou mais vNICs à mesma rede VPC nunca aumenta a largura de banda da rede.

  • Para instâncias com várias NICs físicas, anexar duas ou mais vNICs à mesma rede VPC aumenta a largura de banda da rede quando o Compute Engine mapeia as vNICs para diferentes NICs físicas.

Independente do tipo de máquina, adicionar NICs dinâmicas a uma instância não aumenta a largura de banda porque uma NIC dinâmica usa a largura de banda da vNIC principal.

Tipos de pilha e endereços IP

Ao criar uma interface de rede, especifique um dos seguintes tipos de pilha de interface:

  • Somente IPv4
  • Pilha dupla
  • Somente IPv6

Uma instância de VM pode ter interfaces de rede com diferentes tipos de pilha.

A tabela a seguir descreve os tipos de pilha de sub-rede compatíveis e os detalhes do endereço IP para cada tipo de pilha de interface:

Interface Sub-rede somente IPv4 Sub-rede de pilha dupla Sub-rede somente IPv6 Detalhes do endereço IP
Somente IPv4 (pilha única) Somente endereços IPv4. Consulte Detalhes do endereço IPv4.
IPv4 e IPv6 (pilha dupla) Endereços IPv4 e IPv6. Consulte Detalhes do endereço IPv4 e Detalhes do endereço IPv6
Somente IPv6 (pilha única) Somente endereços IPv6. Consulte Detalhes do endereço IPv6.

Como mudar o tipo de pilha da interface de rede

É possível mudar o tipo de pilha de uma interface de rede da seguinte maneira:

  • É possível converter uma interface somente IPv4 para pilha dupla se a sub-rede da interface for de pilha dupla ou se você interromper a instância e atribuir a interface a uma sub-rede de pilha dupla.

  • É possível converter uma interface de pilha dupla para somente IPv4.

Não é possível mudar o tipo de pilha de uma interface somente IPv6. As interfaces somente IPv6 são compatíveis apenas ao criar instâncias.

Detalhes do endereço IPv4

Cada interface de rede somente IPv4 ou de pilha dupla recebe um endereço IPv4 interno principal. Cada interface pode ter intervalos de IP de alias e um endereço IPv4 externo. Confira abaixo as especificações e os requisitos do IPv4:

  • Endereço IPv4 interno principal: o Compute Engine atribui à interface de rede um endereço IPv4 interno principal do intervalo de endereços IPv4 principal da sub-rede da interface. O endereço IPv4 interno principal é alocado pelo DHCP.

    • É possível controlar qual endereço IPv4 interno principal é atribuído configurando um endereço IPv4 interno estático ou especificando um endereço IPv4 interno temporário personalizado.

    • Em uma rede VPC, o endereço IPv4 interno principal de cada interface de rede da VM é exclusivo.

  • Intervalos de IP de alias: opcionalmente, é possível atribuir à interface um ou mais intervalos de IP de alias. Cada intervalo de IP de alias pode vir do intervalo de endereços IPv4 principal ou de um intervalo de endereços IPv4 secundário da sub-rede da interface.

    • Em uma rede VPC, o intervalo de IP de alias de cada interface precisa ser exclusivo.
  • Endereço IPv4 externo: opcionalmente, é possível atribuir à interface um endereço IPv4 externo temporário ou reservado.O Google Cloud garante a exclusividade de cada endereço IPv4 externo.

Detalhes do endereço IPv6

O Compute Engine atribui a cada interface de rede de pilha dupla ou somente IPv6 um intervalo de endereços IPv6 /96 do intervalo de endereços IPv6 /64 da sub-rede da interface:

  • Se o intervalo de endereços IPv6 /96 é interno ou externo depende do tipo de acesso IPv6 da sub-rede da interface.O Google Cloud garante a exclusividade de cada intervalo de endereços IPv6 interno e externo. Para mais informações, consulte Especificações do IPv6.

    • Se uma instância precisar de um intervalo de endereços IPv6 internos e um intervalo de endereços IPv6 externos, configure duas interfaces de pilha dupla, duas interfaces somente IPv6 ou uma interface de pilha dupla e uma interface somente IPv6. A sub-rede usada por uma interface precisa ter um intervalo de endereços IPv6 externo, e a sub-rede usada pela outra interface precisa ter um intervalo de endereços IPv6 interno.
  • O primeiro endereço IPv6 (/128) é configurado na interface pelo DHCP. Para mais informações, consulte Atribuição de endereços IPv6.

  • É possível controlar qual intervalo de endereços IPv6 /96 é atribuído configurando um intervalo de endereços IPv6 estático interno ou externo. Para endereços IPv6 internos, é possível especificar um endereço IPv6 interno efêmero personalizado.

Se você estiver conectando uma instância a várias redes usando endereços IPv6, instale a versão google-guest-agent 20220603.00 ou posterior. Para saber mais, consulte Não consigo me conectar ao endereço IPv6 de uma interface secundária.

Número máximo de interfaces de rede

Para a maioria dos tipos de máquinas, o número máximo de interfaces de rede que podem ser anexadas a uma instância é dimensionado com o número de vCPUs, conforme descrito nas tabelas a seguir.

As seguintes são exceções específicas da máquina:

  • A maioria das instâncias bare metal do Compute Engine é compatível com apenas uma vNIC. No entanto, alguns tipos de máquinas bare metal oferecem suporte a várias vNICs, como Z4M. Para informações sobre o número de interfaces de rede compatíveis com instâncias Z4M, consulte Criar uma instância ativada para Cloud RDMA.

  • O número máximo de vNICs é diferente para alguns tipos de máquina otimizados para aceleradores, como A3, A4 e A4X. Para mais informações, consulte Família de máquinas com otimização para aceleradores.

Número máximo de interfaces

Use a tabela a seguir para determinar quantas interfaces de rede podem ser conectadas a uma instância.

Número de vCPUs Número máximo de vNICs Número máximo de NICs dinâmicas Número máximo de interfaces de rede
(NICs virtuais + NICs dinâmicas)
2 ou menos 2 1 2
4 4 3 4
6 6 5 6
8 8 7 8
10 10 9 10
12 10 10 11
14 10 11 12
16 10 12 13
18 10 13 14
20 10 14 15
22 ou mais 10 15 16

Fórmulas de referência

A tabela a seguir fornece as fórmulas usadas para calcular o número máximo de interfaces de rede de uma instância. A fórmula depende do número de vCPUs.

Número de vCPUs (X) Número máximo de vNICs Número máximo de NICs dinâmicas Número máximo de interfaces de rede
(vNICs + NICs dinâmicas)
X=1 2 1 2
2 ≤ X ≤ 10 X (X-1) X
X ≥ 12 10 min(15, (X-10)/2 + 9) min(16, (X-10)/2 + 10)

Exemplos de distribuições de NICs dinâmicas

Não é necessário distribuir as NICs dinâmicas de maneira uniforme entre as vNICs. No entanto, talvez você queira uma distribuição uniforme porque as NICs dinâmicas compartilham a largura de banda da vNIC mãe.

Uma instância precisa ter pelo menos uma vNIC. Por exemplo, uma instância com 2 vCPUs pode ter uma das seguintes configurações:

  • 1 vNIC
  • 2 vNICs
  • 1 vNIC e 1 NIC dinâmica

As tabelas a seguir fornecem exemplos de configurações que distribuem uniformemente as NICs dinâmicas entre as vNICs, usando o número máximo de interfaces de rede para um determinado número de vCPUs.

2 vCPUs, 2 NICs

A tabela a seguir mostra exemplos para uma instância com duas vCPUs que mostram quantas NICs dinâmicas você pode ter para um determinado número de vNICs.

Número de vCPUs Número de vNICs Número de NICs dinâmicas por vNIC Número total de interfaces de rede (vNICs + NICs dinâmicas)
2 1 1 2
2 0

4 vCPUs, 4 NICs

A tabela a seguir mostra exemplos para uma instância com quatro vCPUs que mostram quantas NICs dinâmicas você pode ter para um determinado número de vNICs.

Número de vCPUs Número de vNICs Número de NICs dinâmicas por vNIC Número total de interfaces de rede (vNICs + NICs dinâmicas)
4 1 3 4
2 1
4 0

8 vCPUs, 8 NICs

A tabela a seguir mostra exemplos de uma instância com 8 vCPUs que mostram quantas NICs dinâmicas você pode ter para um determinado número de vNICs.

Número de vCPUs Número de vNICs Número de NICs dinâmicas por vNIC Número total de interfaces de rede (vNICs + NICs dinâmicas)
8 1 7 8
2 3
4 1
8 0

14 vCPUs, 12 NICs

A tabela a seguir mostra exemplos para uma instância com 12 vCPUs que mostram quantas NICs dinâmicas você pode ter para um determinado número de vNICs.

Número de vCPUs Número de vNICs Número de NICs dinâmicas por vNIC Número total de interfaces de rede (vNICs + NICs dinâmicas)
14 1 11 12
2 5
4 2
6 1

22 vCPUs, 16 NICs

A tabela a seguir mostra exemplos para uma instância com 22 vCPUs que mostram quantas NICs dinâmicas você pode ter para um determinado número de NICs virtuais.

Número de vCPUs Número de vNICs Número de NICs dinâmicas por vNIC Número total de interfaces de rede (vNICs + NICs dinâmicas)
22 1 15 16
2 7
4 3
8 1

Interações com o produto

Nesta seção, descrevemos as interações entre instâncias de várias NICs e outros produtos e recursos no Google Cloud.

VPC compartilhada

Exceto para interfaces do Private Service Connect, a relação entre sub-rede e projeto de uma instância de várias NICs em um projeto host ou de serviço da VPC compartilhada é a seguinte:

  • Cada interface de rede de uma instância com várias NICs localizada em um projeto host de VPC compartilhada precisa usar uma sub-rede de uma rede VPC compartilhada no projeto host.

  • Cada interface de rede de uma instância com várias NICs localizada em um projeto de serviço de VPC compartilhada pode usar uma das seguintes opções:

    • Uma sub-rede de uma rede VPC no projeto de serviço.
    • Uma sub-rede de uma rede VPC compartilhada no projeto host.

Para mais informações sobre a VPC compartilhada, consulte:

DNS interno do Compute Engine

O Compute Engine cria registros A e PTR de nome DNS interno apenas para o endereço IPv4 interno principal da interface de rede nic0 de uma instância. O Compute Engine não cria registros DNS internos para nenhum endereço IPv4 ou IPv6 associado a uma interface de rede diferente de nic0.

Para mais informações, consulte DNS interno do Compute Engine.

Rotas estáticas

É possível definir o escopo das rotas estáticas para instâncias específicas usando tags de rede. Quando uma tag de rede é associada a uma instância, ela se aplica a todas as interfaces de rede da instância. Consequentemente, adicionar ou remover uma tag de rede de uma instância pode mudar as rotas estáticas que se aplicam a qualquer uma das interfaces de rede da instância.

Ao criar uma rota estática em que o próximo salto é uma instância:

  • Se você especificar uma instância de próximo salto por nome e zona (next-hop-instance), os pacotes serão entregues apenas à vNIC nic0 da instância, e a vNIC nic0 precisará ser anexada à mesma rede VPC em que a rota estática é criada.

  • Se você especificar uma instância de próximo salto por endereço (next-hop-address), os pacotes poderão ser entregues a uma vNIC ou NIC dinâmica específica na mesma VPC em que a rota estática foi criada.

Para mais informações, consulte Próximos saltos e recursos.

Balanceadores de carga

A tabela a seguir descreve quais interfaces de rede de instância atendem às condições necessárias para receber tráfego balanceado por carga, incluindo situações em que várias interfaces são anexadas à mesma rede VPC de acordo com as regras para várias interfaces de rede na mesma rede VPC. Uma interface de rede que atende às condições necessárias do balanceador de carga é uma interface de destino do balanceador de carga. Uma instância tem exatamente uma interface de destino do balanceador de carga em cada rede VPC que usa, mesmo que tenha duas ou mais interfaces na mesma rede.

Interface Condições para receber tráfego balanceado por carga
nic0 vNIC

Pode ser anexada a uma rede VPC com ou sem outras interfaces de rede:

  • Quando várias vNICs compartilham uma rede VPC comum com a vNIC nic0, apenas nic0 pode receber tráfego com balanceamento de carga.
  • Quando uma ou mais NICs dinâmicas compartilham uma rede VPC comum com a vNIC nic0, apenas nic0 pode receber tráfego com balanceamento de carga.
vNIC não nic0

Precisa estar anexada a uma rede VPC sem outras vNICs:

  • Pode ser anexada a uma rede VPC por conta própria.
  • Quando uma ou mais NICs dinâmicas compartilham uma rede VPC comum com uma vNIC principal, apenas a vNIC principal pode receber tráfego balanceado por carga.
NIC dinâmica

Precisa estar anexada a uma rede VPC exclusiva sem outras interfaces de rede (sem outras vNICs e sem outras NICs dinâmicas).

As tabelas a seguir detalham as configurações do balanceador de carga e do grupo de back-end que podem ser usadas para enviar tráfego a uma interface de destino do balanceador de carga.

Interfaces de destino do balanceador de carga para balanceadores de carga de aplicativo e de rede de proxy

Tipo de grupo de back-end
em um serviço de back-end de um balanceador de carga de aplicativo
ou de um balanceador de carga de rede de proxy
Interface de destino do balanceador de carga
nic0 vNIC vNIC não nic0 NIC dinâmica
Grupo de instâncias
GCE_VM_IP_PORT NEG

Interfaces de destino do balanceador de carga para balanceadores de carga de rede de passagem

Para balanceadores de carga de rede de passagem interna:

Tipo de grupo de back-end
em um serviço de back-end de um balanceador de carga de rede de passagem interna
Interface de destino do balanceador de carga
nic0 vNIC vNIC não nic0 NIC dinâmica
Grupo de instâncias
GCE_VM_IP NEG

Para balanceadores de carga de rede de passagem externa:

Tipo de back-end
de um balanceador de carga de rede de passagem externa
Interface de destino do balanceador de carga
nic0 vNIC vNIC não nic0 NIC dinâmica
Grupo de instâncias
em um serviço de back-end de um balanceador de carga de rede de passagem externa regional baseado em serviço de back-end ou de um balanceador de carga de rede de passagem externa global
NEG GCE_VM_IP
em um serviço de back-end de um balanceador de carga de rede de passagem externa regional baseado em serviço de back-end ou de um balanceador de carga de rede de passagem externa global
Pool de destino
de um balanceador de carga de rede de passagem externa regional baseado em pool de destino

Back-ends de NEG zonais e interfaces de rede GCE_VM_IP_PORT

Ao criar um novo NEG zonal com endpoints GCE_VM_IP_PORT, você especifica uma zona, uma porta padrão, uma rede VPC e uma sub-rede nessa rede. Nenhum desses atributos pode ser mudado depois que o NEG zonal é criado.

A sub-rede do NEG precisa estar na mesma região que a zona dele. Se a rede do NEG for uma rede VPC de modo automático, será possível omitir a especificação da sub-rede do NEG. Quando você não especifica uma sub-rede,o Google Cloud define a sub-rede do NEG como a sub-rede criada automaticamente na região que contém a zona do NEG.

Os NEGs zonais com endpoints GCE_VM_IP_PORT aplicam as seguintes regras para adicionar endpoints:

  • Se você especificar apenas um nome de instância para o endpoint, a instância precisará estar na mesma zona que o NEG e ter uma interface de destino do balanceador de carga na sub-rede do NEG. O endereço IP do endpoint é definido como o endereço IPv4 interno principal da interface de destino do balanceador de carga, e a porta do endpoint é definida como a porta padrão do NEG.

  • Se você especificar um nome de instância e um endereço IP, ou um nome de instância, um endereço IP e informações de porta para o endpoint, a instância precisará estar na mesma zona que o NEG e:

    • Se você especificar um endereço IPv4, ele precisará ser um endereço IPv4 interno principal ou um endereço IPv4 de um intervalo de IP de alias associado a uma interface de destino do balanceador de carga na sub-rede do NEG.

    • Se você especificar um endereço IPv6: ele precisa ser um único endereço IPv6 do intervalo de endereços IPv6 /96 da interface de destino do balanceador de carga na sub-rede do NEG.

    • A porta do endpoint é a que você especifica. Se você não especificar uma porta, a porta do endpoint será definida como a porta padrão do NEG.

Back-ends de NEG por zona e interfaces de rede do GCE_VM_IP

Ao criar um novo NEG zonal com endpoints GCE_VM_IP, você especifica uma zona, uma rede VPC e uma sub-rede nessa rede. Nenhum desses atributos pode ser alterado depois que o NEG zonal é criado.

A sub-rede do NEG precisa estar na mesma região que a zona do NEG. Se a rede do NEG for uma rede VPC de modo automático, será possível omitir a especificação da sub-rede do NEG. Quando você não especifica uma sub-rede,o Google Cloud define a sub-rede do NEG como a sub-rede criada automaticamente na região que contém a zona do NEG.

Os NEGs zonais com endpoints GCE_VM_IP aplicam as seguintes regras para adicionar endpoints:

  • Se você especificar apenas um nome de instância para o endpoint, ela precisará estar na mesma zona que o NEG e ter uma interface de destino do balanceador de carga na sub-rede do NEG.

  • Se você especificar um nome de instância e um endereço IP para adicionar um endpoint, a instância precisará estar na mesma zona que o NEG, e o endereço IP precisará ser o endereço IPv4 interno principal de uma interface de destino do balanceador de carga na sub-rede do NEG.

Como uma instância pode ter apenas uma NIC na sub-rede do NEG, ela pode ter apenas um endpoint GCE_VM_IP por NEG zonal, e o endpoint é sempre identificado com o endereço IPv4 interno principal da interface de destino do balanceador de carga. Os endereços IP de destino reais dos pacotes com balanceamento de carga correspondem a uma regra de encaminhamento do balanceador de carga de rede de passagem.

Back-ends de grupo de instâncias e interfaces de rede

A rede VPC e a sub-rede associadas a um grupo de instâncias são definidas implicitamente por uma destas ações:

  • Para grupos gerenciados de instâncias (MIGs), a rede VPC e a sub-rede do grupo de instâncias são definidas como a rede e a sub-rede da vNIC nic0 definidas no modelo de instância.

  • Para grupos de instâncias não gerenciadas, a rede VPC e a sub-rede do grupo de instâncias são definidas como a rede e a sub-rede da vNIC nic0 da primeira instância adicionada ao grupo de instâncias não gerenciadas. Não é possível alterar a rede VPC ou a sub-rede do grupo de instâncias posteriormente, mesmo que você remova a primeira instância adicionada ao grupo.

OGoogle Cloud aplica as seguintes regras ao adicionar instâncias a um grupo de instâncias não gerenciadas depois que a rede VPC e a sub-rede do grupo de instâncias são definidas:

  • A vNIC nic0 de uma instância a ser adicionada a um grupo de instâncias precisa corresponder à rede e à sub-rede do grupo de instâncias. Essa regra é aplicada porque a placa de interface de rede virtual (vNIC) nic0 é sempre uma interface de destino do balanceador de carga.

  • Para cada interface de destino do balanceador de carga de uma instância a ser adicionada a um grupo de instâncias: se a interface de destino do balanceador de carga estiver anexada a uma rede VPC a que as interfaces de destino do balanceador de carga de instâncias atuais estão anexadas, as interfaces de destino do balanceador de carga novas e atuais precisarão usar a mesma sub-rede.

Regras de firewall

O conjunto de regras de firewall (de políticas hierárquicas de firewall, políticas de firewall de rede global, políticas de firewall de rede regional e regras de firewall da VPC) é exclusivo para cada interface de rede. Verifique se cada rede tem regras de firewall adequadas para permitir o tráfego que você quer permitir de e para uma instância de várias NICs. Para determinar quais regras de firewall se aplicam a uma interface de rede e a origem de cada regra, consulte Receber regras de firewall em vigor para uma interface de VM.

As regras de firewall podem ser definidas para instâncias de VM específicas usando tags de rede ou seguras, que se aplicam a todas as interfaces de rede de uma instância. Para mais informações, consulte Comparação de tags seguras e tags de rede.

Problemas conhecidos

Nesta seção, descrevemos problemas conhecidos relacionados ao uso de várias interfaces de rede no Google Cloud.

Erros de criação e desempenho reduzido ao usar NICs dinâmicas com instâncias de GPU

As NICs dinâmicas não são compatíveis com instâncias de GPU. Se você criar uma instância de GPU com NICs dinâmicas ou adicionar NICs dinâmicas a uma instância de GPU atual, os seguintes problemas poderão ocorrer:

  • A operação falha com um erro como este:

    Internal error. Please try again or contact Google Support. (Code: 'CODE')

  • A operação é bem-sucedida, mas a instância apresenta uma queda no desempenho, como uma largura de banda de rede significativamente menor.

Esses problemas ocorrem porque a configuração da NIC dinâmica leva a erros quando o Compute Engine tenta distribuir as vNICs da instância entre as NICs físicas no servidor host.

Pacotes descartados ao usar NICs dinâmicas com intervalos de IP de alias, encaminhamento de protocolo ou balanceadores de carga de rede de passagem

O agente convidado adiciona automaticamente rotas locais nos seguintes cenários para vNICs, mas não para NICs dinâmicas:

  • Quando você configura um intervalo de IP de alias, o agente convidado cria uma rota local para o intervalo de IP de alias.
  • Quando você cria uma instância de destino que faz referência a uma instância de computação para encaminhamento de protocolo, o agente convidado cria uma rota local para o endereço IP da regra de encaminhamento associada.
  • Quando você adiciona um back-end a um balanceador de carga de rede de passagem, o agente convidado cria uma rota local para o endereço IP da regra de encaminhamento associada.

Como as rotas locais não são adicionadas para NICs dinâmicas, a NIC dinâmica pode sofrer perda de pacotes.

Para resolver esse problema, adicione os endereços IP manualmente da seguinte maneira:

  1. Conecte-se à instância usando SSH.

  2. Se você estiver configurando um intervalo de IP de alias, faça o seguinte. Caso contrário, pule esta etapa.

    1. Em /etc/default/instance_configs.cfg, verifique se a configuração ip_aliases está definida como true.
    2. Se a configuração ip_aliases estiver definida como false, modifique o arquivo para alterá-la para true e reinicie o agente convidado:

      systemctl restart google-guest-agent
      
  3. Configure uma rota local para o intervalo de IP de alias ou o endereço IP da regra de encaminhamento usando o seguinte comando:

    ip route add to local IP_ADDRESS dev DYNAMIC_NIC_DEVICE_NAME proto 66
    

    Substitua:

    • IP_ADDRESS: o intervalo de IP de alias ou o endereço IP da regra de encaminhamento em que você quer adicionar uma rota local.
    • DYNAMIC_NIC_DEVICE_NAME: o nome do dispositivo da NIC dinâmica em que você quer adicionar uma rota local. Por exemplo, a-gcp.ens4.3.

Problemas com a instalação e o gerenciamento de NICs dinâmicas nas versões 20250901.00 a 20251120.01 do agente convidado

Se você configurar o gerenciamento automático de NICs dinâmicas e sua instância estiver executando o agente convidado em uma versão de 20250901.00 a 20251120.01, talvez você encontre os seguintes problemas:

  • O agente convidado não consegue instalar e gerenciar NICs dinâmicas no SO convidado da instância.

    Talvez você receba um erro que inclua Cannot find device ao executar comandos no SO convidado que fazem referência a NICs dinâmicas.

  • A exclusão de várias NICs dinâmicas faz com que o servidor de metadados fique inacessível.

Causa raiz

A partir da versão 20250901.00, o agente convidado migrou para uma nova arquitetura baseada em plug-ins para melhorar a modularidade. A nova arquitetura não era compatível com a instalação e o gerenciamento automáticos de NICs dinâmicas.

Resolução

Para resolver esses problemas, atualize sua instância para usar a versão 20251205.00 ou mais recente do agente convidado:

  1. Para atualizar o agente convidado para a versão mais recente, consulte Atualizar o ambiente convidado.
  2. Para confirmar a versão do agente convidado que sua instância está executando, consulte Ver pacotes instalados por versão do sistema operacional.

Se necessário, você pode contornar temporariamente esses problemas em instâncias que estão executando versões do agente convidado de 20250901.00 a 20251120.01 seguindo as instruções em Compatibilidade com versões anteriores para reverter à arquitetura anterior do agente convidado.

As operações de NIC dinâmica falham quando uma instância de computação está em vários grupos de instâncias

Se você adicionar ou excluir uma NIC dinâmica e a operação ficar travada em um estado RUNNING com 0% de progresso e, por fim, falhar com um INTERNAL_ERROR, pode ser porque a instância de computação está em vários grupos de instâncias (gerenciados ou não).

Para permitir que a operação seja concluída, remova a instância de todos os grupos, exceto um. É possível remover uma instância de um grupo de instâncias gerenciadas ou remover uma instância de um grupo de instâncias não gerenciadas.

A seguir