Ajuster la configuration NAT
Après avoir configuré votre passerelle Cloud NAT (NAT public ou NAT privé), vous pouvez modifier la configuration en fonction de vos besoins. Cette page liste les tâches que vous pouvez effectuer pour ajuster la configuration de Cloud NAT.
La modification des configurations peut être de nature perturbatrice et peut entraîner l'abandon des connexions NAT (Network Address Translation) existantes. Pour en savoir plus sur l'impact de l'ajustement des configurations Cloud NAT, consultez la section Impact de l'ajustement des configurations NAT sur les connexions NAT existantes.
Afficher l'utilisation des ports
Avant de modifier l'utilisation minimale des ports par VM, vérifiez votre utilisation des ports par VM. Vous pouvez obtenir ces informations à l'aide de la métrique compute.googleapis.com/nat/port_usage
.
Dans Google Cloud Console, accédez à la page Monitoring.
Dans le volet de navigation, sélectionnez Explorateur de métriques .
Développez le menu Sélectionner une métrique et utilisez les sous-menus pour choisir la métrique
compute.googleapis.com/nat/port_usage
:- Dans le champ Ressource, sélectionnez Instance de VM.
- Pour Catégorie de métriques, sélectionnez Nat.
- Dans Métrique, sélectionnez Utilisation des ports.
Cliquez sur Appliquer.
Pour sélectionner votre passerelle Cloud NAT, utilisez le champ Filtres.
Dans la section Grouper par, pour labels (Libellés), sélectionnez instance_id.
Dans la liste Fonction de regroupement, sélectionnez Max.
Développez Autres options, puis définissez le champ Aligneur sur max.
Pour afficher l'utilisation des 30 derniers jours, spécifiez
30d
.
Pour en savoir plus sur l'utilisation de l'explorateur de métriques, consultez la section Sélectionner des métriques lors de l'utilisation de l'explorateur de métriques.
Choisir un nombre minimal de ports par VM
Le choix d'un nombre minimal de ports approprié est important pour vous aider à optimiser l'utilisation des adresses IP NAT.
Avant d'augmenter le nombre de ports par VM, envisagez d'autres stratégies pour réduire l'utilisation des ports.
Si vous devez augmenter le nombre de ports par VM, commencez par prendre en compte l'utilisation des ports par VM dans votre passerelle. Pour savoir comment trouver ces données, consultez la section Afficher l'utilisation des ports.
Examinez votre utilisation maximale des ports au cours des 30 derniers jours ou pour une autre période que vous considérez comme représentative de votre passerelle Cloud NAT.
Effectuez l'une des opérations suivantes :
Si vous utilisez l'allocation de ports statiques, configurez le nombre de ports par VM afin que le minimum soit égal à votre pic d'utilisation actuel.
Si vous utilisez l'allocation dynamique de ports, configurez le nombre de ports par VM de sorte que la valeur minimale soit inférieure à l'utilisation maximale des ports, et que la valeur maximale soit supérieure à l'utilisation maximale des ports.
Modifier le nombre minimal de ports par défaut alloués par VM
Pour savoir comment configurer le nombre minimal de ports par VM, consultez la section Choisir un nombre minimal de ports par VM.
Pour en savoir plus sur les conséquences de la modification de l'allocation minimale de ports, consultez les sections suivantes :
Si l'allocation de ports dynamique est configurée sur votre passerelle Cloud NAT, consultez la section Modifier le nombre minimal ou maximal de ports lorsque l'allocation de ports dynamique est configurée.
Console
Dans Google Cloud Console, accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier (
).Cliquez sur Configurations avancées.
Modifiez le champ Nombre minimal de ports par instance de VM.
Cliquez sur Enregistrer.
gcloud
Cette commande ne modifie pas les autres champs dans la configuration Cloud NAT.
gcloud compute routers nats update NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --min-ports-per-vm=128
Remplacez les éléments suivants :
NAT_CONFIG
: nom de votre configuration Cloud NAT.ROUTER_NAME
: nom de votre routeur Cloud Router.REGION
: région du Cloud 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).
Modifier la méthode d'allocation de port
L'allocation de ports statique et l'allocation de ports dynamique ont des exigences de configuration différentes.
Avant de modifier le type d'allocation de port sur une passerelle Cloud NAT existante, assurez-vous que la configuration de la passerelle Cloud NAT est compatible avec ce type d'allocation de port. Si la configuration n'est pas compatible, la modification échoue.
Pour l'allocation de ports dynamique, vérifiez que le mappage indépendant des points de terminaison est désactivé.
Vérifiez que le paramètre de port minimal par VM est une puissance de 2, et est compris entre 32 et 32 768.
Console
Dans Google Cloud Console, accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier (
).Cliquez sur Configurations avancées.
Cochez ou décochez Activer l'allocation de ports dynamique.
Si nécessaire, ajustez les valeurs correspondant au nombre minimal de ports par instance de VM et au nombre maximal de ports par instance de VM.
Cliquez sur Enregistrer.
gcloud
Cette commande ne modifie pas les autres champs dans la configuration Cloud NAT.
gcloud compute routers nats update NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --enable-dynamic-port-allocation | --no-enable-dynamic-port-allocation \ [ --min-ports-per-vm=MIN_PORTS ] \ [ --max-ports-per-vm=MAX_PORTS ]
Remplacez les éléments suivants :
NAT_CONFIG
: nom de votre configuration Cloud NAT.ROUTER_NAME
: nom de votre routeur Cloud Router.REGION
: région du Cloud 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).MIN_PORTS
: nombre minimal de ports à allouer à chaque VM. Si l'allocation de ports dynamique est activée,MIN_PORTS
doit être une puissance de2
, et peut être compris entre32
et32768
.MAX_PORTS
: nombre maximal de ports à allouer à chaque VM.MAX_PORTS
doit être une puissance de2
, et peut être compris entre64
et65536
. La valeurMAX_PORTS
doit être supérieure à la valeurMIN_PORTS
. La valeur par défaut est65536
.
Modifier le nombre minimal ou maximal de ports lorsque l'allocation de ports dynamique est configurée
Une fois que vous avez configuré l'allocation de ports dynamique, vous pouvez modifier le nombre minimal ou maximal de ports attribués par VM.
Pour savoir comment configurer le nombre minimal de ports par VM, consultez la section Choisir un nombre minimal de ports par VM.
Pour en savoir plus sur les conséquences de la modification de l'allocation minimale de ports, consultez les sections suivantes :
Console
Dans Google Cloud Console, accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier (
).Cliquez sur Configurations avancées.
Ajustez les champs Nombre minimal de ports par instance de VM et Nombre maximal de ports par instance de VM.
Cliquez sur Enregistrer.
gcloud
Cette commande ne modifie pas les autres champs dans la configuration Cloud NAT.
gcloud compute routers nats update NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --min-ports-per-vm=MIN_PORTS \ --max-ports-per-vm=MAX_PORTS
Remplacez les éléments suivants :
NAT_CONFIG
: nom de votre configuration Cloud NAT.ROUTER_NAME
: nom de votre routeur Cloud Router.REGION
: région du Cloud 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).MIN_PORTS
: nombre minimal de ports à allouer à chaque VM. Si l'allocation de ports dynamique est activée,MIN_PORTS
doit être une puissance de2
, et peut être compris entre32
et32768
.MAX_PORTS
: nombre maximal de ports à allouer à chaque VM.MAX_PORTS
doit être une puissance de2
, et peut être compris entre64
et65536
. La valeurMAX_PORTS
doit être supérieure à la valeurMIN_PORTS
.
Modifier les délais avant expiration de la NAT
Les sections suivantes décrivent les délais avant expiration NAT et expliquent comment les modifier:
- Expiration de la NAT
- Modifier les délais avant expiration de la NAT
- Réinitialiser les délais avant expiration NAT aux valeurs par défaut
Expiration de la NAT
Cloud NAT utilise les délais d'expiration suivants pour les connexions de protocole. Sauf exception explicitement signalée, ces délais avant expiration s'appliquent à la fois au NAT public et au NAT privé. Vous pouvez modifier les valeurs par défaut des délais avant expiration pour diminuer ou augmenter la vitesse à laquelle les ports sont réutilisés. Chaque valeur de délai avant expiration correspond à un équilibre entre une utilisation efficace des ressources Cloud NAT et une perturbation possible des connexions, flux ou sessions actifs.
Délai avant expiration | Description | Valeur par défaut de Cloud NAT | Configurable |
---|---|---|---|
Délai d'inactivité du mappage UDP RFC 4787 REQ-5 |
Spécifie le délai, en secondes, au-delà duquel les flux UDP doivent cesser d'envoyer du trafic aux points de terminaison afin de supprimer les mappages Cloud NAT. Le délai d'inactivité du mappage UDP affecte deux points de terminaison qui cessent d'envoyer du trafic l'un à l'autre. Il affecte également les points de terminaison dont la réponse prend plus de temps ou si la latence du réseau augmente. Vous pouvez augmenter la valeur spécifiée pour le délai avant expiration afin de réduire la fréquence de réutilisation des ports. Une valeur plus élevée du délai d'expiration signifie que les ports sont conservés pour des connexions plus longues et protège ainsi contre les interruptions du trafic qui transite via un socket UDP spécifique. |
30 secondes | Oui |
Délai d'inactivité de la connexion TCP établie RFC 5382 REQ-5 |
Spécifie le délai d'inactivité d'une connexion, en secondes, avant la suppression des mappages Cloud NAT. Le délai d'inactivité de la connexion TCP établie affecte les points de terminaison dont la réponse prend plus de temps ou si la latence du réseau augmente. Vous pouvez augmenter la valeur de ce délai avant expiration lorsque vous souhaitez ouvrir des connexions TCP et les garder ouvertes longtemps sans mettre en place de mécanisme keepalive. |
1 200 secondes (20 minutes) | Oui |
Délai d'inactivité de la connexion TCP transitoire RFC 5382 REQ-5 |
Spécifie le délai, en secondes, pendant lequel les connexions TCP peuvent rester à l'état semi-ouvert avant la suppression des mappages Cloud NAT. Le délai d'inactivité de la connexion TCP transitoire affecte un point de terminaison lorsqu'un point de terminaison externe prend plus de temps que le délai spécifié ou lorsque la latence du réseau augmente. Contrairement au délai d'inactivité de la connexion TCP établie, le délai d'inactivité de la connexion TCP transitoire n'affecte que les connexions semi-ouvertes. |
30 seconds Remarque:Quelle que soit la valeur définie pour ce délai d'expiration, Cloud NAT peut nécessiter jusqu'à 30 secondes supplémentaires avant qu'un tuple d'adresse IP source et de port source Cloud NAT puisse être utilisé pour traiter une nouvelle connexion. |
Oui |
Délai d'inactivité de la connexion TCP TIME_WAIT RFC 5382 REQ-5 |
Spécifie le délai, en secondes, pendant lequel une connexion TCP entièrement fermée est conservée dans les mappages Cloud NAT après expiration de la connexion. Le délai TCP TIME_WAIT empêche vos points de terminaison internes de recevoir des paquets non valides appartenant à une connexion TCP fermée et qui sont retransmis. Vous pouvez réduire la valeur de ce délai avant expiration pour améliorer la réutilisation des ports Cloud NAT au prix d'une réception possible de paquets retransmis depuis une connexion sans lien et précédemment fermée. |
120 secondes Remarque:Quelle que soit la valeur définie pour ce délai d'expiration, Cloud NAT peut nécessiter jusqu'à 30 secondes supplémentaires avant qu'un tuple d'adresse IP source et de port source Cloud NAT puisse être utilisé pour traiter une nouvelle connexion. Si vous utilisez l'allocation dynamique de ports, définissez ce délai avant expiration sur 30 secondes ou plus pour éviter les paquets perdus. |
Oui |
Délai d'inactivité du mappage ICMP RFC 5508 REQ-2 |
Spécifie le délai, en secondes, au-delà duquel les mappages Cloud NAT ICMP (Internet Control Message Protocol) sans flux de trafic sont fermés. Le délai d'inactivité du mappage ICMP affecte un point de terminaison lorsque celui-ci prend plus de temps que le délai spécifié ou lorsque la latence du réseau augmente. |
30 seconds | Oui |
Modifier les délais avant expiration de la NAT
Console
Dans Google Cloud Console, accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier (
).Cliquez sur Configurations avancées.
Modifiez les valeurs de délai d'expiration que vous souhaitez modifier.
Cliquez sur Enregistrer.
gcloud
Utilisez la commande gcloud compute routers nats update
avec les options suivantes pour modifier ces valeurs de délai avant expiration:
- Délai d'inactivité du mappage UDP:
--udp-idle-timeout
- Délai d'inactivité de la connexion TCP établie:
--tcp-established-idle-timeout
- Délai d'inactivité de la connexion transitoire TCP:
--tcp-transitory-idle-timeout
- Délai d'inactivité de la connexion TCP TIME_WAIT:
--tcp-time-wait-timeout
- Délai d'inactivité du mappage ICMP:
--icmp-idle-timeout
Cette commande ne modifie pas les autres champs dans la configuration NAT.
Par exemple, la commande suivante modifie la valeur du délai d'inactivité du mappage UDP.
gcloud compute routers nats update NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --udp-idle-timeout=VALUE
Remplacez les éléments suivants :
NAT_CONFIG
: nom de votre configuration Cloud NAT.ROUTER_NAME
: nom de votre routeur Cloud Router.REGION
: région du Cloud 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).VALUE
: valeur du délai avant expiration (en secondes)
Réinitialiser les délais avant expiration de la NAT aux valeurs par défaut
Console
Dans Google Cloud Console, accédez à la page Cloud NAT.
Cliquez sur votre passerelle Cloud NAT.
Cliquez sur Modifier (
).Cliquez sur Configurations avancées.
Supprimez toutes les valeurs configurées par l'utilisateur que vous souhaitez réinitialiser.
Cliquez sur Enregistrer.
Les valeurs supprimées sont réinitialisées sur les valeurs par défaut.
gcloud
Cette commande ne modifie pas les autres champs dans la configuration Cloud NAT.
gcloud compute routers nats update NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --clear-udp-idle-timeout \ --clear-icmp-idle-timeout \ --clear-tcp-established-idle-timeout \ --clear-tcp-time-wait-timeout \ --clear-tcp-transitory-idle-timeout
Remplacez les éléments suivants :
NAT_CONFIG
: nom de votre passerelle Cloud NAT.ROUTER_NAME
: nom de votre routeur Cloud Router.REGION
: région du Cloud 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).
Impact de l'ajustement des configurations NAT sur les connexions NAT existantes
Le tableau suivant récapitule l'impact de l'ajustement des configurations Cloud NAT sur les connexions existantes:
Action de réglage | Perte de connexion |
---|---|
Désactiver le mappage indépendant du point de terminaison | Non |
Diminuez le nombre minimal de ports par VM tout en activant l'allocation de ports dynamique: le nombre maximal de ports par VM doit être ≥ au ancien nombre minimal de ports par VM, et le nombre maximal de ports par VM doit être ≥ à 1024
|
Non |
Augmenter le nombre minimal de ports par VM lorsque l'allocation de ports dynamique est déjà activée | Non |
Réduire le nombre minimal de ports par VM lorsque l'allocation de ports dynamique est déjà activée | Non |
Augmenter le nombre minimal de ports par VM lorsque l'allocation de ports dynamique est déjà désactivée | Non |
Réduire le nombre minimal de ports par VM lorsque l'allocation de ports dynamique est déjà désactivée | Oui |
Augmenter le nombre maximal de ports par VM | Non |
Diminuer le nombre maximal de ports par VM lorsque l'allocation de ports dynamique est déjà activée | Oui |
Modifier les délais avant expiration de Cloud NAT lorsque l'allocation de ports dynamique est activée ou désactivée | Non |
Désactiver l'allocation de ports dynamique | Oui |
Étape suivante
- Configurez la journalisation et la surveillance de Cloud NAT.
- Résolvez les problèmes courants liés aux configurations du NAT.