resource "google_compute_router" "nat-router" { name = var.nat_router_name network = var.vpc_name region = var.region } resource "google_compute_address" "address" { count = 1 name = "nat-manual-ip" region = google_compute_router.nat-router.region lifecycle { create_before_destroy = true } } resource "google_compute_router_nat" "nat-config" { name = var.nat_name router = google_compute_router.nat-router.name region = google_compute_router.nat-router.region nat_ip_allocate_option = "MANUAL_ONLY" nat_ips = [for addr in google_compute_address.address : addr.self_link] source_subnetwork_ip_ranges_to_nat = "LIST_OF_SUBNETWORKS" subnetwork { name = "${var.vpc_name}-subnet" source_ip_ranges_to_nat = ["ALL_IP_RANGES"] } log_config { enable = true filter = "ALL" } }