Configurando o Linux para Usar um Endereço IP Privado Secundário

Configure o Linux para usar um endereço IP privado secundário.

Após designar um IP privado secundário a uma VNIC, você deverá configurar o sistema operacional para usá-lo.

Comandos Básicos (Não Persistentes após uma Reinicialização)

Na instância, execute o comando a seguir. Ele funciona em todas as variantes do Linux, tanto para instâncias bare metal quanto para instâncias VM:
ip addr add <address>/<subnet_prefix_len> dev <phys_dev> label <phys_dev>:<addr_seq_num>
onde:
  • <address>: o endereço IP privado secundário.
  • <subnet_prefix_len>: o tamanho do prefixo da sub-rede. Por exemplo, se a sub-rede for 192.168.20.0/24, o tamanho do prefixo da sub-rede será 24.
  • <phys_dev>: a interface à qual o endereço será adicionado (por exemplo, ens2f0).
  • <addr_seq_num>: o número sequencial na pilha de endereços do dispositivo (por exemplo, 0).
Por exemplo:
ip addr add 192.168.20.50/24 dev ens2f0 label ens2f0:0

Posteriormente, se quiser excluir o endereço, você poderá usar:

ip addr del 192.168.20.50/24 dev ens2f0:0 

Além disso, certifique-se de excluir o IP secundário da VNIC. Você pode fazer isso antes ou depois de executar o comando acima para excluir o endereço da configuração do sistema operacional.

Observação

Se você tiver designado um IP secundário a uma VNIC secundária e estiver usando o roteamento baseado em política para a VNIC secundária, configure as regras de roteamento da instância para procurar a mesma tabela de roteamento para o endereço IP secundário, usando o comando ip rule add from <source address> lookup <table name>.

Arquivo de Configuração (Persistente após uma Reinicialização)

Você pode tornar a configuração persistente por meio de uma reinicialização adicionando as informações a um arquivo de configuração.

Para Oracle Linux e CentOS

No Oracle Linux 7, crie um arquivo ifcfg chamado /etc/sysconfig/network-scripts/ifcfg-<phys_dev>:<addr_seq_num>. Para continuar com o exemplo anterior, o nome do arquivo seria /etc/sysconfig/network-scripts/ifcfg-ens2f0:0 e o conteúdo seria:

DEVICE="ens2f0:0"
BOOTPROTO=static
IPADDR=192.168.0.50
NETMASK=255.255.255.0
ONBOOT=yes

No Oracle Linux 8 ou Oracle Linux 9, o método preferencial seria usar nmcli para configurar a interface para NetworkManager.

Se o Network Manager substituir as conexões após a reinicialização, a solução preferencial será executar o comando ip addr add <address>/<subnet_prefix_len> dev <phys_dev> label <phys_dev>:<addr_seq_num> no momento da inicialização. Isso pode ser feito com um job cron ou usando /etc/rc.d/rc.local etc. Como alternativa, você pode modificar os parâmetros da linha de comando do kernel para que o dracut não substitua os perfis de conexão do Network Manager.

Observação

Se você tiver designado um IP secundário a uma VNIC secundária e estiver usando o roteamento baseado em política para a VNIC secundária, configure as regras de roteamento da instância para procurar a mesma tabela de roteamento para o endereço IP secundário, usando o comando ip rule add from <source address> lookup <table name>.

Para Ubuntu

Crie ou modifique uma configuração do netplan armazenada em /etc/netplan/<filename>.yaml. Para continuar com o exemplo anterior, o nome do arquivo seria /etc/netplan/50-cloud-init.yaml e seria modificado para desativar o DHCP (para todos os endereços) e substituí-lo pela configuração manual, como mostrado:


network:
  ethernets:
    ens3: 
      dhcp4: no
    addresses: [192.168.64.223/24, 192.168.64.75/24]
    gateway4: 192.168.64.1
    nameservers:
      addresses: [169.254.169.254] 
    match:
      macaddress: 02:00:17:0e:66:7b
    set-name: ens3  
    version: 2

Neste exemplo, 192.168.64.223 é o endereço IP principal designado à VNIC e 192.168.64.75 é o endereço IP secundário. macaddress se refere à VNIC e isso pode ser encontrado na console ou por meio de oci-utils. Exemplos mais complexos de configuração do netplan podem ser encontrados nas páginas de referência do netplan. Consulte Anexando VLANs a interfaces de rede para obter um exemplo upstream.

Observação

Se você tiver designado um IP secundário a uma VNIC secundária e estiver usando o roteamento baseado em política para a VNIC secundária, configure as regras de roteamento da instância para procurar a mesma tabela de roteamento para o endereço IP secundário, usando o comando ip rule add from <source address> lookup <table name>.