Redes do cluster: tipos, dual-stack e pools de endereços
No vStack Center, uma rede é um objeto no nível do cluster. Ela tem um tipo, uma sub-rede (uma para IPv4, uma para IPv6 ou ambas), um gateway padrão, um MTU e um pool de endereços. Quem pode criar uma rede depende do tipo dela. Depois de criada, a rede é atribuída a um data center virtual (VDC), e as máquinas virtuais do VDC se conectam a ela por meio de uma interface de rede e recebem um endereço do pool.
A criação e a exclusão de uma rede são operações assíncronas. O dispatcher do cluster aceita a solicitação, repassa-a ao agente de rede e responde quando ela é concluída: o resultado final chega em uma mensagem de retorno separada. Portanto, a criação tem dois desfechos: uma solicitação aceita e uma rede confirmada. Entre um e outro, a rede ainda não está pronta para receber máquinas.
Já a modificação de uma rede é síncrona e muito limitada: apenas o nome de uma rede
existente pode ser alterado. A sub-rede, o gateway, o MTU e o VLAN ID são fixados na
criação. Isso também se reflete na interface, em que o cartão da rede permite editar
apenas o campo Name, enquanto os demais são somente leitura.
O pool gerencia os endereços dentro da rede. Ele determina quais endereços estão livres para atribuição a uma máquina, quais já estão em uso e quais foram excluídos por um administrador. O pool funciona de forma diferente para IPv4 e IPv6. Essa é a principal assimetria a ser entendida antes de atribuir endereços pela primeira vez; uma seção específica abaixo trata dela.
Tipos de rede
O tipo é definido na criação e não pode ser alterado. Ele determina os parâmetros obrigatórios e qual papel pode criar a rede.
| Tipo | Valor de type | VLAN ID | C-VLAN (qinq_id) | Quem pode criar |
|---|---|---|---|---|
| Isolada | 1 | Opcional | Não permitido | Cluster master, vDC admin e superiores |
| Roteada | 2 | Obrigatório | Não permitido | Somente Cluster master |
| GENEVE | 3 | Opcional | Não permitido | Cluster master, vDC admin e superiores |
| Q-in-Q | 4 | Obrigatório (tag externa, S-VLAN) | Obrigatório (tag interna) | Somente Cluster master |
As duas tags são obrigatórias para Q-in-Q: vlan_id contém a tag externa, e qinq_id
contém a tag interna. Para os tipos 1–3, a tag interna não é permitida; uma solicitação
que a contenha é rejeitada.
Parâmetros e limites da rede
| Parâmetro | Padrão | Limites | Comentário |
|---|---|---|---|
cidr | Nenhum | Prefixo de /16 a /29 | A sub-rede IPv4 da rede |
cidr_v6 | Nenhum | CIDR IPv6 válido | A sub-rede IPv6 da rede |
vlan_id | Nenhum | Intervalo de VLANs aceito pelo cluster | S-VLAN para Q-in-Q |
qinq_id | Nenhum | Intervalo de VLANs aceito pelo cluster | C-VLAN, apenas para Q-in-Q |
mtu | 1500 | 1000–9180 e não acima do máximo do cluster | Jumbo Frames dentro do máximo |
default_gw | Nenhum | Endereço dentro de cidr | Gateway IPv4 |
default_gw_v6 | Nenhum | Endereço dentro de cidr_v6 | Gateway IPv6 |
backend | 2 | Inteiro ≥ 0 | Backend de rede; 2 é NetGraph |
ext_managed_ippool | 0 | — | Indica que um sistema externo gerencia o pool de endereços |
É necessária pelo menos uma sub-rede: não é possível criar uma rede sem cidr e sem
cidr_v6. O prefixo IPv4 é verificado em relação aos dois limites: uma sub-rede ampla
demais e uma estreita demais são rejeitadas com códigos de erro diferentes, e o texto da
resposta especifica o número de bits.
Dual-stack: IPv4 e IPv6 em uma rede
Uma rede pode ser somente IPv4, somente IPv6 ou dual-stack. Os dois protocolos convivem em um único objeto: a rede tem duas sub-redes e dois gateways padrão, cada um dentro da própria sub-rede. Uma máquina virtual em uma rede dual-stack recebe endereços das duas famílias, e eles aparecem juntos na lista de endereços em uso, sem separação por protocolo.
O gateway IPv6 é imediatamente excluído da atribuição: quando default_gw_v6 é
especificado, o endereço dele é adicionado automaticamente à lista de endereços IPv6
reservados, de modo que não pode ser atribuído a uma máquina.
Pool de endereços: lista de permissões para IPv4, lista de bloqueios para IPv6
Esta é a diferença principal. Para IPv4, o pool é uma lista de endereços permitidos: um endereço está disponível para atribuição porque está no pool. Para IPv6, o pool é uma lista de reservas: um endereço está disponível porque não está na lista de reservas. Portanto, a mesma operação "adicionar um endereço ao pool" tem efeito oposto sobre os dados subjacentes, embora signifique a mesma coisa: o endereço pode ser atribuído novamente a uma máquina.
| Aspecto | IPv4 | IPv6 |
|---|---|---|
| O que o pool armazena | Endereços permitidos | Endereços reservados (excluídos) |
| Um endereço está disponível se | Está no pool | Não está entre as reservas |
| "Adicionar um endereço ao pool" | Adiciona um registro; o endereço fica disponível | Remove uma reserva; o endereço fica disponível |
| "Remover um endereço do pool" | Remove um registro; o endereço não pode mais ser atribuído | Adiciona uma reserva; o endereço não pode mais ser atribuído |
| Contador de endereços livres | Calculado a partir do pool | Calculado como o tamanho da sub-rede menos as reservas menos os endereços atribuídos |
Essa assimetria leva a uma regra prática: a lista de permissões de uma sub-rede IPv6 nunca é preenchida. Não procure entradas nela depois de criar a rede; o gerenciamento usa reservas.
Uma lista de reservas IPv6 vazia também não indica nada: ela permanece vazia mesmo em uma
rede com sub-rede IPv6 até que um gateway IPv6 seja definido, um administrador exclua
endereços ou uma máquina receba um endereço IPv6. Se uma rede tem ou não uma sub-rede
IPv6 é determinado por cidr_v6, definido na criação.
O contador de endereços IPv6 livres é limitado pela largura do inteiro: para sub-redes
amplas (prefixo /65 ou mais curto, incluindo o habitual /64), a quantidade de endereços
não cabe em um inteiro de 64 bits com sinal, por isso é retornado -1. Isso não é um
erro; significa "muitos para contar". Um número exato está disponível apenas para
sub-redes IPv6 estreitas; para uma rede sem sub-rede IPv6, o contador é 0.
O que a interface mostra
| Tela | Conteúdo | Finalidade |
|---|---|---|
Provider Data Center → All Networks | Tabela com ID, Type, Name, VLAN ID, MTU, CIDR, Used IP Addresses, Free IP Addresses e exportação CSV | Todas as redes do cluster e os endereços disponíveis |
| Cartão da rede | Formulário com Name editável e campos somente leitura; seções General properties, IPPool usage e IPPool space | Parâmetros da rede, endereços em uso discriminados por VDC e contadores do pool |
VDC → Networks, guia Primary | Tabela com a coluna Assign | Redes atribuídas a este VDC |
VDC → Networks, guia IP Data | Used IP addresses by this vDC, Used IP Addresses, Free IP Addresses, Addrs limit | Quantos endereços o VDC usou e o limite dele |
Cartão da VM, seção Networks | Tabela com ID, Name, Slot, Port, MAC, IP, IP guard, MBps limit | O endereço recebido pela máquina |

A seção IPPool space no cartão da rede divide os endereços em três contadores: livres,
em uso e ausentes do pool. O terceiro contador decorre diretamente da lógica da lista de
permissões do IPv4: o endereço está dentro da sub-rede, mas não pode ser atribuído até
ser adicionado ao pool.
Limitações que você deve conhecer com antecedência
| Limitação | Motivo | Ação |
|---|---|---|
| Apenas o nome de uma rede pode ser alterado | A sub-rede, o gateway, o MTU e as tags VLAN são fixados na criação | Crie uma nova rede com os parâmetros necessários e transfira as máquinas para ela |
| Uma rede com consumidores conectados não pode ser excluída | A exclusão interromperia a conectividade das máquinas em execução | Desconecte da rede as interfaces das máquinas e dos roteadores definidos por software (Edge) e depois exclua-a |
vDC admin não pode criar redes roteadas nem Q-in-Q | Esses tipos afetam o roteamento externo e a marcação de VLANs em todo o cluster | Peça a um usuário com o papel Cluster master que crie a rede |
O contador de IPv6 livres mostra -1 | A sub-rede é mais ampla que /65, e o tamanho dela não é calculado | Oriente-se pela lista de reservas e de endereços atribuídos ou use uma sub-rede estreita |
vDC admin só pode modificar e excluir as próprias redes | Para esses papéis, a propriedade do objeto está vinculada a quem o criou | Atue como Cluster master: esse papel pode modificar e excluir qualquer rede, independentemente de quem a criou |
Veja também
- Como criar e gerenciar uma rede — criação, renomeação e exclusão.
- Pool de endereços e endereçamento de VMs — visualização do pool, exclusão de endereços e acompanhamento dos endereços atribuídos.
Métodos da API
As operações da API tratadas nesta página são nets-create, net-list, net-set,
nets-delete, net-ippool-show e net-ippool-free. Consulte a
referência da API.