Interface ComputeRouterNatConfig
-
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable,com.hashicorp.cdktf.TerraformMetaArguments
- All Known Implementing Classes:
ComputeRouterNatConfig.Jsii$Proxy
@Generated(value="jsii-pacmak/1.102.0 (build e354887)", date="2024-08-31T03:59:18.937Z") @Stability(Stable) public interface ComputeRouterNatConfig extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classComputeRouterNatConfig.BuilderA builder forComputeRouterNatConfigstatic classComputeRouterNatConfig.Jsii$ProxyAn implementation forComputeRouterNatConfig
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static ComputeRouterNatConfig.Builderbuilder()default StringgetAutoNetworkTier()The network tier to use when automatically reserving NAT IP addresses.default List<String>getDrainNatIps()A list of URLs of the IP resources to be drained.default ObjectgetEnableDynamicPortAllocation()Enable Dynamic Port Allocation.default ObjectgetEnableEndpointIndependentMapping()Enable endpoint independent mapping.default List<String>getEndpointTypes()Specifies the endpoint Types supported by the NAT Gateway.default NumbergetIcmpIdleTimeoutSec()Timeout (in seconds) for ICMP connections.default StringgetId()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#id ComputeRouterNat#id}.default ComputeRouterNatLogConfiggetLogConfig()log_config block.default NumbergetMaxPortsPerVm()Maximum number of ports allocated to a VM from this NAT.default NumbergetMinPortsPerVm()Minimum number of ports allocated to a VM from this NAT.StringgetName()Name of the NAT service.default StringgetNatIpAllocateOption()How external IPs should be allocated for this NAT.default List<String>getNatIps()Self-links of NAT IPs.default StringgetProject()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#project ComputeRouterNat#project}.default StringgetRegion()Region where the router and NAT reside.StringgetRouter()The name of the Cloud Router in which this NAT will be configured.default ObjectgetRules()rules block.StringgetSourceSubnetworkIpRangesToNat()How NAT should be configured per Subnetwork.default ObjectgetSubnetwork()subnetwork block.default NumbergetTcpEstablishedIdleTimeoutSec()Timeout (in seconds) for TCP established connections.default NumbergetTcpTimeWaitTimeoutSec()Timeout (in seconds) for TCP connections that are in TIME_WAIT state.default NumbergetTcpTransitoryIdleTimeoutSec()Timeout (in seconds) for TCP transitory connections.default ComputeRouterNatTimeoutsgetTimeouts()timeouts block.default NumbergetUdpIdleTimeoutSec()Timeout (in seconds) for UDP connections.
-
-
-
Method Detail
-
getName
@Stability(Stable) @NotNull String getName()
Name of the NAT service. The name must be 1-63 characters long and comply with RFC1035.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#name ComputeRouterNat#name}
-
getRouter
@Stability(Stable) @NotNull String getRouter()
The name of the Cloud Router in which this NAT will be configured.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#router ComputeRouterNat#router}
-
getSourceSubnetworkIpRangesToNat
@Stability(Stable) @NotNull String getSourceSubnetworkIpRangesToNat()
How NAT should be configured per Subnetwork.If 'ALL_SUBNETWORKS_ALL_IP_RANGES', all of the IP ranges in every Subnetwork are allowed to Nat. If 'ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES', all of the primary IP ranges in every Subnetwork are allowed to Nat. 'LIST_OF_SUBNETWORKS': A list of Subnetworks are allowed to Nat (specified in the field subnetwork below). Note that if this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other RouterNat section in any Router for this network in this region. Possible values: ["ALL_SUBNETWORKS_ALL_IP_RANGES", "ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES", "LIST_OF_SUBNETWORKS"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#source_subnetwork_ip_ranges_to_nat ComputeRouterNat#source_subnetwork_ip_ranges_to_nat}
-
getAutoNetworkTier
@Stability(Stable) @Nullable default String getAutoNetworkTier()
The network tier to use when automatically reserving NAT IP addresses.Must be one of: PREMIUM, STANDARD. If not specified, then the current project-level default tier is used. Possible values: ["PREMIUM", "STANDARD"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#auto_network_tier ComputeRouterNat#auto_network_tier}
-
getDrainNatIps
@Stability(Stable) @Nullable default List<String> getDrainNatIps()
A list of URLs of the IP resources to be drained.These IPs must be valid static external IPs that have been assigned to the NAT. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#drain_nat_ips ComputeRouterNat#drain_nat_ips}
-
getEnableDynamicPortAllocation
@Stability(Stable) @Nullable default Object getEnableDynamicPortAllocation()
Enable Dynamic Port Allocation.If minPortsPerVm is set, minPortsPerVm must be set to a power of two greater than or equal to 32. If minPortsPerVm is not set, a minimum of 32 ports will be allocated to a VM from this NAT config. If maxPortsPerVm is set, maxPortsPerVm must be set to a power of two greater than minPortsPerVm. If maxPortsPerVm is not set, a maximum of 65536 ports will be allocated to a VM from this NAT config. Mutually exclusive with enableEndpointIndependentMapping. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#enable_dynamic_port_allocation ComputeRouterNat#enable_dynamic_port_allocation}
-
getEnableEndpointIndependentMapping
@Stability(Stable) @Nullable default Object getEnableEndpointIndependentMapping()
Enable endpoint independent mapping. For more information see the official documentation.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#enable_endpoint_independent_mapping ComputeRouterNat#enable_endpoint_independent_mapping}
-
getEndpointTypes
@Stability(Stable) @Nullable default List<String> getEndpointTypes()
Specifies the endpoint Types supported by the NAT Gateway.Supported values include: 'ENDPOINT_TYPE_VM', 'ENDPOINT_TYPE_SWG', 'ENDPOINT_TYPE_MANAGED_PROXY_LB'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#endpoint_types ComputeRouterNat#endpoint_types}
-
getIcmpIdleTimeoutSec
@Stability(Stable) @Nullable default Number getIcmpIdleTimeoutSec()
Timeout (in seconds) for ICMP connections. Defaults to 30s if not set.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#icmp_idle_timeout_sec ComputeRouterNat#icmp_idle_timeout_sec}
-
getId
@Stability(Stable) @Nullable default String getId()
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#id ComputeRouterNat#id}.Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
-
getLogConfig
@Stability(Stable) @Nullable default ComputeRouterNatLogConfig getLogConfig()
log_config block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#log_config ComputeRouterNat#log_config}
-
getMaxPortsPerVm
@Stability(Stable) @Nullable default Number getMaxPortsPerVm()
Maximum number of ports allocated to a VM from this NAT.This field can only be set when enableDynamicPortAllocation is enabled. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#max_ports_per_vm ComputeRouterNat#max_ports_per_vm}
-
getMinPortsPerVm
@Stability(Stable) @Nullable default Number getMinPortsPerVm()
Minimum number of ports allocated to a VM from this NAT.Defaults to 64 for static port allocation and 32 dynamic port allocation if not set. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#min_ports_per_vm ComputeRouterNat#min_ports_per_vm}
-
getNatIpAllocateOption
@Stability(Stable) @Nullable default String getNatIpAllocateOption()
How external IPs should be allocated for this NAT.Valid values are 'AUTO_ONLY' for only allowing NAT IPs allocated by Google Cloud Platform, or 'MANUAL_ONLY' for only user-allocated NAT IP addresses. Possible values: ["MANUAL_ONLY", "AUTO_ONLY"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#nat_ip_allocate_option ComputeRouterNat#nat_ip_allocate_option}
-
getNatIps
@Stability(Stable) @Nullable default List<String> getNatIps()
Self-links of NAT IPs. Only valid if natIpAllocateOption is set to MANUAL_ONLY.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#nat_ips ComputeRouterNat#nat_ips}
-
getProject
@Stability(Stable) @Nullable default String getProject()
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#project ComputeRouterNat#project}.
-
getRegion
@Stability(Stable) @Nullable default String getRegion()
Region where the router and NAT reside.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#region ComputeRouterNat#region}
-
getRules
@Stability(Stable) @Nullable default Object getRules()
rules block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#rules ComputeRouterNat#rules}
-
getSubnetwork
@Stability(Stable) @Nullable default Object getSubnetwork()
subnetwork block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#subnetwork ComputeRouterNat#subnetwork}
-
getTcpEstablishedIdleTimeoutSec
@Stability(Stable) @Nullable default Number getTcpEstablishedIdleTimeoutSec()
Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#tcp_established_idle_timeout_sec ComputeRouterNat#tcp_established_idle_timeout_sec}
-
getTcpTimeWaitTimeoutSec
@Stability(Stable) @Nullable default Number getTcpTimeWaitTimeoutSec()
Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults to 120s if not set.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#tcp_time_wait_timeout_sec ComputeRouterNat#tcp_time_wait_timeout_sec}
-
getTcpTransitoryIdleTimeoutSec
@Stability(Stable) @Nullable default Number getTcpTransitoryIdleTimeoutSec()
Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#tcp_transitory_idle_timeout_sec ComputeRouterNat#tcp_transitory_idle_timeout_sec}
-
getTimeouts
@Stability(Stable) @Nullable default ComputeRouterNatTimeouts getTimeouts()
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#timeouts ComputeRouterNat#timeouts}
-
getUdpIdleTimeoutSec
@Stability(Stable) @Nullable default Number getUdpIdleTimeoutSec()
Timeout (in seconds) for UDP connections. Defaults to 30s if not set.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_router_nat#udp_idle_timeout_sec ComputeRouterNat#udp_idle_timeout_sec}
-
builder
@Stability(Stable) static ComputeRouterNatConfig.Builder builder()
- Returns:
- a
ComputeRouterNatConfig.BuilderofComputeRouterNatConfig
-
-