Cloud NAT
Distributed managed source NAT for outbound traffic from private instances.
- Provider
- gcp
- Kind
- NAT gateway
- Category
- Edge
- Official docs
- https://cloud.google.com/nat/docs/overview
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| idleTimeoutMinutes | integer | — | no | — | ▸ 20 |
| logging | boolean | — | no | false | ▸ false |
| managed | boolean | — | no | false | ▸ true |
| minPortsPerVm | integer | — | no | 64 | inherited |
| natType | enum | public | private | no | public | inherited |
| portAllocation | enum | static | dynamic | no | static | inherited |
| staticIpCount | integer | — | no | — | inherited |
| udpIdleTimeoutSeconds | integer | — | no | 30 | inherited |
| zoneRedundant | boolean | — | no | — | inherited |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
No rule reads this kind yet. That is a gap, not a guarantee.
nodes:
- { id: "cloud-nat", component: "google-cloud-nat" }# yaml-language-server: $schema=../../schema/component.schema.json # Cloud NAT: distributed, software-defined managed egress NAT; no proxy VMs or appliances. # Defaults from "Cloud NAT overview", "IP addresses and ports" (64 ports per VM, static allocation) and "Tune NAT configuration" (TCP established idle 1200 s, UDP and ICMP idle 30 s). schemaVersion: "1" type: "component" id: "google-cloud-nat" kind: "nat-gateway" provider: "gcp" docs: "https://cloud.google.com/nat/docs/overview" defaults: managed: true logging: false idleTimeoutMinutes: 20 properties: natType: type: "enum" values: ["public", "private"] default: "public" portAllocation: type: "enum" values: ["static", "dynamic"] default: "static" minPortsPerVm: type: "integer" default: 64 udpIdleTimeoutSeconds: type: "integer" default: 30