Várias interfaces de rede

Nesta página, você encontra uma visão geral de várias interfaces de rede para instâncias de VM do Compute Engine. As instâncias com várias interfaces de rede são chamadas de instâncias multi-NIC.

Uma instância sempre tem pelo menos uma interface de rede virtual (vNIC). Dependendo do tipo de máquina, é possível configurar outras interfaces 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: instâncias de várias NICs podem se conectar a recursos localizados em diferentes redes VPC que não estão conectadas entre si por peering de rede VPC ou Network Connectivity Center.

    • Como cada interface de uma instância multi-NIC está em uma rede VPC separada, é possível usar cada uma 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 placas de rede, é necessário configurar políticas de roteamento e tabelas de roteamento local.

  • Pacotes de roteamento entre redes VPC: as 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 multi-NIC 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, é recomendável configurar duas ou mais instâncias com várias NICs, usando-as como back-ends para um balanceador de carga de rede de passagem interna 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.

Você também pode usar instâncias de várias NICs com interfaces do Private Service Connect para conectar redes de produtores e consumidores de serviços em diferentes projetos.

Tipos de interface de rede

OGoogle Cloud é compatível com os seguintes tipos de interfaces de rede:

  • vNICs: as interfaces de rede virtual das instâncias do Compute Engine. Cada instância precisa ter pelo menos uma vNIC. As vNICs em redes VPC regulares podem ser GVNIC, VIRTIO_NET ou IDPF. Só é possível configurar vNICs ao criar uma instância.

  • NICs dinâmicas (pré-lançamento): uma interface secundária de uma vNIC principal. É possível configurar NICs dinâmicas ao criar uma instância ou adicioná-las depois. Para mais informações, consulte NICs dinâmicas.

Também é possível configurar instâncias de várias NICs usando tipos de máquina que incluem interfaces de rede RDMA (IRDMA ou MRDMA), que precisam ser anexadas a uma rede VPC com um perfil de rede RDMA. Outros tipos de interfaces de rede, incluindo NICs dinâmicas, não são compatíveis com redes VPC que têm um perfil de rede RDMA.

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.
  • Rede exclusiva para cada interface de rede: exceto para redes VPC criadas com um perfil de rede RDMA, cada interface de rede precisa usar uma sub-rede em uma rede VPC exclusiva.

    • Para redes VPC criadas com um perfil de rede RDMA, várias NICs RDMA podem usar a mesma rede VPC, desde que cada NIC RDMA use uma sub-rede exclusiva.

    • Uma rede e uma sub-rede VPC precisam existir antes que você possa 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.

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

  • Encaminhamento de IP, MTU e considerações de 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 pode ser configurada 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 de transmissão máxima (MTU) 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. A menos que configurado manualmente de outra forma, 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.

      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.

NICs dinâmicas

As NICs dinâmicas são úteis nos seguintes cenários:

  • É necessário adicionar ou remover interfaces de rede das instâncias atuais. Não é necessário reiniciar ou recriar a instância para adicionar ou remover NICs dinâmicas.

  • Você precisa de mais interfaces de rede. O número máximo de vNICs para a maioria dos tipos de máquina em Google Cloud é 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 de NICs dinâmicas

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

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

    • 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.

  • Criar uma instância com NICs dinâmicas ou adicionar NICs dinâmicas a uma instância existente exige etapas adicionais para instalar e gerenciar as interfaces VLAN correspondentes no SO convidado. Você pode usar um dos métodos a seguir:

    • Configure o gerenciamento automático de NICs dinâmicas usando o agente convidado do Google.
    • Configure 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, e não há isolamento de tráfego em uma vNIC mãe. Para evitar que qualquer uma das interfaces de rede consuma toda a largura de banda, crie uma política de tráfego específica do aplicativo no SO convidado para priorizar ou distribuir o tráfego, como usando o Linux Traffic Control (TC).

  • As NICs dinâmicas compartilham as mesmas filas de recebimento e transmissão que a vNIC mãe.

Limitações das NICs dinâmicas

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

  • Não é possível modificar as seguintes propriedades de uma NIC dinâmica depois que ela é criada:

    • A vNIC mãe a que a NIC dinâmica pertence.
    • O ID da VLAN da NIC dinâmica.
  • As NICs dinâmicas não são compatíveis com o seguinte:

  • Uma NIC dinâmica com uma vNIC principal do tipo GVNIC pode sofrer perda de pacotes com alguns tamanhos de MTU personalizados. Para evitar a perda de pacotes, não use os seguintes tamanhos de MTU: 1986 bytes, 3986 bytes, 5986 bytes e 7986 bytes.

  • Para VMs de terceira geração, uma NIC dinâmica com um ID de VLAN de 255 não pode acessar o endereço IP do servidor de metadados. Se você precisar acessar o servidor de metadados, use um ID da VLAN diferente.

  • Para VMs de terceira geração, excluir e adicionar uma NIC dinâmica com o mesmo ID da VLAN pode permitir acesso não autorizado em diferentes redes VPC. Saiba mais em Problemas conhecidos.

Tipos de pilha e endereços IP

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

  • Somente IPv4
  • Pilha dupla
  • Somente IPv6

A tabela a seguir descreve os tipos de pilha de sub-rede e os detalhes de endereço IP compatíveis 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: se quiser, atribua à interface um ou mais intervalos de IP de alias. Cada intervalo de IP do 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 do 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 singularidade 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 singularidade 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 interno e um intervalo de endereços IPv6 externo, 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 interno ou externo estático. 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 mais informações, 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áquina, o número máximo de interfaces de rede que podem ser anexadas a uma instância é escalonado com o número de vCPUs, conforme descrito nas tabelas a seguir.

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

  • As instâncias bare metal do Compute Engine aceitam uma única vNIC.

  • 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 otimizada para aceleradores.

Número máximo de interfaces

Use a tabela a seguir para determinar quantas interfaces de rede podem ser anexadas 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
(vNICs + 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 principal.

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 NICs dinâmicas em 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 2 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)
2 1 1 2
2 0

4 vCPUs, 4 NICs

A tabela a seguir mostra exemplos para uma instância com 4 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)
4 1 3 4
2 1
4 0

8 vCPUs, 8 NICs

A tabela a seguir mostra exemplos para 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 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)
22 1 15 16
2 7
4 3
8 1

Interações com o produto

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

VPC compartilhada

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

  • Cada interface de rede de uma instância com várias placas de rede 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 placas de rede 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 qualquer 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

As rotas estáticas podem ser limitadas a 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. Como resultado, adicionar ou remover uma tag de rede de uma instância pode mudar quais rotas estáticas se aplicam a qualquer uma das interfaces de rede da instância.

Balanceadores de carga

Os back-ends de grupo de instâncias e de NEG zonal têm uma rede VPC associada da seguinte maneira:

  • Para grupos gerenciados de instâncias (MIGs), a rede VPC do grupo de instâncias é a rede VPC atribuída à interface nic0 no modelo de instância.

  • Para grupos de instâncias não gerenciadas, a rede VPC do grupo de instâncias é a rede VPC usada pela interface de rede nic0 da primeira instância adicionada ao grupo de instâncias não gerenciadas.

A tabela a seguir mostra quais back-ends aceitam distribuir conexões ou solicitações para qualquer interface de rede.

Balanceador de carga Grupos de instâncias GCE_VM_IP NEGs GCE_VM_IP_PORT NEGs
Balanceador de carga de rede de passagem externa baseado em serviço de back-end
O serviço de back-end não está associado a uma rede VPC. Para mais informações, consulte Serviços de back-end e redes VPC.
Apenas o nic0 Qualquer NIC N/A
Balanceador de carga de rede de passagem interna
O serviço de back-end está associado a uma rede VPC. Para mais informações, consulte Especificação de rede de serviços de back-end e Regras de rede de serviços de back-end.
Qualquer NIC Qualquer NIC N/A
Balanceador de carga de rede de proxy externo
Para mais informações sobre os requisitos de rede e serviço de back-end, consulte Back-ends e redes VPC.
Apenas o nic0 N/A Qualquer NIC
Balanceador de carga de rede de proxy interno
Para mais informações sobre os requisitos de rede e serviço de back-end, consulte Back-ends e redes VPC.
Apenas o nic0 N/A Qualquer NIC
Balanceador de carga de aplicativo externo
Para mais informações sobre os requisitos de rede e serviço de back-end, consulte Back-ends e redes VPC.
Apenas o nic0 N/A Qualquer NIC
Balanceador de carga de aplicativo interno
Para mais informações sobre os requisitos de serviço de back-end e de rede, consulte Back-ends e redes VPC.
Apenas o nic0 N/A Qualquer NIC

Os balanceadores de carga de rede de passagem externa baseados em pool de destino não usam grupos de instâncias nem NEGs e só oferecem suporte ao balanceamento de carga para interfaces de rede nic0.

Regras de firewall

O conjunto de regras de firewall (de políticas de firewall hierárquicas, 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 uma instância com 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 tags seguras, que se aplicam a todas as interfaces de rede de uma instância. Para mais informações, consulte Comparação entre tags seguras e tags de rede.

Problemas conhecidos

Esta seção descreve problemas conhecidos relacionados ao uso de várias interfaces de rede em Google Cloud.

Interações de firewall ao reutilizar um ID da VLAN com NICs dinâmicas

Para VMs de terceira geração, excluir e adicionar uma NIC dinâmica com o mesmo ID da VLAN pode permitir acesso não autorizado em diferentes redes VPC.

Considere o seguinte cenário que inclui duas redes (network-1 e network-2) e um ID da VLAN A:

  1. Você exclui uma NIC dinâmica com o ID da VLAN A de network-1.
  2. Dentro do período de 10 minutos de rastreamento de conexão do Cloud NGFW, crie uma nova NIC dinâmica com o mesmo ID da VLAN A em network-2.
  3. O tráfego originado da nova NIC dinâmica em network-2 pode corresponder a uma entrada de rastreamento de conexão existente criada anteriormente pela NIC dinâmica excluída em network-1.

Se isso acontecer, o tráfego enviado ou recebido pela nova NIC dinâmica em network-2 poderá ser permitido se corresponder a uma entrada na tabela de rastreamento de conexão do Cloud NGFW, em que a entrada foi criada para uma conexão usada pela NIC dinâmica excluída em network-1. Para evitar esse problema, consulte a solução alternativa a seguir.

Alternativa:

Para evitar esse problema, siga um destes procedimentos:

  • Depois de excluir uma NIC dinâmica, não reutilize o ID da VLAN ao criar uma nova NIC dinâmica.
  • Depois de excluir uma NIC dinâmica, aguarde pelo menos 10 minutos para criar uma nova NIC dinâmica que use o mesmo ID da VLAN.

Para mais informações sobre rastreamento de conexões e regras de firewall, consulte Especificações na documentação do Cloud Next Generation Firewall.

A seguir