Configurer des adresses IPv6 pour les instances et les modèles d'instance


Vous pouvez configurer des adresses IPv6 sur une instance Compute Engine si une plage IPv6 est configurée pour le sous-réseau auquel l'instance est connectée.

Pour en savoir plus sur IPv6, consultez la section Plages de sous-réseaux IPv6.

Spécifications

  • Les instances de calcul dotées de configurations IPv4 et IPv6 sont des instances double pile. L'adresse IPv6 s'ajoute aux adresses IPv4 configurées sur l'interface réseau.

  • Les interfaces des instances à double pile ou IPv6 uniquement se voient attribuer une seule plage /96 d'adresses IPv6. La première adresse IPv6 de la plage (/128) est configurée sur l'interface.

  • Une adresse IPv6 peut être configurée sur n'importe quelle interface de l'instance. Pour en savoir plus sur la configuration de plusieurs interfaces réseau, consultez la section Interfaces réseau multiples.

  • Le type de pile de l'interface réseau d'une VM détermine le type de sous-réseaux auxquels elle peut se connecter:

    • Les interfaces IPv4 uniquement peuvent se connecter aux sous-réseaux à double pile et IPv4 uniquement.
    • Les interfaces à double pile peuvent se connecter à des sous-réseaux à double pile.
    • Les interfaces IPv6 uniquement peuvent se connecter à des sous-réseaux à double pile et IPv6 uniquement (preview).
  • Pour configurer des adresses IPv6 sur une interface réseau, celle-ci doit être connectée à un sous-réseau à double pile ou IPv6 uniquement (Preview).

  • La configuration du type d'accès IPv6 d'un sous-réseau détermine si le sous-réseau possède une plage IPv6 interne ou externe. Les instances connectées héritent du type d'accès IPv6 du sous-réseau.

  • Les instances IPv6 uniquement (Preview) ne sont compatibles qu'avec les OS Ubuntu et Debian.

Accéder aux instances à l'aide d'adresses IPv6

La règle de pare-feu implicite d'entrée interdite IPv6 protège les instances en bloquant les connexions entrantes vers leurs adresses IPv6. Pour accéder aux instances à l'aide de leurs adresses IPv6, vous devez disposer d'une règle de priorité plus élevée autorisant l'accès entrant.

Pour en savoir plus sur les règles de pare-feu, consultez les pages Règles de pare-feu VPC et Stratégies de pare-feu hiérarchiques.

Pour obtenir des exemples de règles de pare-feu VPC, consultez la section Configurer des règles de pare-feu pour les cas d'utilisation courants.

Attribution d'adresse IPv6

La liste suivante décrit comment les adresses IPv6 sont attribuées aux instances Compute Engine.

  • Une adresse IPv6 est attribuée aux instances Compute à l'aide de DHCPv6. Le serveur de métadonnées répond aux requêtes DHCPv6 de l'instance et envoie en réponse la première adresse IPv6 (/128) de la plage /96 allouée.

  • Le serveur de métadonnées utilise l'annonce de routage pour publier la route par défaut sur l'instance. L'instance peut ensuite utiliser cette route par défaut pour tout le trafic IPv6.

    Vous pouvez trouver la route par défaut de l'interface réseau d'une instance en vous connectant à l'instance et en interrogeant le serveur de métadonnées pour l'entrée gateway-ipv6.

    curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/gateway-ipv6 -H "Metadata-Flavor: Google"
    

    Pour en savoir plus sur le serveur de métadonnées, consultez la section Afficher et interroger les métadonnées d'instance.

  • Les instances Compute sont configurées avec des adresses IP de liaison locales, qui sont attribuées à partir de la plage fe80::/10, mais qui ne sont utilisées que pour la découverte des voisins.

  • La configuration de la MTU sur l'interface réseau de l'instance s'applique aux paquets IPv4 et IPv6, mais toutes les valeurs de MTU ne sont pas acceptées dans tous les cas. Pour en savoir plus, consultez la section Unité de transmission maximale.

Créer une instance qui utilise des adresses IPv6

Vous pouvez créer une instance qui utilise une combinaison d'adresses IPv4 et IPv6 (double pile) ou une instance qui n'utilise que des adresses IPv6.

Pour savoir comment créer une instance Compute Engine qui utilise des adresses IPv6, consultez les tâches suivantes:

Modifier le type de pile d'une instance

Vous pouvez modifier le type de pile d'une instance Compute Engine existante. Le type de pile peut être défini sur l'une des valeurs suivantes:

  • IPv4 uniquement (pile unique)
  • IPv4 et IPv6 (double pile)

Si vous définissez l'instance comme une instance à double pile, elle doit être connectée à un sous-réseau à double pile. Si vous devez modifier le sous-réseau auquel l'instance est connectée, arrêtez l'instance et modifiez le sous-réseau. Une fois le sous-réseau mis à jour, vous pouvez modifier le type de pile d'adresses IP de l'instance.

Vous ne pouvez pas modifier le type de pile d'une instance IPv6 uniquement (Preview).

Console

  1. Accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Cliquez sur le nom de l'instance à laquelle vous souhaitez attribuer une adresse IPv6.

  3. Sur la page des détails de l'instance, procédez comme suit :

    1. Cliquez sur Modifier.
    2. Dans Interfaces réseau, développez l'interface que vous souhaitez modifier.
    3. Sélectionnez le type de pile d'adresses IP : IPv4 uniquement (pile unique) ou IPv4 et IPv6 (double pile).
    4. Cliquez sur OK.
  4. Cliquez sur Enregistrer.

gcloud

Mettez à jour le type de pile d'une instance à l'aide de la commande gcloud compute instances network-interfaces update.

gcloud compute instances network-interfaces update INSTANCE_NAME \
    --stack-type=STACK_TYPE \
    --zone=ZONE

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.
  • STACK_TYPE: type de pile de l'instance : IPV4_ONLY ou IPV4_IPV6.
  • ZONE : zone dans laquelle l'instance est déployée.

REST

Mettez à jour le type de pile d'une instance en envoyant une requête PATCH à la méthode instances.updateNetworkInterface.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateNetworkInterface

Remplacez les éléments suivants :

  • PROJECT_ID : identifiant du projet contenant l'instance.
  • ZONE : zone dans laquelle l'instance est déployée.
  • INSTANCE_NAME : nom de l'instance.

Exemple de corps de la requête :

{
    "stackType": "STACK_TYPE",
}

Remplacez STACK_TYPE par le type de pile de l'instance : IPV4_ONLY ou IPV4_IPV6.

Créer un modèle d'instance avec des adresses IPv6

Vous pouvez créer un modèle d'instance régional ou global pouvant être utilisé pour créer des instances double pile ou IPv6 uniquement (version Preview). Pour en savoir plus, consultez la section Créer des modèles d'instance.

Vous devez utiliser la Google Cloud CLI ou REST pour créer un modèle d'instance qui crée des instances qui utilisent des adresses IPv6.

gcloud

Pour créer un modèle d'instance régional ou global, utilisez la commande gcloud compute instance-templates create. Si vous souhaitez créer un modèle d'instance régional, vous devez utiliser l'option --instance-template-region pour spécifier la région du modèle d'instance.

L'exemple suivant crée un modèle d'instance global :

gcloud compute instance-templates create TEMPLATE_NAME \
    --subnet=SUBNET \
    --stack-type=STACK_TYPE

Remplacez les éléments suivants :

  • TEMPLATE_NAME : nom du modèle.
  • SUBNET : sous-réseau disposant d'une plage de sous-réseaux IPv6.
  • STACK_TYPE: type de pile, IPV4_IPV6 pour une instance à double pile ou IPV6_ONLY pour une instance avec une adresse IPv6 externe.

REST

Pour créer un modèle d'instance régional, utilisez la méthode regionInstanceTemplates.insert ou, pour créer un modèle d'instance global, utilisez la méthode instanceTemplates.insert.

L'exemple suivant crée un modèle d'instance global :

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates

Remplacez PROJECT_ID par l'ID du projet.

Exemple de corps de la requête :

{
  "name": "INSTANCE_TEMPLATE_NAME"
  "properties": {
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "subnetwork": "regions/REGION/subnetworks/SUBNET",
        "stackType": "STACK_TYPE",
      },
    ],
    "disks":
    [
      {
        "type": "PERSISTENT",
        "boot": true,
        "mode": "READ_WRITE",
        "initializeParams":
        {
          "sourceImage": "IMAGE_URI"
        }
      }
    ]
  }
}

Remplacez les éléments suivants :

  • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
  • MACHINE_TYPE: type de machine des instances. Exemple :c3-standard-4
  • SUBNET : sous-réseau disposant d'une plage de sous-réseaux IPv6.
  • REGION : région du sous-réseau.
  • IMAGE_URI : URI de l'image que vous souhaitez utiliser.

    Par exemple, si vous spécifiez "sourceImage": "projects/debian-cloud/global/images/family/debian-12", Compute Engine crée une instance à partir de la dernière version de l'image du système d'exploitation dans la famille d'images Debian 12.

Pour en savoir plus sur les paramètres de requête, consultez la documentation sur la méthode instanceTemplates.insert.