aws_sdk_ec2/client/modify_subnet_attribute.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`ModifySubnetAttribute`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`assign_ipv6_address_on_creation(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::assign_ipv6_address_on_creation) / [`set_assign_ipv6_address_on_creation(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_assign_ipv6_address_on_creation):<br>required: **false**<br><p>Specify <code>true</code> to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address. This includes a network interface that's created when launching an instance into the subnet (the instance therefore receives an IPv6 address).</p> <p>If you enable the IPv6 addressing feature for your subnet, your network interface or instance only receives an IPv6 address if it's created using version <code>2016-11-15</code> or later of the Amazon EC2 API.</p><br>
7 /// - [`map_public_ip_on_launch(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::map_public_ip_on_launch) / [`set_map_public_ip_on_launch(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_map_public_ip_on_launch):<br>required: **false**<br><p>Specify <code>true</code> to indicate that network interfaces attached to instances created in the specified subnet should be assigned a public IPv4 address.</p> <p>Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the <i>Public IPv4 Address</i> tab on the <a href="http://aws.amazon.com/vpc/pricing/">Amazon VPC pricing page</a>.</p><br>
8 /// - [`subnet_id(impl Into<String>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::subnet_id) / [`set_subnet_id(Option<String>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_subnet_id):<br>required: **true**<br><p>The ID of the subnet.</p><br>
9 /// - [`map_customer_owned_ip_on_launch(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::map_customer_owned_ip_on_launch) / [`set_map_customer_owned_ip_on_launch(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_map_customer_owned_ip_on_launch):<br>required: **false**<br><p>Specify <code>true</code> to indicate that network interfaces attached to instances created in the specified subnet should be assigned a customer-owned IPv4 address.</p> <p>When this value is <code>true</code>, you must specify the customer-owned IP pool using <code>CustomerOwnedIpv4Pool</code>.</p><br>
10 /// - [`customer_owned_ipv4_pool(impl Into<String>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::customer_owned_ipv4_pool) / [`set_customer_owned_ipv4_pool(Option<String>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_customer_owned_ipv4_pool):<br>required: **false**<br><p>The customer-owned IPv4 address pool associated with the subnet.</p> <p>You must set this value when you specify <code>true</code> for <code>MapCustomerOwnedIpOnLaunch</code>.</p><br>
11 /// - [`enable_dns64(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::enable_dns64) / [`set_enable_dns64(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_enable_dns64):<br>required: **false**<br><p>Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations.</p> <p>You must first configure a NAT gateway in a public subnet (separate from the subnet containing the IPv6-only workloads). For example, the subnet containing the NAT gateway should have a <code>0.0.0.0/0</code> route pointing to the internet gateway. For more information, see <a href="https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-nat64-dns64.html#nat-gateway-nat64-dns64-walkthrough">Configure DNS64 and NAT64</a> in the <i>Amazon VPC User Guide</i>.</p><br>
12 /// - [`private_dns_hostname_type_on_launch(HostnameType)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::private_dns_hostname_type_on_launch) / [`set_private_dns_hostname_type_on_launch(Option<HostnameType>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_private_dns_hostname_type_on_launch):<br>required: **false**<br><p>The type of hostname to assign to instances in the subnet at launch. For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance DNS name can be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). For IPv6 only subnets, an instance DNS name must be based on the instance ID (resource-name).</p><br>
13 /// - [`enable_resource_name_dns_a_record_on_launch(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::enable_resource_name_dns_a_record_on_launch) / [`set_enable_resource_name_dns_a_record_on_launch(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_enable_resource_name_dns_a_record_on_launch):<br>required: **false**<br><p>Indicates whether to respond to DNS queries for instance hostnames with DNS A records.</p><br>
14 /// - [`enable_resource_name_dns_aaaa_record_on_launch(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::enable_resource_name_dns_aaaa_record_on_launch) / [`set_enable_resource_name_dns_aaaa_record_on_launch(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_enable_resource_name_dns_aaaa_record_on_launch):<br>required: **false**<br><p>Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.</p><br>
15 /// - [`enable_lni_at_device_index(i32)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::enable_lni_at_device_index) / [`set_enable_lni_at_device_index(Option<i32>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_enable_lni_at_device_index):<br>required: **false**<br><p>Indicates the device position for local network interfaces in this subnet. For example, <code>1</code> indicates local network interfaces in this subnet are the secondary network interface (eth1). A local network interface cannot be the primary network interface (eth0).</p><br>
16 /// - [`disable_lni_at_device_index(AttributeBooleanValue)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::disable_lni_at_device_index) / [`set_disable_lni_at_device_index(Option<AttributeBooleanValue>)`](crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::set_disable_lni_at_device_index):<br>required: **false**<br><p>Specify <code>true</code> to indicate that local network interfaces at the current position should be disabled.</p><br>
17 /// - On success, responds with [`ModifySubnetAttributeOutput`](crate::operation::modify_subnet_attribute::ModifySubnetAttributeOutput)
18 /// - On failure, responds with [`SdkError<ModifySubnetAttributeError>`](crate::operation::modify_subnet_attribute::ModifySubnetAttributeError)
19 pub fn modify_subnet_attribute(&self) -> crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder {
20 crate::operation::modify_subnet_attribute::builders::ModifySubnetAttributeFluentBuilder::new(self.handle.clone())
21 }
22}