pub struct Builder { /* private fields */ }
Expand description
A builder for VpnTunnelOptionsSpecification
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn tunnel_inside_cidr(self, input: impl Into<String>) -> Self
pub fn tunnel_inside_cidr(self, input: impl Into<String>) -> Self
The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway.
Constraints: A size /30 CIDR block from the 169.254.0.0/16
range. The following CIDR blocks are reserved and cannot be used:
-
169.254.0.0/30
-
169.254.1.0/30
-
169.254.2.0/30
-
169.254.3.0/30
-
169.254.4.0/30
-
169.254.5.0/30
-
169.254.169.252/30
sourcepub fn set_tunnel_inside_cidr(self, input: Option<String>) -> Self
pub fn set_tunnel_inside_cidr(self, input: Option<String>) -> Self
The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway.
Constraints: A size /30 CIDR block from the 169.254.0.0/16
range. The following CIDR blocks are reserved and cannot be used:
-
169.254.0.0/30
-
169.254.1.0/30
-
169.254.2.0/30
-
169.254.3.0/30
-
169.254.4.0/30
-
169.254.5.0/30
-
169.254.169.252/30
sourcepub fn tunnel_inside_ipv6_cidr(self, input: impl Into<String>) -> Self
pub fn tunnel_inside_ipv6_cidr(self, input: impl Into<String>) -> Self
The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same transit gateway.
Constraints: A size /126 CIDR block from the local fd00::/8
range.
sourcepub fn set_tunnel_inside_ipv6_cidr(self, input: Option<String>) -> Self
pub fn set_tunnel_inside_ipv6_cidr(self, input: Option<String>) -> Self
The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same transit gateway.
Constraints: A size /126 CIDR block from the local fd00::/8
range.
The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and customer gateway.
Constraints: Allowed characters are alphanumeric characters, periods (.), and underscores (_). Must be between 8 and 64 characters in length and cannot start with zero (0).
The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and customer gateway.
Constraints: Allowed characters are alphanumeric characters, periods (.), and underscores (_). Must be between 8 and 64 characters in length and cannot start with zero (0).
sourcepub fn phase1_lifetime_seconds(self, input: i32) -> Self
pub fn phase1_lifetime_seconds(self, input: i32) -> Self
The lifetime for phase 1 of the IKE negotiation, in seconds.
Constraints: A value between 900 and 28,800.
Default: 28800
sourcepub fn set_phase1_lifetime_seconds(self, input: Option<i32>) -> Self
pub fn set_phase1_lifetime_seconds(self, input: Option<i32>) -> Self
The lifetime for phase 1 of the IKE negotiation, in seconds.
Constraints: A value between 900 and 28,800.
Default: 28800
sourcepub fn phase2_lifetime_seconds(self, input: i32) -> Self
pub fn phase2_lifetime_seconds(self, input: i32) -> Self
The lifetime for phase 2 of the IKE negotiation, in seconds.
Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds
.
Default: 3600
sourcepub fn set_phase2_lifetime_seconds(self, input: Option<i32>) -> Self
pub fn set_phase2_lifetime_seconds(self, input: Option<i32>) -> Self
The lifetime for phase 2 of the IKE negotiation, in seconds.
Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds
.
Default: 3600
sourcepub fn rekey_margin_time_seconds(self, input: i32) -> Self
pub fn rekey_margin_time_seconds(self, input: i32) -> Self
The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage
.
Constraints: A value between 60 and half of Phase2LifetimeSeconds
.
Default: 540
sourcepub fn set_rekey_margin_time_seconds(self, input: Option<i32>) -> Self
pub fn set_rekey_margin_time_seconds(self, input: Option<i32>) -> Self
The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage
.
Constraints: A value between 60 and half of Phase2LifetimeSeconds
.
Default: 540
sourcepub fn rekey_fuzz_percentage(self, input: i32) -> Self
pub fn rekey_fuzz_percentage(self, input: i32) -> Self
The percentage of the rekey window (determined by RekeyMarginTimeSeconds
) during which the rekey time is randomly selected.
Constraints: A value between 0 and 100.
Default: 100
sourcepub fn set_rekey_fuzz_percentage(self, input: Option<i32>) -> Self
pub fn set_rekey_fuzz_percentage(self, input: Option<i32>) -> Self
The percentage of the rekey window (determined by RekeyMarginTimeSeconds
) during which the rekey time is randomly selected.
Constraints: A value between 0 and 100.
Default: 100
sourcepub fn replay_window_size(self, input: i32) -> Self
pub fn replay_window_size(self, input: i32) -> Self
The number of packets in an IKE replay window.
Constraints: A value between 64 and 2048.
Default: 1024
sourcepub fn set_replay_window_size(self, input: Option<i32>) -> Self
pub fn set_replay_window_size(self, input: Option<i32>) -> Self
The number of packets in an IKE replay window.
Constraints: A value between 64 and 2048.
Default: 1024
sourcepub fn dpd_timeout_seconds(self, input: i32) -> Self
pub fn dpd_timeout_seconds(self, input: i32) -> Self
The number of seconds after which a DPD timeout occurs.
Constraints: A value greater than or equal to 30.
Default: 30
sourcepub fn set_dpd_timeout_seconds(self, input: Option<i32>) -> Self
pub fn set_dpd_timeout_seconds(self, input: Option<i32>) -> Self
The number of seconds after which a DPD timeout occurs.
Constraints: A value greater than or equal to 30.
Default: 30
sourcepub fn dpd_timeout_action(self, input: impl Into<String>) -> Self
pub fn dpd_timeout_action(self, input: impl Into<String>) -> Self
The action to take after DPD timeout occurs. Specify restart
to restart the IKE initiation. Specify clear
to end the IKE session.
Valid Values: clear
| none
| restart
Default: clear
sourcepub fn set_dpd_timeout_action(self, input: Option<String>) -> Self
pub fn set_dpd_timeout_action(self, input: Option<String>) -> Self
The action to take after DPD timeout occurs. Specify restart
to restart the IKE initiation. Specify clear
to end the IKE session.
Valid Values: clear
| none
| restart
Default: clear
sourcepub fn phase1_encryption_algorithms(
self,
input: Phase1EncryptionAlgorithmsRequestListValue
) -> Self
pub fn phase1_encryption_algorithms(
self,
input: Phase1EncryptionAlgorithmsRequestListValue
) -> Self
Appends an item to phase1_encryption_algorithms
.
To override the contents of this collection use set_phase1_encryption_algorithms
.
One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.
Valid values: AES128
| AES256
| AES128-GCM-16
| AES256-GCM-16
sourcepub fn set_phase1_encryption_algorithms(
self,
input: Option<Vec<Phase1EncryptionAlgorithmsRequestListValue>>
) -> Self
pub fn set_phase1_encryption_algorithms(
self,
input: Option<Vec<Phase1EncryptionAlgorithmsRequestListValue>>
) -> Self
One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.
Valid values: AES128
| AES256
| AES128-GCM-16
| AES256-GCM-16
sourcepub fn phase2_encryption_algorithms(
self,
input: Phase2EncryptionAlgorithmsRequestListValue
) -> Self
pub fn phase2_encryption_algorithms(
self,
input: Phase2EncryptionAlgorithmsRequestListValue
) -> Self
Appends an item to phase2_encryption_algorithms
.
To override the contents of this collection use set_phase2_encryption_algorithms
.
One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.
Valid values: AES128
| AES256
| AES128-GCM-16
| AES256-GCM-16
sourcepub fn set_phase2_encryption_algorithms(
self,
input: Option<Vec<Phase2EncryptionAlgorithmsRequestListValue>>
) -> Self
pub fn set_phase2_encryption_algorithms(
self,
input: Option<Vec<Phase2EncryptionAlgorithmsRequestListValue>>
) -> Self
One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.
Valid values: AES128
| AES256
| AES128-GCM-16
| AES256-GCM-16
sourcepub fn phase1_integrity_algorithms(
self,
input: Phase1IntegrityAlgorithmsRequestListValue
) -> Self
pub fn phase1_integrity_algorithms(
self,
input: Phase1IntegrityAlgorithmsRequestListValue
) -> Self
Appends an item to phase1_integrity_algorithms
.
To override the contents of this collection use set_phase1_integrity_algorithms
.
One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.
Valid values: SHA1
| SHA2-256
| SHA2-384
| SHA2-512
sourcepub fn set_phase1_integrity_algorithms(
self,
input: Option<Vec<Phase1IntegrityAlgorithmsRequestListValue>>
) -> Self
pub fn set_phase1_integrity_algorithms(
self,
input: Option<Vec<Phase1IntegrityAlgorithmsRequestListValue>>
) -> Self
One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.
Valid values: SHA1
| SHA2-256
| SHA2-384
| SHA2-512
sourcepub fn phase2_integrity_algorithms(
self,
input: Phase2IntegrityAlgorithmsRequestListValue
) -> Self
pub fn phase2_integrity_algorithms(
self,
input: Phase2IntegrityAlgorithmsRequestListValue
) -> Self
Appends an item to phase2_integrity_algorithms
.
To override the contents of this collection use set_phase2_integrity_algorithms
.
One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.
Valid values: SHA1
| SHA2-256
| SHA2-384
| SHA2-512
sourcepub fn set_phase2_integrity_algorithms(
self,
input: Option<Vec<Phase2IntegrityAlgorithmsRequestListValue>>
) -> Self
pub fn set_phase2_integrity_algorithms(
self,
input: Option<Vec<Phase2IntegrityAlgorithmsRequestListValue>>
) -> Self
One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.
Valid values: SHA1
| SHA2-256
| SHA2-384
| SHA2-512
sourcepub fn phase1_dh_group_numbers(
self,
input: Phase1DhGroupNumbersRequestListValue
) -> Self
pub fn phase1_dh_group_numbers(
self,
input: Phase1DhGroupNumbersRequestListValue
) -> Self
Appends an item to phase1_dh_group_numbers
.
To override the contents of this collection use set_phase1_dh_group_numbers
.
One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations.
Valid values: 2
| 14
| 15
| 16
| 17
| 18
| 19
| 20
| 21
| 22
| 23
| 24
sourcepub fn set_phase1_dh_group_numbers(
self,
input: Option<Vec<Phase1DhGroupNumbersRequestListValue>>
) -> Self
pub fn set_phase1_dh_group_numbers(
self,
input: Option<Vec<Phase1DhGroupNumbersRequestListValue>>
) -> Self
One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations.
Valid values: 2
| 14
| 15
| 16
| 17
| 18
| 19
| 20
| 21
| 22
| 23
| 24
sourcepub fn phase2_dh_group_numbers(
self,
input: Phase2DhGroupNumbersRequestListValue
) -> Self
pub fn phase2_dh_group_numbers(
self,
input: Phase2DhGroupNumbersRequestListValue
) -> Self
Appends an item to phase2_dh_group_numbers
.
To override the contents of this collection use set_phase2_dh_group_numbers
.
One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations.
Valid values: 2
| 5
| 14
| 15
| 16
| 17
| 18
| 19
| 20
| 21
| 22
| 23
| 24
sourcepub fn set_phase2_dh_group_numbers(
self,
input: Option<Vec<Phase2DhGroupNumbersRequestListValue>>
) -> Self
pub fn set_phase2_dh_group_numbers(
self,
input: Option<Vec<Phase2DhGroupNumbersRequestListValue>>
) -> Self
One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations.
Valid values: 2
| 5
| 14
| 15
| 16
| 17
| 18
| 19
| 20
| 21
| 22
| 23
| 24
sourcepub fn ike_versions(self, input: IkeVersionsRequestListValue) -> Self
pub fn ike_versions(self, input: IkeVersionsRequestListValue) -> Self
Appends an item to ike_versions
.
To override the contents of this collection use set_ike_versions
.
The IKE versions that are permitted for the VPN tunnel.
Valid values: ikev1
| ikev2
sourcepub fn set_ike_versions(
self,
input: Option<Vec<IkeVersionsRequestListValue>>
) -> Self
pub fn set_ike_versions(
self,
input: Option<Vec<IkeVersionsRequestListValue>>
) -> Self
The IKE versions that are permitted for the VPN tunnel.
Valid values: ikev1
| ikev2
sourcepub fn startup_action(self, input: impl Into<String>) -> Self
pub fn startup_action(self, input: impl Into<String>) -> Self
The action to take when the establishing the tunnel for the VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start
for Amazon Web Services to initiate the IKE negotiation.
Valid Values: add
| start
Default: add
sourcepub fn set_startup_action(self, input: Option<String>) -> Self
pub fn set_startup_action(self, input: Option<String>) -> Self
The action to take when the establishing the tunnel for the VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start
for Amazon Web Services to initiate the IKE negotiation.
Valid Values: add
| start
Default: add
sourcepub fn log_options(self, input: VpnTunnelLogOptionsSpecification) -> Self
pub fn log_options(self, input: VpnTunnelLogOptionsSpecification) -> Self
Options for logging VPN tunnel activity.
sourcepub fn set_log_options(
self,
input: Option<VpnTunnelLogOptionsSpecification>
) -> Self
pub fn set_log_options(
self,
input: Option<VpnTunnelLogOptionsSpecification>
) -> Self
Options for logging VPN tunnel activity.
sourcepub fn build(self) -> VpnTunnelOptionsSpecification
pub fn build(self) -> VpnTunnelOptionsSpecification
Consumes the builder and constructs a VpnTunnelOptionsSpecification
.