Pré-requisitos
Antes de configurar um gateway, você precisa receber as permissões adequadas do Identity and Access Management (IAM), garantir que seu projeto tenha uma política de rede adequada e ativar a saída.
Consulte Antes de começar a usar o Cloud NAT para mais detalhes.
O gateway do Cloud NAT usa sub-redes externas leaf como entradas. Para mais informações sobre como configurar sub-redes externas para o Cloud NAT, consulte Criar sub-redes externas para o Cloud NAT.
Criar e gerenciar gateways do Cloud NAT com tempos limite de conexão
Neste documento, descrevemos como criar e gerenciar gateways do Cloud NAT com tempos limite de conexão. Esse caso de uso cria uma configuração semelhante ao primeiro cenário, mas especifica tempos limite para conexões estabelecidas pelo gateway do Cloud NAT.
O diagrama a seguir mostra um exemplo de configuração de gateway com vários IPs de saída:

Por padrão, as conexões de saída criadas por um gateway do Cloud NAT têm os seguintes tempos limite. É possível configurá-los manualmente, se necessário.
| Tempo limite | Padrão (segundos) |
| Conexões não TCP | 60 |
| Conexões TCP inativas | 8000 |
| Encerramento de conexões TCP | 10 |
| Estabelecimento de conexão TCP | 60 |
Criar um gateway do Cloud NAT com tempos limite
Este exemplo define um único gateway do Cloud NAT com tempos limite de conexão.
Como no exemplo anterior, essa configuração atribui os IPs de saída de subnet-1
e subnet-2 ao tráfego de saída de endpoints com o rótulo app:aa.
Além disso, essa configuração substitui os tempos limite padrão 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
O status dos gateways pode ser verificado usando o seguinte comando kubectl.
export MGMT_KUBECONFIG=<path_to_management_kubeconfig>
kubectl get cloudnatgateways gateway-1 -n project-1 --kubeconfig "${MGMT_KUBECONFIG:?}"
Se configurado corretamente, o campo de condição de status do gateway do Cloud NAT
mostra a condição do tipo Ready definida como true e as sub-redes marcadas como
OK, conforme mostrado no exemplo de saída a seguir.
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 se a nova configuração está em vigor, confira o status dos gateways.