# Cloud NAT Module Simple Cloud NAT management, with optional router creation. ## Example ```hcl module "nat" { source = "../modules/net-cloudnat" project_id = "my-project" region = "europe-west1" name = "default" router_network = "my-vpc" } ``` ## Variables | name | description | type | required | default | |---|---|:---: |:---:|:---:| | name | Name of the Cloud NAT resource. | string | ✓ | | | project_id | Project where resources will be created. | string | ✓ | | | region | Region where resources will be created. | string | ✓ | | | *addresses* | Optional list of external address self links. | list(string) | | [] | | *config_min_ports_per_vm* | Minimum number of ports allocated to a VM from this NAT config. | number | | 64 | | *config_source_subnets* | Subnetwork configuration (ALL_SUBNETWORKS_ALL_IP_RANGES, ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, LIST_OF_SUBNETWORKS). | string | | ALL_SUBNETWORKS_ALL_IP_RANGES | | *config_timeouts* | Timeout configurations. | object({...}) | | ... | | *router_asn* | Router ASN used for auto-created router. | number | | 64514 | | *router_create* | Create router. | bool | | true | | *router_name* | Router name, leave blank if router will be created to use auto generated name. | string | | | | *router_network* | Name of the VPC used for auto-created router. | string | | | | *subnetworks* | Subnetworks to NAT, only used when config_source_subnets equals LIST_OF_SUBNETWORKS. | list(object({...})) | | [] | ## Outputs | name | description | sensitive | |---|---|:---:| | name | Name of the Cloud NAT. | | | nat_ip_allocate_option | NAT IP allocation mode. | | | region | Cloud NAT region. | | | router | Cloud NAT router resources (if auto created). | | | router_name | Cloud NAT router name. | |