Configuration de Linux pour utiliser une adresse IP privée secondaire

Configurez Linux pour utiliser une adresse IP privée secondaire.

Après avoir affecté une adresse IP privée secondaire à une carte d'interface réseau virtuelle, vous devez configurer le système d'exploitation pour qu'il l'utilise.

Commandes de base (non persistantes en cas de redémarrage)

Sur l'instance, exécutez la commande suivante. Elle fonctionne sur toutes les variantes de Linux, pour les instances Bare Metal et de machine virtuelle :
ip addr add <address>/<subnet_prefix_len> dev <phys_dev> label <phys_dev>:<addr_seq_num>
où :
  • <address> : adresse IP privée secondaire.
  • <subnet_prefix_len> : longueur du préfixe du sous-réseau. Par exemple, si le sous-réseau est 192.168.20.0/24, la longueur de préfixe du sous-réseau est 24.
  • <phys_dev> : interface à laquelle ajouter l'adresse (par exemple, ens2f0).
  • <addr_seq_num> : numéro séquentiel dans la pile d'adresses sur le dispositif (par exemple, 0).
Par exemple :
ip addr add 192.168.20.50/24 dev ens2f0 label ens2f0:0

Par la suite, si vous voulez supprimer l'adresse, vous pouvez utiliser la commande suivante :

ip addr del 192.168.20.50/24 dev ens2f0:0 

Veillez également à supprimer l'adresse IP secondaire de la carte d'interface réseau virtuelle. Vous pouvez le faire avant ou après l'exécution de la commande ci-dessus permettant de supprimer l'adresse de la configuration du système d'exploitation.

Remarque

Si vous avez affecté une adresse IP secondaire à une carte d'interface réseau virtuelle secondaire et que vous utilisez pour cette dernière un routage basé sur une stratégie, configurez les règles de routage pour l'instance de sorte qu'elles recherchent l'adresse IP secondaire dans la même table de routage à l'aide de la commande IP rule add from <adresse source> lookup <nom de la table>.

Fichier de configuration (persistant en cas de redémarrage)

Vous pouvez rendre la configuration persistante en cas de redémarrage en ajoutant les informations à un fichier de configuration.

Pour Oracle Linux et CentOS

Pour Oracle Linux 7, créez un fichier ifcfg nommé /etc/sysconfig/network-scripts/ifcfg-<phys_dev>:<addr_seq_num>. Pour reprendre l'exemple précédent, le nom du fichier serait /etc/sysconfig/network-scripts/ifcfg-ens2f0:0 et son contenu serait :

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

Avec Oracle Linux 8 ou 9, la méthode recommandée est d'utiliser nmcli afin de configurer l'interface pour NetworkManager.

Si Network Manager écrase les connexions après le redémarrage, la solution recommandée consiste à exécuter la commande ip addr add <address>/<subnet_prefix_len> dev <phys_dev> label <phys_dev>:<addr_seq_num> au moment de l'initialisation. Cela peut être fait à l'aide d'un travail CRON ou en utilisant /etc/rc.d/rc.local, etc. Vous pouvez également modifier les paramètres de ligne de commande du noyau de sorte que dracut n'écrase pas les profils de connexion NetworkManager.

Remarque

Si vous avez affecté une adresse IP secondaire à une carte d'interface réseau virtuelle secondaire et que vous utilisez pour cette dernière un routage basé sur une stratégie, configurez les règles de routage pour l'instance de sorte qu'elles recherchent l'adresse IP secondaire dans la même table de routage à l'aide de la commande IP rule add from <adresse source> lookup <nom de la table>.

Pour Ubuntu

Créez ou modifiez une configuration de plan réseau stockée dans /etc/netplan/<filename>.yaml. Pour reprendre l'exemple précédent, le nom du fichier serait /etc/netplan/50-cloud-init.yaml. Il serait modifié en vue de la désactivation de DHCP (pour toutes les adresses) et du remplacement par une configuration manuelle, comme indiqué ci-dessous :


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

Dans cet exemple, 192.168.64.223 est l'adresse IP principale affectée à la carte d'interface réseau virtuelle et 192.168.64.75 l'adresse IP secondaire. macaddress fait référence à la carte d'interface réseau virtuelle. Cette information peut être trouvée dans la console ou via oci-utils. Des exemples de configuration netplan plus complexes sont disponibles sur les pages de référence netplan. Reportez-vous à Attachement de VLAN à des interfaces réseau pour un exemple en amont.

Remarque

Si vous avez affecté une adresse IP secondaire à une carte d'interface réseau virtuelle secondaire et que vous utilisez pour cette dernière un routage basé sur une stratégie, configurez les règles de routage pour l'instance de sorte qu'elles recherchent l'adresse IP secondaire dans la même table de routage à l'aide de la commande IP rule add from <adresse source> lookup <nom de la table>.