Création d'une interface réseau virtuelle

Une interface de réseau virtuel peut être créée sans connexion à une cible. Par conséquent, une interface de réseau virtuel peut exister même lorsque sa cible est supprimée.

Par exemple, dans un VPC, votre instance possède une adresse IP publique par laquelle l'instance peut être atteinte à partir d'Internet et une adresse IP privée par laquelle elle peut être atteinte à partir d'autres instances de votre VPC. Vous avez configuré l'instance avec des règles de groupe de sécurité personnalisées. Si vous supprimez l'instance, l'adresse IP publique et les groupes de sécurité sont déconnectés. L'adresse IP privée est libérée et peut être à nouveau réservée par une autre ressource. Si vous souhaitez créer une nouvelle instance avec la même adresse IP publique, la même adresse IP privée et les mêmes groupes de sécurité que l'instance supprimée, vous devez à nouveau réserver l'adresse IP privée et connecter individuellement l'adresse IP publique et les groupes de sécurité précédents.

Vous pouvez utiliser une interface de réseau virtuel pour gérer les adresses IP et les groupes de sécurité dans une ressource distincte avec un cycle de vie indépendant de vos instances. Créez une interface de réseau virtuel avec une adresse IP privée, une adresse IP publique et des groupes de sécurité. Créez ensuite une instance avec cette interface de réseau virtuel. Par la suite, vous pouvez supprimer l'instance, préserver l'interface de réseau virtuel et créer une nouvelle instance avec la même interface de réseau virtuel.

Avant de commencer

Pour créer une interface de réseau virtuel, vous devez disposer des prérequis suivants:

  • Une instance VPC
  • Un sous-réseau dans lequel créer une interface de réseau virtuel
  • Vérifiez que vous disposez des droits IAM appropriés. Vous devez disposer du droit de rôle d'administrateur IAM pour configurer l'usurpation d'adresse IP et la conversion d'adresses réseau d'infrastructure.

Examiner les considérations de planification et les problèmes connus pour les interfaces de réseaux virtuels.

Vous pouvez créer une interface réseau virtuelle à l'aide de la console, de la CLI, de l'API ou de Terraform.

Création d'une interface réseau virtuelle dans la console

Pour créer une interface réseau virtuelle dans la console, procédez comme suit :

  1. Dans votre navigateur, ouvrez la console IBM Cloud et connectez-vous à votre compte.

  2. Sélectionnez l' icône du menu de navigation, puis cliquez sur l'icône Infrastructure VPC > Réseau > Interfaces réseau virtuelles.

  3. Sur la page Interfaces de réseau virtuel pour VPC, cliquez sur Créer.

  4. Dans la section Emplacement, modifiez les zones suivantes, si nécessaire.

    • Zone géographique: indique la zone géographique dans laquelle vous souhaitez que l'interface réseau virtuelle soit créée.
    • Région: indique la région dans laquelle vous souhaitez que l'interface réseau virtuelle soit créée.
  5. Dans la section Détails, indiquez les informations suivantes :

    • Nom: entrez un nom unique pour l'interface de réseau virtuel, tel que my-virtual-network-interface.
    • Groupe de ressources: Sélectionnez un groupe de ressources pour l'interface de réseau virtuel.
    • Balises: (facultatif) Ajoutez des balises pour vous aider à organiser et à retrouver vos ressources. Vous pourrez ajouter d'autres balises ultérieurement. Pour plus d'informations, voir Utilisation d'étiquettes.
    • Balises de gestion des accès: (facultatif) Ajoutez des balises de gestion des accès aux ressources pour faciliter l'organisation des relations de contrôle d'accès. key:value est le seul format pris en charge pour les étiquettes de gestion des accès. Pour plus d'informations, voir Contrôle de l'accès aux ressources à l'aide d'étiquettes.
  6. Dans la section Configuration réseau, renseignez les informations suivantes :

    • Cloud privé virtuel: sélectionnez le cloud privé virtuel dans lequel vous souhaitez créer votre interface de réseau virtuel. Si vous devez créer un VPC, cliquez sur Créer un VPC.

    • Sous-réseau: Sélectionnez un sous-réseau dans lequel créer l'interface de réseau virtuel. Si vous devez créer un sous-réseau, cliquez sur Créer.

    • Autoriser l'usurpation d'adresse IP: sélectionnez le commutateur pour activer ou désactiver l'usurpation d'adresse IP.

      • La désactivation de l'usurpation d'adresse IP permet au trafic de transiter par l'interface réseau, au lieu de s'arrêter au niveau de celle-ci.
      • L'usurpation d'adresse IP ne concerne que les instances de serveur virtuel et les serveurs bare metal. Les partages de fichiers ne sont pas pris en charge.
    • Infrastructure NAT: sélectionnez le commutateur pour activer ou désactiver la conversion d'adresses réseau d'infrastructure.

      Le NAT d'infrastructure est activé lorsque l'usurpation d'adresse IP est activée.

      • Activé inclut une adresse IP flottante et prend en charge les serveurs virtuels, les serveurs bare metal et les partages de fichiers.

      • Désactivé prend en charge plusieurs adresses IP flottantes uniquement sur les serveurs bare metal. Les serveurs virtuels et les partages de fichiers en tant que cibles d'interface réseau virtuelle ne sont pas pris en charge.

        Lorsqu'elle est désactivée, l'instance de serveur virtuel reçoit le trafic tel qu'il a été envoyé par l'homologue, sans NAT. L'adresse IP de destination est l'adresse IP flottante, et le serveur bare metal est chargé d'effectuer la traduction d'adresses réseau (NAT).

    • Mode de filtrage de l'état du protocole: Sélectionnez un bouton d'option pour définir le mode:

      • Auto (valeur par défaut): le filtrage est activé ou désactivé en fonction de la ressource cible de l'interface réseau virtuel.

        • Serveur bare metal (désactivé)
        • Instance de serveur virtuel (activé)
        • Montage de partage de fichiers (activé)
      • Activé: Force les connexions TCP à s'aligner sur la norme RFC793 et tous les paquets sont autorisés par les règles correspondantes des groupes de sécurité et les ACL du réseau.

      • Désactivé: permet aux paquets d'être autorisés uniquement par les règles de groupe de sécurité et les ACL réseau correspondantes.

  7. Dans la section IP principale, effectuez les sélections suivantes.

    • Méthode de réservation: indiquez si vous souhaitez qu'une adresse IP principale soit créée pour vous ou si vous souhaitez en spécifier une manuellement. Si vous indiquez votre propre adresse IP, entrez une adresse IP réservée existante pour votre interface de réseau virtuel ou sélectionnez-en une dans le menu de liste des adresses IP réservées existantes.
    • Edition automatique: Cliquez sur le commutateur pour activer ou désactiver l'édition automatique pour cette interface de réseau virtuel.
  8. Dans la section des adresses IP flottantes (facultatif), cliquez sur Associer. Dans le panneau latéral qui s'affiche, vous pouvez effectuer une sélection dans la liste existante des adresses IP flottantes ou sélectionner Réserver une nouvelle adresse IP flottante et fournir les informations demandées.

    Si une adresse IP flottante est connectée, l'interface réseau virtuel n'est pas acceptée comme cible de montage de partage de fichiers. Si le NAT d'infrastructure est activé, une seule adresse IP flottante au maximum peut être associée.

  9. Dans la section Adresse IP secondaire (facultatif), cliquez sur Associer. Sélectionnez une méthode de réservation et indiquez si la libération automatique est activée.

    Une interface réseau virtuelle à laquelle sont associées des adresses IP secondaires ne peut pas être acceptée comme cible de montage pour un partage de fichiers.

  10. Dans la section Groupes de sécurité, sélectionnez au moins un et au plus cinq groupes de sécurité pour contrôler le trafic au niveau du réseau. Vous pouvez sélectionner des groupes de sécurité dans la liste ou en créer un en cliquant sur Créer. Pour plus d'informations sur la création d'un groupe de sécurité, voir Création de groupes de sécurité.

  11. Passez en revue les informations du panneau Récapitulatif et cliquez sur Créer une interface de réseau virtuel.

Création d'une interface réseau virtuelle à partir de l'interface de ligne de commande (CLI)

Avant de commencer, configurez votre environnement d'interface de ligne de commande.

export IBMCLOUD_IS_FEATURE_VNI_ENABLE_PROTOCOL_STATE_FILTERING=true

Pour créer une interface de réseau virtuel à partir de l'interface de ligne de commande, entrez la commande suivante:

ibmcloud is virtual-network-interface-create [--name NAME] [--allow-ip-spoofing false | true] [--auto-delete false | true] [--enable-infrastructure-nat false | true] [--protocol-state-filtering-mode auto | disabled | enabled] [[--rip RIP | [--rip-address RIP_ADDRESS --rip-auto-delete RIP_AUTO_DELETE --rip-name RIP_NAME]]] [--subnet SUBNET] [--ips RESERVED_IPS_JSON | @RESERVED_IPS_JSON_FILE] [--sgs SGS] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--vpc VPC] [--output JSON] [-q, --quiet]

Où :

--name
Nom de cette interface réseau virtuel.
--allow-ip-spoofing
Indique si l'usurpation d'adresse IP source est autorisée sur cette interface. Si false, l'usurpation d'adresse IP source est empêchée sur cette interface. Si true, l'usurpation d'adresse IP source est autorisée sur cette interface. L'un des suivants : false, true.
--auto-delete
Indique si cette interface de réseau virtuel est automatiquement supprimée lorsque la cible est supprimée. Doit être false si l'interface réseau virtuelle n'est pas associée. L'un des suivants : false, true.
--enable-infrastructure-nat
Si true, l'infrastructure VPC effectue les opérations NAT nécessaires. Si false, les paquets sont transmis tels quels vers/depuis l'interface réseau, ce qui permet à la charge de travail d'effectuer toutes les opérations NAT nécessaires. L'un des suivants : false, true.
--protocol-state-filtering-mode
Statut du mode de filtrage de l'état du protocole. L'un des auto, enabled, disabled. * Auto (valeur par défaut): le filtrage est activé ou désactivé en fonction de la ressource cible de l'interface réseau virtuel. * Serveur bare metal (désactivé) * Instance de serveur virtuel (activé) * Montage de partage de fichiers (activé) * Activé: Force les connexions TCP à s'aligner sur la norme RFC793 et tous les paquets sont autorisés par les règles correspondantes des groupes de sécurité et les ACL du réseau. * Désactivé: permet aux paquets d'être autorisés uniquement par les règles de groupe de sécurité et les ACL réseau correspondantes.
--rip
ID ou nom de l'adresse IP réservée à lier à l'interface réseau virtuel.
--rip-address
Adresse IP de l'adresse IP réservée à lier à l'interface réseau virtuel.
--rip-auto-delete
Indique si cette adresse IP réservée est supprimée automatiquement lorsque l'une des cibles est supprimée ou si l'adresse IP réservée est dissociée.
--rip-name
Nom de cette adresse IP réservée à lier à l'interface réseau virtuel.
--subnet
Sous-réseau associé.
--ips ips RESERVED_IPS_JSON | @RESERVED_IPS_JSON_FILE
Adresses IP secondaires réservées au format JSON ou dans un fichier JSON, à associer à l'interface réseau virtuelle. Pour le schéma de données, consultez la propriété IPs dans la documentation de l'API. L'un des suivants: RESERVED_IPS_JSON, @RESERVED_IPS_JSON_FILE.
--sgs
ID ou noms des groupes de sécurité à utiliser pour l'interface réseau virtuel.
--resource-group-id
ID du groupe de ressources. Cet identifiant est mutuellement exclusif avec --resource-group-name.
--resource-group-name
Nom du groupe de ressources. Ce nom est incompatible avec --resource-group-id.
--vpc
ID ou nom du VPC auquel ce VNI est associé.
--output
Spécifiez le format de sortie, seul JSON est pris en charge. Un parmi : JSON.
-q, --quiet
Supprimer la sortie prolixe.

Exemples de commande

  • ibmcloud is virtual-network-interface-create --subnet 7208-d42716a5-6df2-416c-979d-f26330b9eod1
  • ibmcloud is virtual-network-interface-create --name cli-vni-1 --allow-ip-spoofing true --auto-delete true --enable-infrastructure-nat true --protocol-state-filtering-mode auto --rip 7208-d4c0abbe-3fc2-4696-9fe1-4eb3dc9af976 --ips '[{"id":"7208-d83b7e58-3c3d-47d0-89c5-02d9a20c72fd"},{"address":"10.240.64.13", "auto_delete": false, "name": "srip2"}]' --sgs r006-aa7c7658-e503-4456-b342-8d6a89e05115,r006-4fb388f1-2b6e-4013-b279-7a8748f4d6ca --resource-group-id 11caaa983d9c4beb82690daab08717e9
  • ibmcloud is virtual-network-interface-create --name cli-vni-2 --allow-ip-spoofing true --auto-delete true --enable-infrastructure-nat true --protocol-state-filtering-mode enabled --rip cli-rip-1 --subnet my-subnet --vpc vpc-cli-1 --ips '[{"id":"7208-d83b7e58-3c3d-47d0-89c5-02d9a20c72fd"},{"address":"10.240.64.14", "auto_delete": false, "name": "srip3"}]' --sgs cli-sg,sanctity-contest-only-filing --resource-group-name Default
  • ibmcloud is virtual-network-interface-create --name cli-vni-4 --allow-ip-spoofing false --auto-delete false --enable-infrastructure-nat false --protocol-state-filtering-mode disabled --subnet 7208-bfe017e7-6e71-415a-8615-0ee787fbeef9 --rip-address 10.240.64.15 --rip-auto-delete false --rip-name primar-ip-1 --ips '[{"id":"7208-2772a45f-c062-4e22-bafb-32ea792da56b"},{"address":"10.240.64.17", "auto_delete": false, "name": "sec-ip-2"}]' --sgs r006-aa7c7658-e503-4456-b342-8d6a89e05115,r006-4fb388f1-2b6e-4013-b279-7a8748f4d6ca --resource-group-id 11caaa983d9c4beb82690daab08717e9
  • ibmcloud is virtual-network-interface-create --name cli-vni-3 --allow-ip-spoofing true --auto-delete false --enable-infrastructure-nat true --protocol-state-filtering-mode auto --subnet my-subnet --vpc vpc-cli-1 --rip-address 10.240.64.18 --rip-auto-delete true --rip-name primar-ip-2 --ips '[{"id":"7208-d42716a5-6df2-416c-979d-f26330b9d0b1"},{"address":"10.240.64.19", "auto_delete": true, "name": "sec-ip-3"}]' --sgs cli-sg,sanctity-contest-only-filing --resource-group-name Default

Création d'une interface de réseau virtuel avec l'API

Pour créer une interface de réseau virtuel avec l'API, procédez comme suit:

  1. Configurez votre environnement d'API avec les variables appropriées.

  2. Stockez d'autres variables destinées à être utilisées dans les commandes d'API, par exemple :

    • version (chaîne): version de l'API, au format YYYY-MM-DD.
  3. Lorsque toutes les variables sont initiées, créez l'interface de réseau virtuel:

    curl -X POST \
        "$vpc_api_endpoint/v1/virtual_network_interfaces?version=$version&generation=2" \
        -H "Authorization: Bearer $iam_token" \
        -d '{
              "name": "my-virtual-network-interface",
              "primary_ip": {
                "address": "10.0.0.5"
              },
              "protocol_state_filtering_mode": "disabled",
              "security_groups": [
                {
                  "id": "be5df5ca-12a0-494b-907e-aa6ec2bfa271"
                },
                {
                  "id": "032e1387-71ba-4e83-b268-a53edf94af19"
                }
              ],
              "subnet": {
                "id": "032e1387-71ba-4e83-b268-a53edf94af19"
              }
      }'
    

Création d'une interface réseau virtuelle avec Terraform

L'exemple suivant crée une interface de réseau virtuel à l'aide de Terraform:

resource "ibm_is_virtual_network_interface" "is_virtual_network_interface_instance" {
  allow_ip_spoofing = true
  auto_delete = false
  enable_infrastructure_nat = true
  name = "my-virtual-network-interface"
  subnet = "<SubnetId>"
  protocol_state_filtering_mode = "auto"
}

Pour plus d'informations, consultez le registre Terraform.