Modo Híbrido Não Vinculado
No modo Hybrid Unbonded, uma interface de rede é removida do vínculo da Camada 3 e colocada no modo da Camada 2. As VLANs podem então ser atribuídas a essa interface para conectividade da Camada 2, preservando a conectividade da Camada 3, para que o servidor ainda possa ser acessado em seu endereço IP público.

Embora isso seja desejável em algumas situações, introduz um único ponto de falha no switch upstream ou na interface de rede . Uma interrupção, evento de manutenção ou reinicialização em qualquer um dos switches causará interrupções na rede .
Se você tiver preocupações com alta disponibilidade, o Modo Híbrido Bonded suporta as Camada 2 e 3, mantendo a interface de rede "bonded" de alta disponibilidade que abrange 2 switches upstream distintos.
Visão geral
- O Modo Híbrido Não Ligado rompe
eth1da ligação e o tráfego da Camada 3 não fluirá mais sobreeth1. - Você pode então adicionar VLANs a
eth1para seu tráfego de Camada 2. Se você estiver adicionando apenas uma VLAN aeth1, o tráfego não deve ser etiquetado. - Se você estiver adicionando mais de uma VLAN a
eth1, você precisará criar subinterfaces para alça com o tráfego marcado para cada VLAN e/ou você terá que definir uma VLAN nativa para alça com o tráfego não marcado. bond0will continue to handle your Layer 3 traffic, and Internet access is preserved through your Equinix Metal assigned public IP address.- Se você adicionar VLANs a
bond0, você criar subinterfaces para lidar com o tráfego marcado para cada VLAN.bond0não suporte tráfego de Camada 2 não marcado ou configuração de uma VLAN nativa.
Convertendo para o modo híbrido não vinculado
O modo Híbrido Não Agregado remove a interface eth1 da agregação LACP, você adicionar VLANs de Camada 2 a eth1 enquanto preserva os IPs elásticos atribuídos à interface de Camada 3 agregada.
- Console
- CLI
- API
Para usar o modo Híbrido Não Agregado, você precisa primeiro alterar a configuração de rede para o modo Híbrido. No console, acesse a guia Rede do servidor, clique em Converter para outro tipo de rede, selecione Híbrido e escolha Não Agregado. Clique em Converter para Híbrido para aplicar as alterações.

Em seguida, na página Rede do servidor, clique em Adicionar nova VLAN. Escolha eth1 como interface e selecione o ID da Rede Virtual (VNID ou ID da VLAN ) que deseja usar.

Para atribuir várias VLANs simultaneamente, continue adicionando VLANs no menu suspenso. Observe que, se você atribuir várias VLANs simultaneamente, elas serão adicionadas por meio de um processo em lote assíncrono, que começa imediatamente, mas pode levar algum tempo para ser concluído.
Primeiro, remova a porta eth1 da interface de rede agregada com o comando metal port convert. Use o UUID da porta eth1 como --port-id e defina seu estado --bonded para false.
metal port convert --port-id <eth1_id> --bonded=false
Em seguida, atribua uma VLAN a eth1 com o comando metal port vlan. Especifique o UUID de eth1 para --port-id e a VLAN que você está atribuindo a --assign.
metal port vlan --port-id <eth1_id> --assign <VLAN_id>
O VLAN_id pode ser tanto o UUID da VLAN quanto o número de ID da VLAN que está no console.
Primeiro você precisará remover eth1 do vínculo. Envie uma solicitar POST para o endpoint /ports/{id}/disbond.
Você precisa especificar o ID da porta de eth1 no caminho, e precisa ser o UUID para essa porta conforme retornado pelo endpoint /devices/{id}.
Defina o campo bulk_disable como false no corpo da solicitar.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ports/{id}/disbond" \
-d '{
"bulk_disable": false
}'
Em seguida, você precisa atribuir sua VLAN a eth1. Envie uma solicitar POST para o endpoint /ports/{id}/assign.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ports/{id}/assign" \
-d '{
"vnid": "<vlan_ID>"
}'
O 'vnid' é o ID da VLAN que é enviado no corpo da solicitar. O ID pode ser o UUID da VLAN retornado pelo endpoint /projects/{id}/virtual-networks ou o ID da VLAN que está no console.
Também é possível atribuir VLANs a uma porta em massa, como parte de um processo em lote assíncrono. Envie uma solicitar POST para o endpoint /ports/{id}/vlan-assignments/batches uma matriz de atribuições de VLAN no corpo da solicitar.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN> " \
"https://api.equinix.com/metal/v1/ports/{id}/vlan-assignments/batches" \
-d '{
"vlan_assignments": [
{
"vlan": "string",
"state": "assigned"
},
{
"vlan": "string",
"state": "assigned"
},
]
}'
Configurando seus servidores
Depois de você o servidor para o modo Híbrido Não Agregado e atribuir a VLAN a eth1, você precisará configurar a rede no sistema operacional do servidor e atribuir a ele um endereço IP na VLAN.
Nota: Não é recomendável usar a sub-rede que começa com 10.x.x.x para o tráfego da sua VLAN, pois a utilizamos para a rede privada do servidor e podem ocorrer colisões se você usar a mesma sub-rede.
Existem duas configurações de exemplo, o primeiro exemplo é uma configuração para atribuir uma única VLAN a eth1, o segundo exemplo é para atribuir várias VLANs a eth1 e/ou para atribuir VLANs a bond0.
Para uma única VLAN em eth1
Se você tiver apenas uma VLAN, não marque o tráfego e atribua o endereço IP da VLAN diretamente à interface.
Os exemplos a seguir usam uma VLAN com ID de VLAN 1036 e sub-rede 198.51.100.0/24.
- iproute2
- nmcli
O iproute2 é um utilitário para gerenciar configurações de rede no kernel do Linux. Ele está incluído na maioria das distribuições do sistema operacional Linux.
Em nossas imagens de SO, as interfaces não são referenciadas como eth1 e eth0. Neste exemplo, eth1 no console corresponde a enp1s0f1 no sistema operacional.
-
Abaixe a interface
enp1s0f1.ip link set down enp1s0f1 -
Certifique-se de que
enp1s0f1foi removido debond0.ip -d link show enp1s0f1Se não tiver sido removido, remova-o.
ip link set enp1s0f1 nomaster -
Configure
enp1s0f1com um endereço IP para a VLAN. O exemplo usa o endereço IP198.51.100.4/24.ip addr add 198.51.100.4/24 dev enp1s0f1 -
Abra a interface e verifique se ela está funcionando novamente.
ip link set dev enp1s0f1 upip -d link show enp1s0f1
-
Opcional: Para tornar a configuração de rede permanente e sobreviver a reinicializações do servidor, edite
enp1s0f1no arquivo/etc/network/interfaces.auto enp1s0f1iface enp1s0f1 inet manualaddress 192.168.1.2netmask 255.255.255.248pre-up sleep 4E lembre-se também de remover
enp1s0f1debond0(exemplo truncado).auto bond0iface bond0 inet static...bond-slaves enp1s0f0dns-nameservers 147.75.207.207 147.75.207.208...
nmcli é a ferramenta de CLI para o Network Manager, um utilitário para gerenciar configurações de rede no Rocky Linux, RHEL e CentOS Streams.
Em nossas imagens de sistema operacional, as interfaces não são representadas por aliases como eth1 e eth0. Neste exemplo, eth1 no console corresponde a enp1s0f1 no sistema operacional.
-
Remova
enp1s0f1debond0.nmcli connection delete "System enp1s0f1" -
Crie uma nova conexão para a interface
enp1s0f1do tipoethernet. O exemplo usa o nome "vlan-enp1s0f1" por conveniência.nmcli connection add con-name vlan-enp1s0f1 type ethernet ifname enp1s0f1 -
Configure a conexão com um endereço IP para a VLAN. O exemplo usa o endereço IP
198.51.100.5/24.nmcli connection modify vlan-enp1s0f1 ipv4.addresses 198.51.100.5/24nmcli connection modify vlan-enp1s0f1 ipv4.method manual -
Traga a conexão.
nmcli connection up vlan-enp1s0f1
Você precisa executar as mesmas etapas em todos os servidores que você conectar à VLAN, atribuindo um endereço IP diferente a cada um.
Para várias VLANs em eth1 ou VLANs em bond0
Se você estiver usando várias VLANs em eth1, ou se você adicionando VLANs a bond0, os pacotes IP precisarão ser etiquetados e você precisará configurar subinterfaces que receberão os pacotes destinados a cada VLAN. Se você de suporte para pacotes não etiquetados, defina a VLAN que lida com os pacotes não etiquetados como a VLAN Nativa.
Os exemplos a seguir usam eth1 e:
- Uma VLAN com ID de VLAN
1036e sub-rede198.51.100.0/24. - Uma VLAN com ID de VLAN
2025e sub-rede203.0.113.0/24.
- iproute2
- nmcli
O iproute2 é um utilitário para gerenciar configurações de rede no kernel do Linux. Ele está incluído na maioria das distribuições do sistema operacional Linux.
Em nossas imagens de SO, as interfaces não são referenciadas como eth1 e eth0. Neste exemplo, eth1 no console corresponde a enp1s0f1 no sistema operacional.
-
Instale e configure os pré-requisitos para VLANs, caso ainda não o você feito.
apt-get install vlanmodprobe 8021qecho "8021q" >> /etc/modules -
Certifique-se de que
enp1s0f1foi removido debond0.ip -d link show enp1s0f1Se não tiver sido removido, remova-o.
ip link set dev enp1s0f1 nomaster -
Adicione novas subinterfaces em
enp1s0f1para alça com tráfego marcado, uma para cada VLAN. O exemplo usa IDs de VLAN1036e2025.ip link add link enp1s0f1 name enp1s0f1.1036 type vlan id 1036ip link add link enp1s0f1 name enp1s0f1.2025 type vlan id 2025 -
Atribua endereços IP às subinterfaces. O exemplo usa
198.51.100.2/24e.ip addr add 198.51.100.2/24 dev enp1s0f1.1036ip addr add 203.0.113.2/24 dev enp1s0f1.2025 -
Abra as interfaces e verifique se elas foram ativadas.
ip link set dev enp1s0f1.1036 upip -d link show enp1s0f1.2025ip link set dev enp1s0f1.1036 upip -d link show enp1s0f1.2025
-
Opcional: Para tornar a configuração de rede permanente e sobreviver a reinicializações do servidor, adicione as novas subinterfaces ao arquivo
/etc/network/interfaces.auto enp1s0f1.1036iface enp1s0f1.1036 inet staticaddress 198.51.100.2netmask 255.255.255.0vlan-raw-device enp1s0f1auto enp1s0f1.2025iface enp1s0f1.2025 inet staticaddressnetmask 255.255.255.0vlan-raw-device enp1s0f1E lembre-se também de remover
enp1s0f1debond0(exemplo truncado).auto bond0iface bond0 inet static...bond-slaves enp1s0f0dns-nameservers 147.75.207.207 147.75.207.208...
nmcli é a ferramenta de CLI para o Network Manager, um utilitário para gerenciar configurações de rede no Rocky Linux, RHEL e CentOS Streams.
:::observação
Em nossas imagens de sistema operacional, as interfaces não são referenciadas como eth1 e eth0. Neste exemplo, eth1 no console corresponde a enp1s0f1 no sistema operacional.
:::
-
Habilitar suporte a VLAN e interface marcada.
echo 8021q > /etc/modules-load.d/8021q.conf -
Remova
enp1s0f1da ligação.nmcli connection delete "System enp1s0f1" -
Crie uma nova conexão que adicione uma subinterface em
enp1s0f1para alça com tráfego marcado. O exemplo usa IDs de VLAN1036e2025.nmcli connection add type vlan con-name enp1s0f1.1036 ifname enp1s0f1.1036 vlan.parent enp1s0f1 vlan.id 1036nmcli connection add type vlan con-name enp1s0f1.2025 ifname enp1s0f1.2025 vlan.parent enp1s0f1 vlan.id 2025 -
Atribua endereços IP de suas sub-redes VLAN às conexões. Os exemplos usam os endereços IP
198.51.100.3e203.0.113.3.nmcli connection modify enp1s0f1.1036 ipv4.addresses '198.51.100.3/24' ipv4.method manualnmcli connection modify enp1s0f1.1036 ipv4.addresses '203.0.113.3/24' ipv4.method manual -
Traga ambas as conexões
nmcli con up enp1s0f1.1036nmcli con up enp1s0f1.2025
Você precisará executar as mesmas etapas em todos os servidores que você conectar às VLANs, atribuindo diferentes endereços IP a cada um.
Testando a conexão VLAN
Agora você deve conseguir se comunicar entre os servidores na sua rede VLAN Camada 2 .
[root@nmcli-testing ~]# ping 198.51.100.2
>
PING 198.51.100.2 (198.51.100.2) 56(84) bytes of data.
64 bytes from 198.51.100.2: icmp_seq=1 ttl=64 time=0.703 ms
64 bytes from 198.51.100.2: icmp_seq=2 ttl=64 time=0.444 ms
64 bytes from 198.51.100.2: icmp_seq=3 ttl=64 time=0.451 ms
64 bytes from 198.51.100.2: icmp_seq=4 ttl=64 time=0.412 ms
^C
--- 198.51.100.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3113ms
rtt min/avg/max/mdev = 0.412/0.502/0.703/0.116 ms
Convertendo de volta para a camada 3
Se você quiser voltar ao modo padrão de agregação de camada 3, primeiro você deve remover todas as VLANs atribuídas e, em seguida, adicionar eth1 de volta à interface agregada.
- Console
- CLI
- API
Para desatribuir uma VLAN no console, navegue até a guia Rede do servidor. Na seção Camada 2, selecione a VLAN que você está desatribuindo da porta. Clique em Remover.

Observe que desatribuir a VLAN NÃO a exclui do seu projeto. A VLAN continuará existindo após desatribuí-la da porta.
Em seguida, para converter de volta para a Camada 3, clique em Converter para outro tipo de rede, selecione Camada 3. Clique em Converter para Camada 3 para iniciar o processo.

Remova as VLANs da interface eth1 com o comando metal porta vlan. Especifique o UUID de eth1 para --port-id e a VLAN que você está removendo para --unassign.
metal port vlan --port-id <eth1_id> --unassign <vlan>
Em seguida, retorne eth1 para a ligação com o comando metal porta convert.
metal port convert -i <eth1_id> --bonded=true
Para remover a atribuição de uma VLAN de uma porta, envie uma solicitar POST para o endpoint /ports/{id}/unassign.
Você precisa especificar o ID da porta eth1 no caminho e o ID da VLAN no corpo da solicitar. Pode ser o UUID da VLAN ou o ID da VLAN que está no console.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ports/{id}/unassign" \
-d '{
"vnid": "1173"
}'
Você também pode remover várias VLANs de uma porta em massa, como parte de um processo em lote assíncrono. Envie uma solicitar POST para o endpoint /ports/{id}/vlan-assignments/batches com uma matriz de atribuições de VLAN no corpo da solicitar e seu estado definido como "unassigned".
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: API_TOKEN" \
"https://api.equinix.com/metal/v1/ports/{id}/vlan-assignments/batches" \
-d '{
"vlan_assignments": [
{
"vlan": "string",
"state": "unassigned"
},
{
"vlan": "string",
"state": "unassigned"
}
]
}'
Em seguida, você retorna a porta para o vínculo de camada 3. Envie uma solicitar POST para o endpoint /ports/{id}/bond.
curl -X POST \
-H "Content-Type: application/json"\
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ports/{id}/bond" \
-d '{
"bulk_enable": false
}'