Requisitos previos
Antes de configurar una pasarela, debes obtener los permisos de gestión de identidades y accesos (IAM) adecuados, asegurarte de que tu proyecto tiene una política de red adecuada y habilitar la salida.
Para obtener más información, consulta Antes de empezar a usar Cloud NAT.
La pasarela de Cloud NAT usa subredes leaf externas como entradas. Para obtener más información sobre cómo configurar subredes externas para Cloud NAT, consulta Crear subredes externas para Cloud NAT.
Crear y gestionar pasarelas de Cloud NAT con tiempos de espera de conexión
En este documento se describe cómo crear y gestionar pasarelas Cloud NAT con tiempos de espera de conexión. En este caso práctico, se crea una configuración similar a la del primer escenario, pero se especifican tiempos de espera para las conexiones establecidas a través de la pasarela Cloud NAT.
En el siguiente diagrama se muestra un ejemplo de configuración de una pasarela con varias IPs de salida:

De forma predeterminada, las conexiones de salida creadas a través de una pasarela de Cloud NAT tienen los siguientes tiempos de espera. Si es necesario, puedes configurarlos manualmente.
| Tiempo de espera | Predeterminado (segundos) |
| Conexiones no TCP | 60 |
| Conexiones TCP inactivas | 8000 |
| Desconexión de conexiones TCP | 10 |
| Establecimiento de conexión TCP | 60 |
Crear una pasarela de Cloud NAT con tiempos de espera
En este ejemplo se define una única pasarela de Cloud NAT con tiempos de espera de conexión.
Al igual que en el ejemplo anterior, esta configuración asigna las IPs de salida de subnet-1 y subnet-2 al tráfico saliente de los endpoints con la etiqueta app:aa.
Además, esta configuración sustituye los tiempos de espera predeterminados por valores personalizados.
apiVersion: networking.gdc.goog/v1
kind: CloudNATGateway
metadata:
namespace: project-1
name: gateway-1
spec:
workloadSelector: # Immutable
labelSelector:
workloads:
matchLabels:
app: aa
subnetRefs: # Mutable
- subnet-1
- subnet-2
connectionOptions: # Mutable
nonTCPTimeoutSeconds: 10 # All non-TCP connections. 60 by default
tcpTimeoutSeconds: 900 # Established TCP connections. 8000 by default
tcpTeardownTimeoutSeconds: 10 # TCP connection teardown. 10 by default
tcpEstablishmentTimeoutSeconds: 10 # TCP connection establishment. 60 by default
Para comprobar el estado de las pasarelas, usa el siguiente comando kubectl:
export MGMT_KUBECONFIG=<path_to_management_kubeconfig>
kubectl get cloudnatgateways gateway-1 -n project-1 --kubeconfig "${MGMT_KUBECONFIG:?}"
Si se configura correctamente, el campo de condición de estado de la puerta de enlace Cloud NAT
muestra la condición del tipo Ready definida como true y las subredes marcadas como
OK, tal como se muestra en el siguiente ejemplo de salida.
apiVersion: networking.gdc.goog/v1
kind: CloudNATGateway
metadata:
namespace: project-1
name: gateway-1
spec:
workloadSelector: # Immutable
labelSelector:
workloads:
matchLabels:
app: aa
subnetRefs: # Mutable
- subnet-1
- subnet-2
connectionOptions: # Mutable
nonTCPTimeoutSeconds: 10
tcpTimeoutSeconds: 900
tcpTeardownTimeoutSeconds: 10
tcpEstablishmentTimeoutSeconds: 10
status:
conditions:
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: Ready
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: SubnetsReady
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: PerimeterConfigurationReady
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: EgressRoutesReady
subnets:
- name: subnet-1
status: OK
- name: subnet-2
status: OK
Para verificar que la nueva configuración está en vigor, puedes consultar el estado de las pasarelas.