#[non_exhaustive]
pub struct LaunchTemplateInstanceNetworkInterfaceSpecificationRequest {
Show 19 fields pub associate_carrier_ip_address: Option<bool>, pub associate_public_ip_address: Option<bool>, pub delete_on_termination: Option<bool>, pub description: Option<String>, pub device_index: Option<i32>, pub groups: Option<Vec<String>>, pub interface_type: Option<String>, pub ipv6_address_count: Option<i32>, pub ipv6_addresses: Option<Vec<InstanceIpv6AddressRequest>>, pub network_interface_id: Option<String>, pub private_ip_address: Option<String>, pub private_ip_addresses: Option<Vec<PrivateIpAddressSpecification>>, pub secondary_private_ip_address_count: Option<i32>, pub subnet_id: Option<String>, pub network_card_index: Option<i32>, pub ipv4_prefixes: Option<Vec<Ipv4PrefixSpecificationRequest>>, pub ipv4_prefix_count: Option<i32>, pub ipv6_prefixes: Option<Vec<Ipv6PrefixSpecificationRequest>>, pub ipv6_prefix_count: Option<i32>,
}
Expand description

The parameters for a network interface.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§associate_carrier_ip_address: Option<bool>

Associates a Carrier IP address with eth0 for a new network interface.

Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Wavelength Developer Guide.

§associate_public_ip_address: Option<bool>

Associates a public IPv4 address with eth0 for a new network interface.

§delete_on_termination: Option<bool>

Indicates whether the network interface is deleted when the instance is terminated.

§description: Option<String>

A description for the network interface.

§device_index: Option<i32>

The device index for the network interface attachment.

§groups: Option<Vec<String>>

The IDs of one or more security groups.

§interface_type: Option<String>

The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide.

If you are not creating an EFA, specify interface or omit this parameter.

Valid values: interface | efa

§ipv6_address_count: Option<i32>

The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.

§ipv6_addresses: Option<Vec<InstanceIpv6AddressRequest>>

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.

§network_interface_id: Option<String>

The ID of the network interface.

§private_ip_address: Option<String>

The primary private IPv4 address of the network interface.

§private_ip_addresses: Option<Vec<PrivateIpAddressSpecification>>

One or more private IPv4 addresses.

§secondary_private_ip_address_count: Option<i32>

The number of secondary private IPv4 addresses to assign to a network interface.

§subnet_id: Option<String>

The ID of the subnet for the network interface.

§network_card_index: Option<i32>

The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.

§ipv4_prefixes: Option<Vec<Ipv4PrefixSpecificationRequest>>

One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

§ipv4_prefix_count: Option<i32>

The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.

§ipv6_prefixes: Option<Vec<Ipv6PrefixSpecificationRequest>>

One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

§ipv6_prefix_count: Option<i32>

The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.

Implementations§

source§

impl LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

source

pub fn associate_carrier_ip_address(&self) -> Option<bool>

Associates a Carrier IP address with eth0 for a new network interface.

Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Wavelength Developer Guide.

source

pub fn associate_public_ip_address(&self) -> Option<bool>

Associates a public IPv4 address with eth0 for a new network interface.

source

pub fn delete_on_termination(&self) -> Option<bool>

Indicates whether the network interface is deleted when the instance is terminated.

source

pub fn description(&self) -> Option<&str>

A description for the network interface.

source

pub fn device_index(&self) -> Option<i32>

The device index for the network interface attachment.

source

pub fn groups(&self) -> Option<&[String]>

The IDs of one or more security groups.

source

pub fn interface_type(&self) -> Option<&str>

The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide.

If you are not creating an EFA, specify interface or omit this parameter.

Valid values: interface | efa

source

pub fn ipv6_address_count(&self) -> Option<i32>

The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.

source

pub fn ipv6_addresses(&self) -> Option<&[InstanceIpv6AddressRequest]>

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.

source

pub fn network_interface_id(&self) -> Option<&str>

The ID of the network interface.

source

pub fn private_ip_address(&self) -> Option<&str>

The primary private IPv4 address of the network interface.

source

pub fn private_ip_addresses(&self) -> Option<&[PrivateIpAddressSpecification]>

One or more private IPv4 addresses.

source

pub fn secondary_private_ip_address_count(&self) -> Option<i32>

The number of secondary private IPv4 addresses to assign to a network interface.

source

pub fn subnet_id(&self) -> Option<&str>

The ID of the subnet for the network interface.

source

pub fn network_card_index(&self) -> Option<i32>

The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.

source

pub fn ipv4_prefixes(&self) -> Option<&[Ipv4PrefixSpecificationRequest]>

One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

source

pub fn ipv4_prefix_count(&self) -> Option<i32>

The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.

source

pub fn ipv6_prefixes(&self) -> Option<&[Ipv6PrefixSpecificationRequest]>

One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

source

pub fn ipv6_prefix_count(&self) -> Option<i32>

The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.

source§

impl LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

Trait Implementations§

source§

impl Clone for LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

source§

fn clone(&self) -> LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq<LaunchTemplateInstanceNetworkInterfaceSpecificationRequest> for LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

source§

fn eq( &self, other: &LaunchTemplateInstanceNetworkInterfaceSpecificationRequest ) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more