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 page Présentation des configurations utilisant plusieurs interfaces réseau.
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 aux 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 Présentation du pare-feu VPC et Présentation des 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 des instances 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 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 présentation de l'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.
Créer une instance à double pile
Pour créer une instance à double pile, connectez-la à un sous-réseau à double pile.
Si vous utilisez un VPC partagé et que vous souhaitez créer une instance à double pile connectée à un sous-réseau partagé, consultez la section Créer une instance dans la documentation sur le VPC partagé.
Console
Accéder à la page Créer une instance.
Entrez un nom pour l'instance.
Sélectionnez une région contenant un sous-réseau sur lequel une plage IPv6 est configurée.
Sélectionnez une zone.
Développez la section Options avancées.
Développez Mise en réseau, puis procédez comme suit:
Dans la section Interfaces réseau, cliquez sur l'interface réseau pour la développer et la modifier.
Dans les champs Réseau et Sous-réseau, sélectionnez le réseau et le sous-réseau que vous souhaitez utiliser.
Sélectionnez un sous-réseau dans lequel une plage IPv6 est configurée. Le type d'accès IPv6 du sous-réseau détermine si l'instance reçoit une adresse IPv6 interne ou externe.
Dans le champ Type de pile d'adresses IP, sélectionnez IPv4 et IPv6 (double pile).
Dans le champ Adresse IPv4 interne principale, sélectionnez l'une des options suivantes :
- Éphémère pour attribuer une nouvelle adresse IPv4 interne éphémère
- * Une adresse IPv4 réservée dans la liste
- * Statique pour attribuer une nouvelle adresse IPv4 statique
Pour les adresses IPv6, en fonction du type d'accès du sous-réseau utilisé par l'interface réseau:
Dans le champ Adresse IPv6 interne principale, sélectionnez l'une des options suivantes :
- Allocation automatique pour attribuer une nouvelle adresse IPv6 interne éphémère
- Une adresse IPv6 interne statique réservée de la liste
- Réserver une adresse IPv6 interne statique pour réserver et attribuer une nouvelle adresse IPv6 interne statique
Dans le champ Adresse IPv6 externe, sélectionnez l'une des options suivantes :
- Allouer automatiquement pour attribuer une nouvelle adresse IPv6 externe éphémère
- Une adresse IPv6 externe statique réservée de la liste
- Réserver une adresse IPv6 externe statique pour réserver et attribuer une nouvelle adresse IPv6 externe statique
Dans le champ Adresse IPv4 externe, sélectionnez l'une des options suivantes :
- Éphémère pour attribuer une nouvelle adresse IPv4 éphémère
- Aucune pour ne pas attribuer d'adresse IPv4 externe
- Une adresse IPv4 réservée dans la liste
- Créer une adresse IP pour attribuer une nouvelle adresse IPv4 statique
Pour terminer la modification de l'interface réseau, cliquez sur OK.
Continuez le processus de création de l'instance.
Cliquez sur Créer.
gcloud
Créez une instance à l'aide de la commande gcloud compute instances create
.
gcloud compute instances create INSTANCE_NAME \ --subnet=SUBNET_NAME \ --zone=ZONE \ --stack-type=IPV4_IPV6
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de l'instance.SUBNET_NAME
: le sous-réseau auquel connecter l'instance. Le sous-réseau doit avoir une plage de sous-réseaux IPv6.ZONE
: la zone dans laquelle déployer l'instance de VM
REST
- Sélectionnez une image. Notez le nom de l'image ou de la famille d'images, ainsi que le nom du projet contenant l'image.
Utilisez la méthode
instances.insert
pour créer une instance à partir d'une famille d'images ou d'une version spécifique d'une image de l'OS:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet dans lequel créer l'instanceZONE
est la zone dans laquelle créer l'instance.
Exemple de corps de la requête :
{ "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name": "INSTANCE_NAME", "networkInterfaces": [ { "subnetwork": "regions/REGION/subnetworks/SUBNET", "stackType": "IPV4_IPV6" } ], "disks": [ { "initializeParams": { "sourceImage": "IMAGE_URI" }, "boot": true } ], }
Remplacez les éléments suivants :
MACHINE_TYPE_ZONE
: zone contenant le type de machine à utiliser pour la nouvelle instanceMACHINE_TYPE
: type de machine prédéfini ou personnalisé pour la nouvelle instance. Par exemple,n1-standard-1
.INSTANCE_NAME
: le nom de la nouvelle instanceSUBNET
: sous-réseau sur lequel IPv6 est configuré.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-10"
, Compute Engine crée une instance de calcul à partir de la dernière version de l'image de l'OS dans la famille d'images Debian 10.
Créer une instance IPv6 uniquement
Pour créer une instance IPv6 uniquement, suivez les étapes décrites dans cette section.
Pour une instance Compute Engine dotée d'une seule interface réseau, l'instance peut avoir une adresse IPv6 interne ou externe, en fonction du type d'accès IPv6 du sous-réseau auquel son interface est connectée. Vous devez créer un réseau VPC en mode personnalisé avec un sous-réseau doté d'une plage d'adresses IPv6.
Avant de pouvoir créer une instance de VM multi-NIC qui utilise à la fois des adresses IPv6 internes et externes, vous devez créer les éléments suivants:
- Un réseau VPC en mode personnalisé avec l'ULA IPv6 activée, un sous-réseau avec une plage d'adresses IPv6 et le type d'accès défini sur
internal
. - Un deuxième réseau VPC en mode personnalisé, un deuxième sous-réseau avec une plage d'adresses IPv6 et le type d'accès défini sur
external
.
Lorsque vous créez l'instance, vous configurez deux interfaces réseau, l'une qui se connecte au sous-réseau avec la plage d'adresses IPv6 interne et l'autre qui se connecte au sous-réseau avec la plage d'adresses externe.
Si vous utilisez un VPC partagé et que vous souhaitez créer une instance IPv6 uniquement connectée à un sous-réseau partagé, consultez la section Créer une instance dans la documentation sur le VPC partagé.
Console
Accéder à la page Créer une instance.
Entrez un nom pour l'instance.
Sélectionnez une région contenant les sous-réseaux avec les plages IPv6 configurées.
Facultatif : modifiez la zone de cette instance. Si vous sélectionnez N'importe laquelle, Google choisit automatiquement une zone en fonction du type de machine et de la disponibilité.
Développez la section Options avancées.
Développez Mise en réseau, puis procédez comme suit:
Dans la section Interfaces réseau, cliquez sur le nom de l'interface réseau pour modifier ses paramètres.
Dans les champs Réseau et Sous-réseau, sélectionnez le réseau et le sous-réseau que vous souhaitez utiliser.
Sélectionnez un sous-réseau dans lequel une plage IPv6 est configurée. Le type d'accès IPv6 du sous-réseau détermine si l'instance reçoit une adresse IPv6 interne ou externe.
Pour Type de pile d'adresses IP, sélectionnez IPv6 (pile unique).
Dans le champ Adresse IPv6 interne principale, sélectionnez l'une des options suivantes :
- Auto-allocated (/96) (Allouer automatiquement (/96)) pour attribuer une nouvelle adresse IPv6 éphémère
- Une adresse IPv6 réservée dans la liste
- Réserver une adresse IPv6 interne statique pour attribuer une nouvelle adresse IPv6 statique
Facultatif: Pour ajouter une adresse IPv6 externe, sélectionnez Ajouter une interface réseau.
- Dans les champs Réseau et Sous-réseau, sélectionnez le réseau et le sous-réseau que vous avez configurés pour les adresses IPv6 externes.
Dans le champ Adresse IPv6 externe, sélectionnez l'une des options suivantes :
- Allouer automatiquement pour attribuer une nouvelle adresse IPv6 éphémère
- Une adresse IPv6 réservée dans la liste
- Réserver une adresse IPv6 externe statique pour attribuer une nouvelle adresse IPv6 statique
Pour terminer la modification de l'interface réseau, cliquez sur OK.
Continuez le processus de création de l'instance.
Cliquez sur Créer.
gcloud
Créez une instance à l'aide de la commande gcloud compute instances create
.
Pour attribuer des adresses IPv6 internes et externes, vous devez créer l'instance avec au moins deux interfaces réseau.
gcloud compute instances create INSTANCE_NAME \ --zone ZONE \ --machine-type=MACHINE_TYPE \ --create-disk=boot=yes,image='projects/IMAGE_PROJECT/global/images/IMAGE',size=SIZE \ --network-interface=network=NETWORK_INTERNAL_NAME,subnet=SUBNET_INTERNAL_NAME,stack-type=IPV6_ONLY \ --network-interface=network=NETWORK_EXTERNAL_NAME,subnet=SUBNET_EXTERNAL_NAME,stack-type=IPV6_ONLY,ipv6-network-tier=PREMIUM
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de l'instanceZONE
: zone dans laquelle l'instance est créée, par exempleeurope-west1-b
. La région de l'instance est déduite de la zone.MACHINE_TYPE
: facultatif: type de machine à utiliser pour l'instance.IMAGE_PROJECT
: facultatif: projet d'image contenant l'imageIMAGE
(facultatif) : spécifiez l'une des options suivantes :- Version spécifique de l'image de l'OS. Exemple :
debian-12-bookworm-v202410095
- Une famille d'images, qui doit être au format
family/IMAGE_FAMILY
. Cette action crée l'instance à partir de l'image d'OS la plus récente et non obsolète. Par exemple, si vous spécifiezfamily/debian-12
, Compute Engine crée une instance à l'aide de la dernière version de l'image de l'OS dans la famille d'images Debian 12. Pour en savoir plus sur l'utilisation des familles d'images, consultez la page Bonnes pratiques concernant les familles d'images.
- Version spécifique de l'image de l'OS. Exemple :
SIZE
(facultatif) : taille du nouveau disque. Cette valeur doit être un nombre entier. L'unité de mesure par défaut est le gigaoctet.NETWORK_EXTERNAL_NAME
ouNETWORK_INTERNAL_NAME
: nom du réseau configuré pour des adresses IP internes ou externesSUBNET_EXTERNAL_NAME
ouSUBNET_INTERNAL_NAME
: nom du sous-réseau configuré pour les adresses IP internes ou externes à utiliser avec l'instance.
REST
- Sélectionnez une image. Notez le nom de l'image ou de la famille d'images, ainsi que le nom du projet contenant l'image.
Utilisez la méthode
instances.insert
pour créer une instance à partir d'une famille d'images ou d'une version spécifique d'une image de l'OS:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet dans lequel créer l'instanceZONE
est la zone dans laquelle créer l'instance.
Exemple de corps de la requête :
{ "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name": "INSTANCE_NAME", "disks": [ { "initializeParams": { "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true } ], "networkInterfaces": [ { "subnetwork": "regions/REGION/subnetworks/SUBNET_INTERNAL", "stackType": "IPV6_ONLY" }, { "subnetwork": "regions/REGION/subnetworks/SUBNET_EXTERNAL", "stackType": "IPV6_ONLY" } ] }
Remplacez les éléments suivants :
MACHINE_TYPE_ZONE
: zone contenant le type de machine à utiliser pour la nouvelle instanceMACHINE_TYPE
: type de machine prédéfini ou personnalisé pour la nouvelle instance. Par exemple,c3-standard-4
.INSTANCE_NAME
: le nom de la nouvelle instanceIMAGE_PROJECT
: facultatif: projet d'image contenant l'imageIMAGE
(facultatif) : spécifiez l'une des options suivantes:- Version spécifique de l'image de l'OS. Exemple :
debian-12-bookworm-v20241009
- Une famille d'images, qui doit être au format
family/IMAGE_FAMILY
. Cette action crée l'instance à partir de l'image d'OS la plus récente et non obsolète. Par exemple, si vous spécifiezfamily/debian-12
, Compute Engine crée une instance à l'aide de la dernière version de l'image de l'OS dans la famille d'images Debian 12. Pour en savoir plus sur l'utilisation des familles d'images, consultez la page Bonnes pratiques concernant les familles d'images.
- Version spécifique de l'image de l'OS. Exemple :
REGION
: région du sous-réseau.SUBNET_INTERNAL
: sous-réseau sur lequel des adresses IPv6 internes sont configurées.SUBNET_EXTERNAL
: sous-réseau sur lequel des adresses IPv6 externes sont configurées.
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
Accédez à la page Instances de VM.
Cliquez sur le nom de l'instance à laquelle vous souhaitez attribuer une adresse IPv6.
Sur la page des détails de l'instance, procédez comme suit :
- Cliquez sur Modifier.
- Dans Interfaces réseau, développez l'interface que vous souhaitez modifier.
- Sélectionnez le type de pile d'adresses IP : IPv4 uniquement (pile unique) ou IPv4 et IPv6 (double pile).
- Cliquez sur OK.
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
ouIPV4_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
.