Configurer et gérer la traduction d'adresse réseau avec Public NAT
Cette page explique comment configurer et gérer la traduction d'adresses réseau (NAT) à l'aide de Public NAT. Avant de configurer Public NAT, consultez la présentation de Public NAT.
Limites
Si vous modifiez le niveau de réseau des adresses IP allouées automatiquement d'une passerelle Cloud NAT, toutes les connexions aux adresses IP allouées précédemment se ferment immédiatement.
Si vous utilisez l'allocation manuelle d'adresses IP NAT et que vous modifiez les adresses IP utilisées pour Cloud NAT, toutes les connexions aux adresses IP allouées précédemment se ferment immédiatement. Pour éviter cela, consultez Drainer les adresses IP externes associées au NAT.
Si vous configurez une passerelle Cloud NAT avec allocation de ports statique et que vous réduisez le nombre minimal de ports par instance de machine virtuelle (VM), les connexions NAT établies peuvent être interrompues. Pour plus d'informations, consultez Réduire le nombre de ports par VM.
Si vous configurez une passerelle Cloud NAT avec allocation de ports dynamique et que vous apportez d'autres modifications de configuration, les connexions NAT établies peuvent être interrompues. Lorsque la configuration change, le nombre de ports alloués à chaque VM peut être réinitialisé temporairement et revenir au nombre minimal configuré. Pour plus d'informations, consultez Réduire le nombre de ports par VM.
Si vous configurez une passerelle Cloud NAT avec allocation de ports dynamique, puis que vous désactivez l'allocation de ports dynamique, toutes les connexions de VM utilisant la passerelle NAT sont fermées. Pour en savoir plus, consultez Changer de méthode d'allocation des ports.
Si le mappage indépendant des points de terminaison est activé, vous ne pouvez pas configurer l'allocation de ports dynamique ni de règles NAT.
Cloud NAT n'est pas compatible avec les fragments IP.
Une configuration Cloud NAT est associée à un réseau de cloud privé virtuel (VPC). La configuration s'applique donc à toutes les ressources appartenant aux sous-réseaux de ce réseau. Vous ne pouvez pas choisir les VM spécifiques desservies par une passerelle Cloud NAT.
NAT64 n'est disponible que pour les instances de VM Compute Engine IPv6 uniquement, pour les séries de machines suivantes :
- Toutes les séries de deuxième génération ou antérieures
- Série M3
Pour en savoir plus, consultez la terminologie Compute Engine.
Pour les nœuds Google Kubernetes Engine (GKE), les points de terminaison sans serveur et les groupes de points de terminaison du réseau (NEG) Internet régional, Public NAT ne traduit que les adresses IPv4. Pour connaître les services de Google Cloud compatibles avec IPv6 uniquement, consultez Compatibilité IPv6 dans Google Cloud.
Avant de commencer
Effectuez les tâches suivantes avant de configurer Public NAT.
Obtenir des autorisations IAM
Le rôle Administrateur de réseaux Compute (roles/compute.networkAdmin) inclut les autorisations dont vous avez besoin pour configurer Public NAT.
Préparer votre environnement
Selon que vous souhaitez utiliser la console Google Cloud ou gcloud CLI pour configurer Public NAT, configurez les ressources suivantes dans Google Cloud.
Console
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. - Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init
gcloud
Configurer DNS64
Si vous souhaitez utiliser la traduction d'adresses IPv6 en adresses IPv4, ou NAT64, vous devez configurer DNS64. Pour configurer DNS64 dans Cloud DNS, suivez les instructions de la page Configurer les paramètres DNS64.
Passez cette étape si vous ne souhaitez utiliser Cloud NAT que pour le trafic IPv4.
Configurer Public NAT
Pour configurer Public NAT, créez une passerelle Cloud NAT dans le réseau VPC source. Chaque passerelle est associée à un seul réseau VPC, une seule région et un seul routeur Cloud Router. Cloud NAT n'utilise Cloud Router que pour regrouper les informations de configuration NAT. Il n'ordonne pas à Cloud Router d'utiliser le protocole BGP (Border Gateway Protocol) ni d'ajouter des routes. Le trafic NAT ne passe pas par Cloud Router.
Lorsque vous créez une passerelle Cloud NAT, vous pouvez configurer les paramètres suivants.
| Paramètre | Options compatibles | Description |
|---|---|---|
| Type de point de terminaison source |
|
Par défaut, Public NAT fournit des services NAT aux instances de VM, aux nœuds GKE et aux points de terminaison sans serveur. Pour créer une passerelle Cloud NAT pour ces ressources, suivez la procédure décrite dans la section suivante. Pour créer une passerelle Cloud NAT pour un NEG Internet régional, consultez "Configurer une passerelle Cloud NAT" pour les éléments suivants :
Pour obtenir la liste complète des ressources Google Cloud compatibles avec Cloud NAT, consultez la présentation de Cloud NAT. |
| Version IP source |
|
Public NAT permet la traduction d'IPv4 en IPv4 et d'IPv6 en IPv4. Si vous souhaitez configurer NAT64, vous devez également configurer DNS64.
|
| Sous-réseaux sources | Pour le trafic IPv4 :
Pour le trafic IPv6 :
|
Public NAT est compatible avec les plages de sous-réseaux suivantes dans la région du réseau VPC spécifié :
|
| Allocation d'adresses IP |
|
Par défaut, Public NAT utilise l'allocation automatique d'adresses IP NAT. Cette configuration alloue automatiquement les adresses IP externes nécessaires pour fournir des services NAT à une région. Les instances de VM sans adresse IP externe dans un sous-réseau de la région disposent d'un accès à Internet via le NAT. Lorsque vous utilisez l'allocation automatique d'adresses IP NAT, Google Cloud réserve des adresses IP dans votre projet. Ces adresses sont prises en compte dans les quotas d'adresses IPv4 externes régionales en cours d'utilisation du projet. Vous pouvez allouer manuellement des adresses IP NAT à une passerelle Cloud NAT. Ces adresses sont prises en compte dans les quotas suivants :
Si vous choisissez l'allocation manuelle, veillez à allouer suffisamment d'adresses IP pour éviter la perte de paquets. Pour en savoir plus, consultez Adresses IP Public NAT. |
| Niveau de réseau |
|
Public NAT vous permet de spécifier les niveaux de service réseau à partir desquels la passerelle Cloud NAT alloue les adresses IP externes.
Par défaut, le niveau de réseau est défini sur le niveau actuel du projet.
|
| Configurations avancées |
|
Par défaut, Public NAT utilise l'allocation de ports statique, ce qui signifie que chaque VM se voit attribuer le même nombre de ports. Vous pouvez configurer l'allocation de ports dynamique avec allocation automatique ou manuelle d'adresses IP NAT. L'utilisation de l'allocation de ports dynamique permet à la passerelle Cloud NAT d'allouer un nombre de ports différent à chaque VM en fonction de l'utilisation. Vous ne pouvez pas activer le mappage indépendant des points de terminaison si votre passerelle Cloud NAT utilise des règles NAT ou l'allocation de ports dynamique. Par défaut, la journalisation est désactivée. Pour en savoir plus sur les délais d'inactivité NAT et leurs valeurs par défaut, consultez Délais d'inactivité NAT. |
Créer une passerelle Cloud NAT
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur Commencer pour la première passerelle Cloud NAT ou sur Créer une passerelle Cloud NAT pour les passerelles suivantes.
Dans le champ Nom de la passerelle, saisissez un nom pour la passerelle.
Pour le Type de NAT, sélectionnez Publique.
Dans la section Sélectionner Cloud Router, configurez les éléments suivants :
- Dans le champ Réseau, sélectionnez le réseau VPC dans lequel vous souhaitez créer la passerelle.
- Dans le champ Région, définissez la région de la passerelle.
- Dans le champ Cloud Router, sélectionnez ou créez un routeur Cloud Router dans la région.
Dans la section Mappage Cloud NAT, vérifiez que l'option Instances de VM, nœuds GKE, Sans serveur est sélectionnée pour Type de point de terminaison source.
Dans le champ Version IP source, sélectionnez la version IP source, puis configurez les plages de sous-réseaux sources pour lesquelles vous souhaitez utiliser Cloud NAT.
- Pour les plages de sous-réseaux IPv4, dans le champ Sous-réseaux sources, sélectionnez l'une des options suivantes :
- Pour utiliser Cloud NAT pour les plages d'adresses IP principales et secondaires de tous les sous-réseaux de la région, sélectionnez Plages d'adresses IP principales et secondaires de tous les sous-réseaux.
- Pour utiliser Cloud NAT uniquement pour les plages d'adresses IP principales, sélectionnez Plages d'adresses IP principales pour tous les sous-réseaux.
- Pour limiter les plages d'adresses IP de sous-réseau pouvant utiliser Cloud NAT, sélectionnez Personnalisé, puis procédez comme suit :
- Dans la section Sous-réseaux, sélectionnez un sous-réseau.
- Dans la liste Plages d'adresses IP, sélectionnez les plages d'adresses IP du sous-réseau à inclure, puis cliquez sur OK.
- Facultatif : si vous souhaitez spécifier des plages supplémentaires, cliquez sur Ajouter un sous-réseau et une plage d'adresses IP, puis ajoutez un autre sous-réseau.
- Pour les plages de sous-réseaux IPv6, dans le champ Sous-réseaux sources, sélectionnez l'une des options suivantes :
- Pour utiliser Cloud NAT pour les plages d'adresses IP internes et externes de tous les sous-réseaux de la région, sélectionnez Tous les sous-réseaux.
- Pour limiter les sous-réseaux pouvant utiliser Cloud NAT, sélectionnez Personnalisé et procédez comme suit :
- Dans la section Sous-réseaux, sélectionnez un sous-réseau.
- Facultatif : si vous souhaitez spécifier d'autres sous-réseaux, cliquez sur Ajouter un sous-réseau et ajoutez un autre sous-réseau.
- Pour les plages de sous-réseaux IPv4, dans le champ Sous-réseaux sources, sélectionnez l'une des options suivantes :
Configurez le type d'allocation d'adresses IP NAT et le niveau de réseau en sélectionnant l'une des options suivantes :
- Pour utiliser l'allocation automatique d'adresses IP NAT, procédez comme suit :
- Dans la liste Adresses IP Cloud NAT, sélectionnez Automatique (recommandé).
- Pour le Niveau de service réseau, choisissez Premium ou Standard.
- Pour utiliser l'allocation manuelle d'adresses IP NAT, procédez comme suit :
- Dans la liste Adresses IP Cloud NAT, sélectionnez Manuelle.
- Dans le champ Niveau de service réseau, choisissez Premium ou Standard.
- Sélectionnez ou créez une adresse IP externe réservée statique à utiliser pour le NAT.
- Facultatif : si vous souhaitez spécifier des adresses IP supplémentaires, cliquez sur Ajouter une adresse IP, puis sélectionnez ou créez une adresse IP externe réservée statique supplémentaire.
- Facultatif : si vous souhaitez créer des règles NAT personnalisées, configurez la section Règles Cloud NAT. Pour découvrir un exemple de configuration, consultez Créer des règles NAT.
- Pour utiliser l'allocation automatique d'adresses IP NAT, procédez comme suit :
Facultatif : ajustez les paramètres suivants dans la section Configurations avancées :
- Vous devez choisir si la journalisation doit être configurée. Par défaut, l'option Aucune journalisation est sélectionnée.
- Vous devez indiquer si le mode d'allocation des ports par Cloud NAT doit être modifié. Par défaut, l'option Activer l'allocation de ports dynamique est décochée.
Pour l'allocation de ports statique, le champ Nombre minimal de ports par instance de VM est défini sur
64.- Pour modifier le nombre minimal de ports par instance de VM pour l'allocation de ports statique, spécifiez une valeur dans le champ Nombre minimal de ports par instance de VM. Cette valeur peut être comprise entre
2et57344. - Pour configurer l'allocation de ports dynamique, sélectionnez Activer l'allocation dynamique de ports, puis saisissez une valeur dans les champs Nombre minimal de ports par instance de VM (
32par défaut) et Nombre maximal de ports par instance de VM (65536par défaut).
- Pour modifier le nombre minimal de ports par instance de VM pour l'allocation de ports statique, spécifiez une valeur dans le champ Nombre minimal de ports par instance de VM. Cette valeur peut être comprise entre
- Indiquez s'il faut mettre à jour les délais d'inactivité NAT pour les connexions de protocole. Pour en savoir plus sur ces délais d'inactivité et leurs valeurs par défaut, consultez Délais d'inactivité NAT.
Cliquez sur Créer.
gcloud
Pour créer une passerelle Cloud NAT, utilisez la commande gcloud compute routers nats create.
Vous pouvez créer une passerelle Cloud NAT et conserver les valeurs par défaut de toutes ses options de configuration, ou vous pouvez personnaliser sa configuration.
- Créer une passerelle Cloud NAT avec les paramètres par défaut
- Personnaliser les paramètres de configuration d'une passerelle Cloud NAT
Créer une passerelle Cloud NAT avec les paramètres par défaut
Créez un routeur Cloud Router dans la région où vous souhaitez utiliser la passerelle Cloud NAT. Vous en aurez besoin pour créer la passerelle Cloud NAT.
Créez la passerelle Cloud NAT en exécutant l'une des commandes suivantes, en fonction de la version IP des plages de sous-réseaux sources pour lesquelles vous configurez le NAT.
Configurez Cloud NAT pour les plages de sous-réseaux IPv4 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --auto-allocate-nat-external-ipsCette configuration active le NAT pour toutes les plages de sous-réseaux IPv4 des sous-réseaux à double pile et IPv4 uniquement de la région.
Configurez Cloud NAT pour les plages de sous-réseaux IPv6 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ipsCette configuration active le NAT pour toutes les plages de sous-réseaux IPv6 des sous-réseaux à double pile et IPv6 uniquement de la région.
Configurez Cloud NAT pour les plages de sous-réseaux IPv4 et IPv6 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ipsCette configuration active le NAT pour toutes les plages de sous-réseaux IPv4 et IPv6 des sous-réseaux à double pile, IPv4 uniquement et IPv6 uniquement de la région.
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom du routeur Cloud Router créé à l'étape précédenteREGION: région dans laquelle vous souhaitez utiliser la passerelle Cloud NAT
Personnaliser les paramètres de configuration d'une passerelle Cloud NAT
Lorsque vous créez une passerelle Cloud NAT, vous pouvez personnaliser sa configuration par défaut. Pour obtenir la liste complète des flags que vous pouvez utiliser, consultez la commande gcloud compute routers nats create.
Créez une passerelle Cloud NAT pour les plages de sous-réseaux IPv6 uniquement si vous configurez NAT64 pour des instances de VM Compute Engine. Pour les nœuds GKE, les points de terminaison sans serveur et les NEG Internet régionaux, Public NAT ne traduit que les adresses IPv4.
Créez une passerelle Cloud NAT :
Créez un routeur Cloud Router dans la région où vous souhaitez utiliser la passerelle Cloud NAT. Vous en aurez besoin pour créer la passerelle Cloud NAT.
Créez la passerelle Cloud NAT en spécifiant chaque paramètre que vous souhaitez personnaliser.
Les exemples suivants montrent comment personnaliser les sous-réseaux sources, le type d'allocation d'adresses IP NAT, le niveau de réseau et le type d'allocation de ports.
La commande à exécuter dans chacun de ces exemples dépend de la version IP des plages de sous-réseaux sources pour lesquelles vous configurez le NAT.
Restreignez les sous-réseaux sources pouvant utiliser le NAT. Pour créer une passerelle Cloud NAT qui restreint les sous-réseaux et les plages de sous-réseaux autorisés à utiliser le NAT, exécutez l'une des commandes suivantes :
Restreignez les plages de sous-réseaux IPv4 qui peuvent utiliser le NAT :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES \ --auto-allocate-nat-external-ipsRestreignez les plages de sous-réseaux IPv6 qui peuvent utiliser le NAT :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES \ --auto-allocate-nat-external-ipsRestreignez les plages de sous-réseaux IPv4 et IPv6 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES \ --auto-allocate-nat-external-ips
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom du routeur Cloud Router créé à l'étape précédenteREGION: région dans laquelle vous souhaitez utiliser la passerelle Cloud NATIPV4_SUBNET_RANGES: liste de noms de sous-réseaux séparés par une virgule, par exemple :SUBNET_NAME_1:ALL,SUBNET_NAME_2:ALL: inclut la plage principale et toutes les plages secondaires des sous-réseauxSUBNET_NAME_1etSUBNET_NAME_2SUBNET_NAME_1,SUBNET_NAME_2: n'inclut que les plages principales des sous-réseauxSUBNET_NAME_1etSUBNET_NAME_2SUBNET_NAME:SECONDARY_RANGE_NAME: inclut la plage secondaire spécifiée du sous-réseauSUBNET_NAME, mais pas la plage principaleSUBNET_NAME_1,SUBNET_NAME_2:SECONDARY_RANGE_NAME: inclut la plage principale du sous-réseauSUBNET_NAME_1et la plage secondaire spécifiée du sous-réseauSUBNET_NAME_2
IPV6_SUBNET_RANGES: liste de noms de sous-réseaux séparés par une virgule, par exemple :SUBNET_NAME_1,SUBNET_NAME_2
Configurer l'allocation manuelle d'adresses IP NAT. Pour créer une passerelle Cloud NAT avec allocation manuelle d'adresses IP NAT, exécutez l'une des commandes suivantes :
Pour les plages de sous-réseaux IPv4 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --nat-external-ip-pool=IP_ADDRESS_1,IP_ADDRESS_2Pour les plages de sous-réseaux IPv6 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --nat-external-ip-pool=IP_ADDRESS_1,IP_ADDRESS_2Si vous créez la passerelle pour des plages de sous-réseaux IPv4 et IPv6, spécifiez à la fois les flags
--nat-all-subnet-ip-rangeset--nat64-all-v6-subnet-ip-rangesdans cette commande.
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom du routeur Cloud Router créé à l'étape précédenteREGION: région dans laquelle vous souhaitez utiliser la passerelle Cloud NATIP_ADDRESS_1etIP_ADDRESS_2: adresses IP externes réservées statiques que vous souhaitez utiliser pour le NATVous pouvez spécifier une ou plusieurs adresses IP lorsque vous utilisez le flag
--nat-external-ip-pool.
Spécifiez le niveau de réseau. Pour spécifier le niveau de réseau à partir duquel la passerelle Cloud NAT alloue des adresses IP externes, exécutez l'une des commandes suivantes :
Pour les plages de sous-réseaux IPv4 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --auto-network-tier=AUTO_NETWORK_TIERPour les plages de sous-réseaux IPv6 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --auto-network-tier=AUTO_NETWORK_TIERSi vous créez la passerelle pour des plages de sous-réseaux IPv4 et IPv6, spécifiez à la fois les flags
--nat-all-subnet-ip-rangeset--nat64-all-v6-subnet-ip-rangesdans cette commande.
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom du routeur Cloud Router créé à l'étape précédenteREGION: région dans laquelle vous souhaitez utiliser la passerelle Cloud NATAUTO_NETWORK_TIER: niveau de réseau à utiliser lors de l'allocation automatique d'adresses IP à la passerelle Cloud NAT. Les valeurs autorisées sontPREMIUMetSTANDARD. Si aucune valeur n'est spécifiée, l'actuel niveau par défaut du projet est associé à la passerelle Cloud NATVous pouvez également spécifier le niveau de réseau dans l'allocation manuelle d'adresses IP NAT. Si vous attribuez plusieurs adresses IP à la passerelle, elles doivent toutes appartenir au même niveau de réseau.
Configurez l'allocation de ports dynamique. Pour créer une passerelle Cloud NAT avec allocation de ports dynamique, exécutez l'une des commandes suivantes :
Pour les plages de sous-réseaux IPv4 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --enable-dynamic-port-allocation \ [--min-ports-per-vm=MIN_PORTS ] \ [--max-ports-per-vm=MAX_PORTS ]Pour les plages de sous-réseaux IPv6 :
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --enable-dynamic-port-allocation \ [--min-ports-per-vm=MIN_PORTS ] \ [--max-ports-per-vm=MAX_PORTS ]Si vous créez la passerelle pour des plages de sous-réseaux IPv4 et IPv6, spécifiez à la fois les flags
--nat-all-subnet-ip-rangeset--nat64-all-v6-subnet-ip-rangesdans cette commande.
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom du routeur Cloud Router créé à l'étape précédenteREGION: région dans laquelle vous souhaitez utiliser la passerelle Cloud NAT- Facultatif :
MIN_PORTS: nombre minimal de ports à allouer à chaque VM. Si l'allocation de ports dynamique est activée,MIN_PORTSdoit être une puissance de2, et peut être compris entre32et32768. La valeur par défaut est32. - Facultatif :
MAX_PORTS: nombre maximal de ports à allouer à chaque VM.MAX_PORTSdoit être une puissance de2, et peut être compris entre64et65536. La valeurMAX_PORTSdoit être supérieure àMIN_PORTS. La valeur par défaut est65536.
Terraform
Vous pouvez utiliser un module Terraform pour créer un routeur Cloud Router avec une passerelle NAT pour le trafic IPv4.
La passerelle NAT créée utilise les valeurs par défaut suivantes :
enable_endpoint_independent_mapping = true
icmp_idle_timeout_sec = 30
min_ports_per_vm = 0
nat_ip_allocate_option = "AUTO_ONLY"
source_subnetwork_ip_ranges_to_nat = "ALL_SUBNETWORKS_ALL_IP_RANGES"
tcp_established_idle_timeout_sec = 1200
tcp_transitory_idle_timeout_sec = 30
udp_idle_timeout_sec = 30
log_config {
enable = true
filter = "ALL"
}
Afficher une configuration Public NAT
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Pour afficher les détails de la passerelle NAT, les informations de mappage ou les détails de configuration, cliquez sur le nom de votre passerelle NAT.
Pour afficher l'état du NAT, consultez la colonne État de votre passerelle NAT.
gcloud
Vous pouvez afficher les détails de la configuration NAT en exécutant les commandes suivantes :
Affichez la configuration de la passerelle Public NAT.
gcloud compute routers nats describe NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGIONRemplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATROUTER_NAME: nom de votre routeur Cloud RouterREGION: région du NAT à décrire. Si elle n'est pas spécifiée, vous pouvez être invité à sélectionner une région (mode interactif uniquement).
Affichez le mappage des paires "plage d'adresses IP:port" allouées à l'interface de chaque VM.
gcloud compute routers get-nat-mapping-info ROUTER_NAME \ --region=REGIONAffichez l'état de la passerelle Public NAT.
gcloud compute routers get-status ROUTER_NAME \ --region=REGION
Afficher les adresses IP externes attribuées à une passerelle Cloud NAT
Par défaut, les passerelles Cloud NAT pour Public NAT utilisent l'allocation automatique d'adresses IP. Pour afficher les adresses IP externes attribuées à une passerelle Cloud NAT, procédez comme suit.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur le nom de votre passerelle Cloud NAT.
Sur la page Détails de la passerelle Cloud NAT, consultez la section Adresses IP externes allouées.
gcloud
Pour lister toutes les adresses IP NAT allouées, exécutez la commande suivante :
gcloud compute routers get-nat-ip-info NAT_ROUTER \
--region=REGION
Pour voir plus d'exemples, consultez la commande gcloud compute routers get-nat-ip-info.
Mettre à jour une configuration Public NAT
Une fois votre passerelle Cloud NAT configurée, vous pouvez mettre à jour sa configuration en fonction de vos besoins. Les sections suivantes listent les tâches que vous pouvez effectuer pour mettre à jour votre passerelle Cloud NAT.
Mettre à jour les sous-réseaux sur lesquels le NAT est configuré
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier.
Sous Mappage NAT, définissez l'option Sous-réseaux sources sur Personnalisé.
Sélectionnez un sous-réseau.
Dans la liste Plages d'adresses IP, sélectionnez les plages d'adresses IP du sous-réseau à inclure.
Facultatif : si vous souhaitez spécifier des plages supplémentaires, cliquez sur Ajouter un sous-réseau et une plage d'adresses IP.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update.
Pour mettre à jour les plages de sous-réseaux sources d'une passerelle Cloud NAT existante, exécutez l'une des commandes suivantes, en fonction de la version IP des plages de sous-réseaux que vous souhaitez mettre à jour :
Mettez à jour les plages de sous-réseaux IPv4 :
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGESMettez à jour les plages de sous-réseaux IPv6 :
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGESMettez à jour les plages de sous-réseaux IPv4 et IPv6 :
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom de votre routeur Cloud RouterREGION: région de la passerelle NATIPV4_SUBNET_RANGES: liste de noms de sous-réseaux séparés par une virgule, par exemple :SUBNET_NAME_1:ALL,SUBNET_NAME_2:ALL: inclut la plage principale et toutes les plages secondaires des sous-réseauxSUBNET_NAME_1etSUBNET_NAME_2SUBNET_NAME_1,SUBNET_NAME_2: n'inclut que les plages principales des sous-réseauxSUBNET_NAME_1etSUBNET_NAME_2SUBNET_NAME:SECONDARY_RANGE_NAME: inclut la plage secondaire spécifiée du sous-réseauSUBNET_NAME, mais pas la plage principaleSUBNET_NAME_1,SUBNET_NAME_2:SECONDARY_RANGE_NAME: inclut la plage principale du sous-réseauSUBNET_NAME_1et la plage secondaire spécifiée du sous-réseauSUBNET_NAME_2
IPV6_SUBNET_RANGES: liste de noms de sous-réseaux séparés par une virgule, par exemple :SUBNET_NAME_1,SUBNET_NAME_2
Supprimer des sous-réseaux du NAT
Vous pouvez supprimer les sous-réseaux de la passerelle Cloud NAT qui ne sont plus utilisés.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier.
Supprimez le sous-réseau que vous souhaitez supprimer du mappage NAT.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update.
Vous ne pouvez supprimer que des plages de sous-réseau IPv4 ou IPv6, mais pas les deux.
L'exemple suivant désactive le NAT pour les plages de sous-réseaux IPv6 :
gcloud compute routers nats update NAT_CONFIG \
--router=NAT_ROUTER \
--region=REGION \
--clear-nat64-subnet-ip-ranges
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom de votre routeur Cloud RouterREGION: région de la passerelle NAT
Mettre à jour les adresses IP externes attribuées au NAT
Vous pouvez modifier la liste des adresses IP externes d'une passerelle donnée ou passer de l'allocation manuelle à l'allocation automatique d'adresses IP. Dans ce cas, Google Cloud supprime les adresses IP précédemment allouées et ajoute les nouvelles. Toutes les connexions existantes aux adresses IP allouées précédemment sont immédiatement fermées. Pour conserver les connexions existantes tout en empêchant de nouvelles connexions sur ces adresses IP, consultez la section Drainer les adresses IP externes associées au NAT de ce document.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier.
Cliquez sur la liste Adresses IP NAT, puis sélectionnez Automatique ou Manuelle.
Si vous sélectionnez Manuelle, spécifiez une adresse IP externe.
Pour bénéficier d'une haute disponibilité, cliquez sur Ajouter une adresse IP, puis ajoutez une deuxième adresse.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update.
gcloud compute routers nats update NAT_CONFIG \
--router=NAT_ROUTER \
--region=REGION \
--nat-external-ip-pool=IP_ADDRESS_1,IP_ADDRESS_2
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom de votre routeur Cloud RouterREGION: région du NAT à mettre à jour. Si la région n'est pas spécifiée, vous pouvez être invité à sélectionner une région (mode interactif uniquement)IP_ADDRESS_1: une adresse IP externe manuelleIP_ADDRESS_2: autre adresse IP externe manuelle
Mettre à jour le NAT à l'aide d'adresses IP externes d'un autre niveau de réseau
Vous pouvez mettre à jour une passerelle Cloud NAT existante en modifiant le niveau de réseau des adresses IP externes associées à la passerelle.
Mettre à jour le NAT en modifiant le niveau de réseau des adresses IP externes allouées automatiquement
Lorsque vous modifiez le niveau de réseau des adresses IP externes allouées automatiquement associées à une passerelle Cloud NAT existante,Google Cloud supprime les adresses IP allouées précédemment et les remplace par des adresses IP du niveau de réseau spécifié. Toutes les connexions existantes aux adresses IP allouées précédemment sont immédiatement fermées.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur le nom de la passerelle Cloud NAT qui possède des adresses IP allouées automatiquement.
Cliquez sur Modifier.
Pour le Niveau de service réseau, choisissez Premium ou Standard.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update.
gcloud compute routers nats update NAT_CONFIG \
--router=NAT_ROUTER \
--region=REGION \
--auto-allocate-nat-external-ips
--auto-network-tier=AUTO_NETWORK_TIER
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom de votre routeur Cloud RouterREGION: région du NAT à créer. Si elle n'est pas spécifiée, vous pouvez être invité à sélectionner une région (mode interactif uniquement)AUTO_NETWORK_TIER: niveau de réseau à utiliser lors de l'allocation automatique d'adresses IP à la passerelle Cloud NAT. Les valeurs autorisées sontPREMIUMetSTANDARD. Si aucune valeur n'est spécifiée, l'actuel niveau par défaut du projet est associé à la passerelle Cloud NAT
Mettre à jour le NAT en modifiant le niveau de réseau des adresses IP allouées manuellement
Vous pouvez mettre à jour un NAT existant en spécifiant manuellement des adresses IP externes d'un autre niveau. Vous pouvez attribuer des adresses IP externes de niveau Standard ou Premium, ou des deux, sous certaines conditions. Avant de spécifier des adresses IP externes d'un autre niveau, commencez par drainer les adresses IP existantes pour conserver les connexions actuelles et empêcher de nouvelles connexions sur les adresses IP existantes.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur le nom de la passerelle Cloud NAT qui possède des adresses IP allouées manuellement.
Cliquez sur Modifier.
Pour spécifier des adresses IP d'un niveau différent de celui sélectionné, supprimez toutes les adresses IP existantes ou activez le drainage de toutes les adresses IP existantes.
Vous ne pouvez pas modifier le niveau de réseau si le drainage est désactivé pour une adresse IP existante.
Pour le Niveau de service réseau, choisissez Premium ou Standard.
Sélectionnez une adresse IP externe dans la liste des adresses IP actives disponibles.
Facultatif : pour ajouter d'autres adresses IP, cliquez sur Ajouter des adresses IP.
Cliquez sur Enregistrer.
gcloud
Pour mettre à jour une passerelle existante en remplaçant manuellement les adresses IP externes existantes par de nouvelles adresses provenant d'un autre niveau de réseau, utilisez le flag --nat-external-ip-pool de la commande gcloud compute routers nats update.
Pour en savoir plus sur la modification manuelle des adresses IP externes existantes, consultez Mettre à jour les adresses IP externes associées au NAT.
Drainer les adresses IP externes attribuées au NAT
Avant de supprimer une adresse IP configurée manuellement, vous pouvez la drainer afin que les connexions existantes ne soient pas interrompues. Lorsqu'une adresse IP est drainée, toutes les connexions existantes se poursuivent jusqu'à ce qu'elles expirent naturellement. Vous pouvez afficher les journaux pour vérifier l'état des connexions existantes.
Aucune nouvelle connexion n'est acceptée sur les adresses IP drainées. Cependant, l'adresse IP reste associée à la configuration NAT.
Vous devez disposer d'au moins une adresse active dans une configuration NAT, ce qui signifie que vous ne pouvez pas drainer toutes les adresses IP d'une configuration.
Pour vérifier l'état de vos adresses IP NAT, affichez la configuration Public NAT.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier.
Pour les Adresses IP NAT, définissez la valeur Drainage d'adresse IP à côté de l'adresse IP sur Activé.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update.
Pour drainer une adresse, vous devez la déplacer du pool actif vers le pool de drainage dans la même commande. Si vous la supprimez du pool actif sans l'ajouter au pool drainé dans une seule commande, l'adresse IP est supprimée du service et les connexions existantes sont immédiatement interrompues.
Si vous déplacez une adresse IP du pool de drainage vers le pool actif, vous annulez le drainage de l'adresse IP. Si vous supprimez une adresse IP NAT des deux pools, vous la déconnectez de la configuration NAT.
Cette commande ne modifie pas les autres champs dans la configuration NAT.
gcloud compute routers nats update NAT_CONFIG \
--router=NAT_ROUTER \
--region=REGION \
--nat-external-ip-pool=IP_ADDRESS_2 \
--nat-external-drain-ip-pool=IP_ADDRESS_1
Où :
--nat-external-ip-pool=IP_ADDRESS_2: met à jour le pool actif pour omettreIP_ADDRESS_1.--nat-external-drain-ip-pool=IP_ADDRESS_1: ajouteIP_ADDRESS_1au pool de drainage.
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom de votre routeur Cloud RouterREGION: région du NAT à mettre à jour. Si la région n'est pas spécifiée, vous pouvez être invité à sélectionner une région (mode interactif uniquement)IP_ADDRESS_2: une adresse IPIP_ADDRESS_1: une autre adresse IP
Mettre à jour le mappage des points de terminaison
Vous pouvez activer ou désactiver le mappage indépendant des points de terminaison de votre passerelle. Cette option est désactivée par défaut. Passer le mappage indépendant des points de terminaison de l'état "activé" à "désactivé" (ou inversement) n'interrompt pas les connexions existantes.
Vous ne pouvez pas activer le mappage indépendant des points de terminaison si votre passerelle Cloud NAT utilise des règles NAT ou l'allocation de ports dynamique.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier.
Cliquez sur Configurations avancées.
Pour activer le mappage indépendant du point de terminaison, cochez la case Activer le mappage indépendant du point de terminaison. Pour le désactiver, décochez la case.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update.
gcloud compute routers nats update NAT_CONFIG \
--router=NAT_ROUTER \
--region=REGION \
[--enable-endpoint-independent-mapping | --no-enable-endpoint-independent-mapping]
Remplacez les éléments suivants :
NAT_CONFIG: nom de votre configuration NATNAT_ROUTER: nom de votre routeur Cloud RouterREGION: région du NAT à mettre à jour. Si la région n'est pas spécifiée, vous pouvez être invité à en sélectionner une (mode interactif uniquement)
Mettre à jour la journalisation
Pour ajouter, modifier ou supprimer la journalisation sur une passerelle Cloud NAT existante, consultez Configurer la journalisation.
Supprimer une configuration Public NAT
La suppression de la configuration d'une passerelle supprime la configuration NAT d'un routeur Cloud Router. Elle ne supprime pas le routeur lui-même.
Console
Dans la console Google Cloud , accédez à la page Cloud NAT.
Cochez la case à côté de la configuration de passerelle que vous souhaitez supprimer.
Dans le Menu, cliquez sur Supprimer.
gcloud
gcloud compute routers nats delete NAT_CONFIG \
--router=ROUTER_NAME \
--region=REGION
Remplacez l'élément suivant :
NAT_CONFIG: nom de votre configuration NATROUTER_NAME: nom de votre routeur Cloud RouterREGION: région du NAT à supprimer. Si la région n'est pas spécifiée, vous pouvez être invité à en sélectionner une (mode interactif uniquement)
Quotas et limites
Pour en savoir plus sur les quotas et les limites, consultez Quotas et limites.
Exemples de configuration
- Utiliser Public NAT avec Compute Engine
- Utiliser Public NAT avec GKE
- Configurer des sous-réseaux et des instances IPv6 uniquement avec DNS64 et NAT64
Étapes suivantes
- Configurer la journalisation et la surveillance pour Cloud NAT
- Résoudre les problèmes courants liés aux configurations NAT