1. Packages
  2. AWS Classic
  3. API Docs
  4. ec2
  5. NetworkInterface

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.45.0 published on Tuesday, Jul 16, 2024 by Pulumi

aws.ec2.NetworkInterface

Explore with Pulumi AI

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.45.0 published on Tuesday, Jul 16, 2024 by Pulumi

    Provides an Elastic network interface (ENI) resource.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const test = new aws.ec2.NetworkInterface("test", {
        subnetId: publicA.id,
        privateIps: ["10.0.0.50"],
        securityGroups: [web.id],
        attachments: [{
            instance: testAwsInstance.id,
            deviceIndex: 1,
        }],
    });
    
    import pulumi
    import pulumi_aws as aws
    
    test = aws.ec2.NetworkInterface("test",
        subnet_id=public_a["id"],
        private_ips=["10.0.0.50"],
        security_groups=[web["id"]],
        attachments=[{
            "instance": test_aws_instance["id"],
            "deviceIndex": 1,
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := ec2.NewNetworkInterface(ctx, "test", &ec2.NetworkInterfaceArgs{
    			SubnetId: pulumi.Any(publicA.Id),
    			PrivateIps: pulumi.StringArray{
    				pulumi.String("10.0.0.50"),
    			},
    			SecurityGroups: pulumi.StringArray{
    				web.Id,
    			},
    			Attachments: ec2.NetworkInterfaceAttachmentTypeArray{
    				&ec2.NetworkInterfaceAttachmentTypeArgs{
    					Instance:    pulumi.Any(testAwsInstance.Id),
    					DeviceIndex: pulumi.Int(1),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var test = new Aws.Ec2.NetworkInterface("test", new()
        {
            SubnetId = publicA.Id,
            PrivateIps = new[]
            {
                "10.0.0.50",
            },
            SecurityGroups = new[]
            {
                web.Id,
            },
            Attachments = new[]
            {
                new Aws.Ec2.Inputs.NetworkInterfaceAttachmentArgs
                {
                    Instance = testAwsInstance.Id,
                    DeviceIndex = 1,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.ec2.NetworkInterface;
    import com.pulumi.aws.ec2.NetworkInterfaceArgs;
    import com.pulumi.aws.ec2.inputs.NetworkInterfaceAttachmentArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var test = new NetworkInterface("test", NetworkInterfaceArgs.builder()
                .subnetId(publicA.id())
                .privateIps("10.0.0.50")
                .securityGroups(web.id())
                .attachments(NetworkInterfaceAttachmentArgs.builder()
                    .instance(testAwsInstance.id())
                    .deviceIndex(1)
                    .build())
                .build());
    
        }
    }
    
    resources:
      test:
        type: aws:ec2:NetworkInterface
        properties:
          subnetId: ${publicA.id}
          privateIps:
            - 10.0.0.50
          securityGroups:
            - ${web.id}
          attachments:
            - instance: ${testAwsInstance.id}
              deviceIndex: 1
    

    Example of Managing Multiple IPs on a Network Interface

    By default, private IPs are managed through the private_ips and private_ips_count arguments which manage IPs as a set of IPs that are configured without regard to order. For a new network interface, the same primary IP address is consistently selected from a given set of addresses, regardless of the order provided. However, modifications of the set of addresses of an existing interface will not alter the current primary IP address unless it has been removed from the set.

    In order to manage the private IPs as a sequentially ordered list, configure private_ip_list_enabled to true and use private_ip_list to manage the IPs. This will disable the private_ips and private_ips_count settings, which must be removed from the config file but are still exported. Note that changing the first address of private_ip_list, which is the primary, always requires a new interface.

    If you are managing a specific set or list of IPs, instead of just using private_ips_count, this is a potential workflow for also leveraging private_ips_count to have AWS automatically assign additional IP addresses:

    1. Comment out private_ips, private_ip_list, private_ip_list_enabled in your configuration
    2. Set the desired private_ips_count (count of the number of secondaries, the primary is not included)
    3. Apply to assign the extra IPs
    4. Remove private_ips_count and restore your settings from the first step
    5. Add the new IPs to your current settings
    6. Apply again to update the stored state

    This process can also be used to remove IP addresses in addition to the option of manually removing them. Adding IP addresses in a manually is more difficult because it requires knowledge of which addresses are available.

    Create NetworkInterface Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new NetworkInterface(name: string, args: NetworkInterfaceArgs, opts?: CustomResourceOptions);
    @overload
    def NetworkInterface(resource_name: str,
                         args: NetworkInterfaceArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def NetworkInterface(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         subnet_id: Optional[str] = None,
                         ipv6_prefixes: Optional[Sequence[str]] = None,
                         tags: Optional[Mapping[str, str]] = None,
                         ipv6_prefix_count: Optional[int] = None,
                         ipv4_prefixes: Optional[Sequence[str]] = None,
                         ipv6_address_count: Optional[int] = None,
                         ipv6_address_list_enabled: Optional[bool] = None,
                         ipv6_address_lists: Optional[Sequence[str]] = None,
                         ipv6_addresses: Optional[Sequence[str]] = None,
                         ipv4_prefix_count: Optional[int] = None,
                         interface_type: Optional[str] = None,
                         private_ip_list_enabled: Optional[bool] = None,
                         private_ip: Optional[str] = None,
                         private_ip_lists: Optional[Sequence[str]] = None,
                         private_ips: Optional[Sequence[str]] = None,
                         private_ips_count: Optional[int] = None,
                         security_groups: Optional[Sequence[str]] = None,
                         source_dest_check: Optional[bool] = None,
                         description: Optional[str] = None,
                         attachments: Optional[Sequence[NetworkInterfaceAttachmentArgs]] = None)
    func NewNetworkInterface(ctx *Context, name string, args NetworkInterfaceArgs, opts ...ResourceOption) (*NetworkInterface, error)
    public NetworkInterface(string name, NetworkInterfaceArgs args, CustomResourceOptions? opts = null)
    public NetworkInterface(String name, NetworkInterfaceArgs args)
    public NetworkInterface(String name, NetworkInterfaceArgs args, CustomResourceOptions options)
    
    type: aws:ec2:NetworkInterface
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args NetworkInterfaceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args NetworkInterfaceArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args NetworkInterfaceArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args NetworkInterfaceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args NetworkInterfaceArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var networkInterfaceResource = new Aws.Ec2.NetworkInterface("networkInterfaceResource", new()
    {
        SubnetId = "string",
        Ipv6Prefixes = new[]
        {
            "string",
        },
        Tags = 
        {
            { "string", "string" },
        },
        Ipv6PrefixCount = 0,
        Ipv4Prefixes = new[]
        {
            "string",
        },
        Ipv6AddressCount = 0,
        Ipv6AddressListEnabled = false,
        Ipv6AddressLists = new[]
        {
            "string",
        },
        Ipv6Addresses = new[]
        {
            "string",
        },
        Ipv4PrefixCount = 0,
        InterfaceType = "string",
        PrivateIpListEnabled = false,
        PrivateIp = "string",
        PrivateIpLists = new[]
        {
            "string",
        },
        PrivateIps = new[]
        {
            "string",
        },
        PrivateIpsCount = 0,
        SecurityGroups = new[]
        {
            "string",
        },
        SourceDestCheck = false,
        Description = "string",
        Attachments = new[]
        {
            new Aws.Ec2.Inputs.NetworkInterfaceAttachmentArgs
            {
                DeviceIndex = 0,
                Instance = "string",
                AttachmentId = "string",
            },
        },
    });
    
    example, err := ec2.NewNetworkInterface(ctx, "networkInterfaceResource", &ec2.NetworkInterfaceArgs{
    	SubnetId: pulumi.String("string"),
    	Ipv6Prefixes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Ipv6PrefixCount: pulumi.Int(0),
    	Ipv4Prefixes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Ipv6AddressCount:       pulumi.Int(0),
    	Ipv6AddressListEnabled: pulumi.Bool(false),
    	Ipv6AddressLists: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Ipv6Addresses: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Ipv4PrefixCount:      pulumi.Int(0),
    	InterfaceType:        pulumi.String("string"),
    	PrivateIpListEnabled: pulumi.Bool(false),
    	PrivateIp:            pulumi.String("string"),
    	PrivateIpLists: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	PrivateIps: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	PrivateIpsCount: pulumi.Int(0),
    	SecurityGroups: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	SourceDestCheck: pulumi.Bool(false),
    	Description:     pulumi.String("string"),
    	Attachments: ec2.NetworkInterfaceAttachmentTypeArray{
    		&ec2.NetworkInterfaceAttachmentTypeArgs{
    			DeviceIndex:  pulumi.Int(0),
    			Instance:     pulumi.String("string"),
    			AttachmentId: pulumi.String("string"),
    		},
    	},
    })
    
    var networkInterfaceResource = new NetworkInterface("networkInterfaceResource", NetworkInterfaceArgs.builder()
        .subnetId("string")
        .ipv6Prefixes("string")
        .tags(Map.of("string", "string"))
        .ipv6PrefixCount(0)
        .ipv4Prefixes("string")
        .ipv6AddressCount(0)
        .ipv6AddressListEnabled(false)
        .ipv6AddressLists("string")
        .ipv6Addresses("string")
        .ipv4PrefixCount(0)
        .interfaceType("string")
        .privateIpListEnabled(false)
        .privateIp("string")
        .privateIpLists("string")
        .privateIps("string")
        .privateIpsCount(0)
        .securityGroups("string")
        .sourceDestCheck(false)
        .description("string")
        .attachments(NetworkInterfaceAttachmentArgs.builder()
            .deviceIndex(0)
            .instance("string")
            .attachmentId("string")
            .build())
        .build());
    
    network_interface_resource = aws.ec2.NetworkInterface("networkInterfaceResource",
        subnet_id="string",
        ipv6_prefixes=["string"],
        tags={
            "string": "string",
        },
        ipv6_prefix_count=0,
        ipv4_prefixes=["string"],
        ipv6_address_count=0,
        ipv6_address_list_enabled=False,
        ipv6_address_lists=["string"],
        ipv6_addresses=["string"],
        ipv4_prefix_count=0,
        interface_type="string",
        private_ip_list_enabled=False,
        private_ip="string",
        private_ip_lists=["string"],
        private_ips=["string"],
        private_ips_count=0,
        security_groups=["string"],
        source_dest_check=False,
        description="string",
        attachments=[{
            "deviceIndex": 0,
            "instance": "string",
            "attachmentId": "string",
        }])
    
    const networkInterfaceResource = new aws.ec2.NetworkInterface("networkInterfaceResource", {
        subnetId: "string",
        ipv6Prefixes: ["string"],
        tags: {
            string: "string",
        },
        ipv6PrefixCount: 0,
        ipv4Prefixes: ["string"],
        ipv6AddressCount: 0,
        ipv6AddressListEnabled: false,
        ipv6AddressLists: ["string"],
        ipv6Addresses: ["string"],
        ipv4PrefixCount: 0,
        interfaceType: "string",
        privateIpListEnabled: false,
        privateIp: "string",
        privateIpLists: ["string"],
        privateIps: ["string"],
        privateIpsCount: 0,
        securityGroups: ["string"],
        sourceDestCheck: false,
        description: "string",
        attachments: [{
            deviceIndex: 0,
            instance: "string",
            attachmentId: "string",
        }],
    });
    
    type: aws:ec2:NetworkInterface
    properties:
        attachments:
            - attachmentId: string
              deviceIndex: 0
              instance: string
        description: string
        interfaceType: string
        ipv4PrefixCount: 0
        ipv4Prefixes:
            - string
        ipv6AddressCount: 0
        ipv6AddressListEnabled: false
        ipv6AddressLists:
            - string
        ipv6Addresses:
            - string
        ipv6PrefixCount: 0
        ipv6Prefixes:
            - string
        privateIp: string
        privateIpListEnabled: false
        privateIpLists:
            - string
        privateIps:
            - string
        privateIpsCount: 0
        securityGroups:
            - string
        sourceDestCheck: false
        subnetId: string
        tags:
            string: string
    

    NetworkInterface Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The NetworkInterface resource accepts the following input properties:

    SubnetId string

    Subnet ID to create the ENI in.

    The following arguments are optional:

    Attachments List<NetworkInterfaceAttachment>
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    Description string
    Description for the network interface.
    InterfaceType string
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    Ipv4PrefixCount int
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    Ipv4Prefixes List<string>
    One or more IPv4 prefixes assigned to the network interface.
    Ipv6AddressCount int
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    Ipv6AddressListEnabled bool
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    Ipv6AddressLists List<string>
    List of private IPs to assign to the ENI in sequential order.
    Ipv6Addresses List<string>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    Ipv6PrefixCount int
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    Ipv6Prefixes List<string>
    One or more IPv6 prefixes assigned to the network interface.
    PrivateIp string
    PrivateIpListEnabled bool
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    PrivateIpLists List<string>
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    PrivateIps List<string>
    List of private IPs to assign to the ENI without regard to order.
    PrivateIpsCount int
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    SecurityGroups List<string>
    List of security group IDs to assign to the ENI.
    SourceDestCheck bool
    Whether to enable source destination checking for the ENI. Default true.
    Tags Dictionary<string, string>
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    SubnetId string

    Subnet ID to create the ENI in.

    The following arguments are optional:

    Attachments []NetworkInterfaceAttachmentTypeArgs
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    Description string
    Description for the network interface.
    InterfaceType string
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    Ipv4PrefixCount int
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    Ipv4Prefixes []string
    One or more IPv4 prefixes assigned to the network interface.
    Ipv6AddressCount int
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    Ipv6AddressListEnabled bool
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    Ipv6AddressLists []string
    List of private IPs to assign to the ENI in sequential order.
    Ipv6Addresses []string
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    Ipv6PrefixCount int
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    Ipv6Prefixes []string
    One or more IPv6 prefixes assigned to the network interface.
    PrivateIp string
    PrivateIpListEnabled bool
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    PrivateIpLists []string
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    PrivateIps []string
    List of private IPs to assign to the ENI without regard to order.
    PrivateIpsCount int
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    SecurityGroups []string
    List of security group IDs to assign to the ENI.
    SourceDestCheck bool
    Whether to enable source destination checking for the ENI. Default true.
    Tags map[string]string
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    subnetId String

    Subnet ID to create the ENI in.

    The following arguments are optional:

    attachments List<NetworkInterfaceAttachment>
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description String
    Description for the network interface.
    interfaceType String
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4PrefixCount Integer
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4Prefixes List<String>
    One or more IPv4 prefixes assigned to the network interface.
    ipv6AddressCount Integer
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6AddressListEnabled Boolean
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6AddressLists List<String>
    List of private IPs to assign to the ENI in sequential order.
    ipv6Addresses List<String>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6PrefixCount Integer
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6Prefixes List<String>
    One or more IPv6 prefixes assigned to the network interface.
    privateIp String
    privateIpListEnabled Boolean
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    privateIpLists List<String>
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    privateIps List<String>
    List of private IPs to assign to the ENI without regard to order.
    privateIpsCount Integer
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    securityGroups List<String>
    List of security group IDs to assign to the ENI.
    sourceDestCheck Boolean
    Whether to enable source destination checking for the ENI. Default true.
    tags Map<String,String>
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    subnetId string

    Subnet ID to create the ENI in.

    The following arguments are optional:

    attachments NetworkInterfaceAttachment[]
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description string
    Description for the network interface.
    interfaceType string
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4PrefixCount number
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4Prefixes string[]
    One or more IPv4 prefixes assigned to the network interface.
    ipv6AddressCount number
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6AddressListEnabled boolean
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6AddressLists string[]
    List of private IPs to assign to the ENI in sequential order.
    ipv6Addresses string[]
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6PrefixCount number
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6Prefixes string[]
    One or more IPv6 prefixes assigned to the network interface.
    privateIp string
    privateIpListEnabled boolean
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    privateIpLists string[]
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    privateIps string[]
    List of private IPs to assign to the ENI without regard to order.
    privateIpsCount number
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    securityGroups string[]
    List of security group IDs to assign to the ENI.
    sourceDestCheck boolean
    Whether to enable source destination checking for the ENI. Default true.
    tags {[key: string]: string}
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    subnet_id str

    Subnet ID to create the ENI in.

    The following arguments are optional:

    attachments Sequence[NetworkInterfaceAttachmentArgs]
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description str
    Description for the network interface.
    interface_type str
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4_prefix_count int
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4_prefixes Sequence[str]
    One or more IPv4 prefixes assigned to the network interface.
    ipv6_address_count int
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6_address_list_enabled bool
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6_address_lists Sequence[str]
    List of private IPs to assign to the ENI in sequential order.
    ipv6_addresses Sequence[str]
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6_prefix_count int
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6_prefixes Sequence[str]
    One or more IPv6 prefixes assigned to the network interface.
    private_ip str
    private_ip_list_enabled bool
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    private_ip_lists Sequence[str]
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    private_ips Sequence[str]
    List of private IPs to assign to the ENI without regard to order.
    private_ips_count int
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    security_groups Sequence[str]
    List of security group IDs to assign to the ENI.
    source_dest_check bool
    Whether to enable source destination checking for the ENI. Default true.
    tags Mapping[str, str]
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    subnetId String

    Subnet ID to create the ENI in.

    The following arguments are optional:

    attachments List<Property Map>
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description String
    Description for the network interface.
    interfaceType String
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4PrefixCount Number
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4Prefixes List<String>
    One or more IPv4 prefixes assigned to the network interface.
    ipv6AddressCount Number
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6AddressListEnabled Boolean
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6AddressLists List<String>
    List of private IPs to assign to the ENI in sequential order.
    ipv6Addresses List<String>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6PrefixCount Number
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6Prefixes List<String>
    One or more IPv6 prefixes assigned to the network interface.
    privateIp String
    privateIpListEnabled Boolean
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    privateIpLists List<String>
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    privateIps List<String>
    List of private IPs to assign to the ENI without regard to order.
    privateIpsCount Number
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    securityGroups List<String>
    List of security group IDs to assign to the ENI.
    sourceDestCheck Boolean
    Whether to enable source destination checking for the ENI. Default true.
    tags Map<String>
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the NetworkInterface resource produces the following output properties:

    Arn string
    ARN of the network interface.
    Id string
    The provider-assigned unique ID for this managed resource.
    MacAddress string
    MAC address of the network interface.
    OutpostArn string
    OwnerId string
    AWS account ID of the owner of the network interface.
    PrivateDnsName string
    Private DNS name of the network interface (IPv4).
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Arn string
    ARN of the network interface.
    Id string
    The provider-assigned unique ID for this managed resource.
    MacAddress string
    MAC address of the network interface.
    OutpostArn string
    OwnerId string
    AWS account ID of the owner of the network interface.
    PrivateDnsName string
    Private DNS name of the network interface (IPv4).
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    ARN of the network interface.
    id String
    The provider-assigned unique ID for this managed resource.
    macAddress String
    MAC address of the network interface.
    outpostArn String
    ownerId String
    AWS account ID of the owner of the network interface.
    privateDnsName String
    Private DNS name of the network interface (IPv4).
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn string
    ARN of the network interface.
    id string
    The provider-assigned unique ID for this managed resource.
    macAddress string
    MAC address of the network interface.
    outpostArn string
    ownerId string
    AWS account ID of the owner of the network interface.
    privateDnsName string
    Private DNS name of the network interface (IPv4).
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn str
    ARN of the network interface.
    id str
    The provider-assigned unique ID for this managed resource.
    mac_address str
    MAC address of the network interface.
    outpost_arn str
    owner_id str
    AWS account ID of the owner of the network interface.
    private_dns_name str
    Private DNS name of the network interface (IPv4).
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    ARN of the network interface.
    id String
    The provider-assigned unique ID for this managed resource.
    macAddress String
    MAC address of the network interface.
    outpostArn String
    ownerId String
    AWS account ID of the owner of the network interface.
    privateDnsName String
    Private DNS name of the network interface (IPv4).
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Look up Existing NetworkInterface Resource

    Get an existing NetworkInterface resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: NetworkInterfaceState, opts?: CustomResourceOptions): NetworkInterface
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            arn: Optional[str] = None,
            attachments: Optional[Sequence[NetworkInterfaceAttachmentArgs]] = None,
            description: Optional[str] = None,
            interface_type: Optional[str] = None,
            ipv4_prefix_count: Optional[int] = None,
            ipv4_prefixes: Optional[Sequence[str]] = None,
            ipv6_address_count: Optional[int] = None,
            ipv6_address_list_enabled: Optional[bool] = None,
            ipv6_address_lists: Optional[Sequence[str]] = None,
            ipv6_addresses: Optional[Sequence[str]] = None,
            ipv6_prefix_count: Optional[int] = None,
            ipv6_prefixes: Optional[Sequence[str]] = None,
            mac_address: Optional[str] = None,
            outpost_arn: Optional[str] = None,
            owner_id: Optional[str] = None,
            private_dns_name: Optional[str] = None,
            private_ip: Optional[str] = None,
            private_ip_list_enabled: Optional[bool] = None,
            private_ip_lists: Optional[Sequence[str]] = None,
            private_ips: Optional[Sequence[str]] = None,
            private_ips_count: Optional[int] = None,
            security_groups: Optional[Sequence[str]] = None,
            source_dest_check: Optional[bool] = None,
            subnet_id: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None) -> NetworkInterface
    func GetNetworkInterface(ctx *Context, name string, id IDInput, state *NetworkInterfaceState, opts ...ResourceOption) (*NetworkInterface, error)
    public static NetworkInterface Get(string name, Input<string> id, NetworkInterfaceState? state, CustomResourceOptions? opts = null)
    public static NetworkInterface get(String name, Output<String> id, NetworkInterfaceState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Arn string
    ARN of the network interface.
    Attachments List<NetworkInterfaceAttachment>
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    Description string
    Description for the network interface.
    InterfaceType string
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    Ipv4PrefixCount int
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    Ipv4Prefixes List<string>
    One or more IPv4 prefixes assigned to the network interface.
    Ipv6AddressCount int
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    Ipv6AddressListEnabled bool
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    Ipv6AddressLists List<string>
    List of private IPs to assign to the ENI in sequential order.
    Ipv6Addresses List<string>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    Ipv6PrefixCount int
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    Ipv6Prefixes List<string>
    One or more IPv6 prefixes assigned to the network interface.
    MacAddress string
    MAC address of the network interface.
    OutpostArn string
    OwnerId string
    AWS account ID of the owner of the network interface.
    PrivateDnsName string
    Private DNS name of the network interface (IPv4).
    PrivateIp string
    PrivateIpListEnabled bool
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    PrivateIpLists List<string>
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    PrivateIps List<string>
    List of private IPs to assign to the ENI without regard to order.
    PrivateIpsCount int
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    SecurityGroups List<string>
    List of security group IDs to assign to the ENI.
    SourceDestCheck bool
    Whether to enable source destination checking for the ENI. Default true.
    SubnetId string

    Subnet ID to create the ENI in.

    The following arguments are optional:

    Tags Dictionary<string, string>
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Arn string
    ARN of the network interface.
    Attachments []NetworkInterfaceAttachmentTypeArgs
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    Description string
    Description for the network interface.
    InterfaceType string
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    Ipv4PrefixCount int
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    Ipv4Prefixes []string
    One or more IPv4 prefixes assigned to the network interface.
    Ipv6AddressCount int
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    Ipv6AddressListEnabled bool
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    Ipv6AddressLists []string
    List of private IPs to assign to the ENI in sequential order.
    Ipv6Addresses []string
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    Ipv6PrefixCount int
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    Ipv6Prefixes []string
    One or more IPv6 prefixes assigned to the network interface.
    MacAddress string
    MAC address of the network interface.
    OutpostArn string
    OwnerId string
    AWS account ID of the owner of the network interface.
    PrivateDnsName string
    Private DNS name of the network interface (IPv4).
    PrivateIp string
    PrivateIpListEnabled bool
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    PrivateIpLists []string
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    PrivateIps []string
    List of private IPs to assign to the ENI without regard to order.
    PrivateIpsCount int
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    SecurityGroups []string
    List of security group IDs to assign to the ENI.
    SourceDestCheck bool
    Whether to enable source destination checking for the ENI. Default true.
    SubnetId string

    Subnet ID to create the ENI in.

    The following arguments are optional:

    Tags map[string]string
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    ARN of the network interface.
    attachments List<NetworkInterfaceAttachment>
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description String
    Description for the network interface.
    interfaceType String
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4PrefixCount Integer
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4Prefixes List<String>
    One or more IPv4 prefixes assigned to the network interface.
    ipv6AddressCount Integer
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6AddressListEnabled Boolean
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6AddressLists List<String>
    List of private IPs to assign to the ENI in sequential order.
    ipv6Addresses List<String>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6PrefixCount Integer
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6Prefixes List<String>
    One or more IPv6 prefixes assigned to the network interface.
    macAddress String
    MAC address of the network interface.
    outpostArn String
    ownerId String
    AWS account ID of the owner of the network interface.
    privateDnsName String
    Private DNS name of the network interface (IPv4).
    privateIp String
    privateIpListEnabled Boolean
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    privateIpLists List<String>
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    privateIps List<String>
    List of private IPs to assign to the ENI without regard to order.
    privateIpsCount Integer
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    securityGroups List<String>
    List of security group IDs to assign to the ENI.
    sourceDestCheck Boolean
    Whether to enable source destination checking for the ENI. Default true.
    subnetId String

    Subnet ID to create the ENI in.

    The following arguments are optional:

    tags Map<String,String>
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn string
    ARN of the network interface.
    attachments NetworkInterfaceAttachment[]
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description string
    Description for the network interface.
    interfaceType string
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4PrefixCount number
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4Prefixes string[]
    One or more IPv4 prefixes assigned to the network interface.
    ipv6AddressCount number
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6AddressListEnabled boolean
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6AddressLists string[]
    List of private IPs to assign to the ENI in sequential order.
    ipv6Addresses string[]
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6PrefixCount number
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6Prefixes string[]
    One or more IPv6 prefixes assigned to the network interface.
    macAddress string
    MAC address of the network interface.
    outpostArn string
    ownerId string
    AWS account ID of the owner of the network interface.
    privateDnsName string
    Private DNS name of the network interface (IPv4).
    privateIp string
    privateIpListEnabled boolean
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    privateIpLists string[]
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    privateIps string[]
    List of private IPs to assign to the ENI without regard to order.
    privateIpsCount number
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    securityGroups string[]
    List of security group IDs to assign to the ENI.
    sourceDestCheck boolean
    Whether to enable source destination checking for the ENI. Default true.
    subnetId string

    Subnet ID to create the ENI in.

    The following arguments are optional:

    tags {[key: string]: string}
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn str
    ARN of the network interface.
    attachments Sequence[NetworkInterfaceAttachmentArgs]
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description str
    Description for the network interface.
    interface_type str
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4_prefix_count int
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4_prefixes Sequence[str]
    One or more IPv4 prefixes assigned to the network interface.
    ipv6_address_count int
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6_address_list_enabled bool
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6_address_lists Sequence[str]
    List of private IPs to assign to the ENI in sequential order.
    ipv6_addresses Sequence[str]
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6_prefix_count int
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6_prefixes Sequence[str]
    One or more IPv6 prefixes assigned to the network interface.
    mac_address str
    MAC address of the network interface.
    outpost_arn str
    owner_id str
    AWS account ID of the owner of the network interface.
    private_dns_name str
    Private DNS name of the network interface (IPv4).
    private_ip str
    private_ip_list_enabled bool
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    private_ip_lists Sequence[str]
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    private_ips Sequence[str]
    List of private IPs to assign to the ENI without regard to order.
    private_ips_count int
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    security_groups Sequence[str]
    List of security group IDs to assign to the ENI.
    source_dest_check bool
    Whether to enable source destination checking for the ENI. Default true.
    subnet_id str

    Subnet ID to create the ENI in.

    The following arguments are optional:

    tags Mapping[str, str]
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    ARN of the network interface.
    attachments List<Property Map>
    Configuration block to define the attachment of the ENI. See Attachment below for more details!
    description String
    Description for the network interface.
    interfaceType String
    Type of network interface to create. Set to efa for Elastic Fabric Adapter. Changing interface_type will cause the resource to be destroyed and re-created.
    ipv4PrefixCount Number
    Number of IPv4 prefixes that AWS automatically assigns to the network interface.
    ipv4Prefixes List<String>
    One or more IPv4 prefixes assigned to the network interface.
    ipv6AddressCount Number
    Number of IPv6 addresses to assign to a network interface. You can't use this option if specifying specific ipv6_addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
    ipv6AddressListEnabled Boolean
    Whether ipv6_address_list is allowed and controls the IPs to assign to the ENI and ipv6_addresses and ipv6_address_count become read-only. Default false.
    ipv6AddressLists List<String>
    List of private IPs to assign to the ENI in sequential order.
    ipv6Addresses List<String>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. Addresses are assigned without regard to order. You can't use this option if you're specifying ipv6_address_count.
    ipv6PrefixCount Number
    Number of IPv6 prefixes that AWS automatically assigns to the network interface.
    ipv6Prefixes List<String>
    One or more IPv6 prefixes assigned to the network interface.
    macAddress String
    MAC address of the network interface.
    outpostArn String
    ownerId String
    AWS account ID of the owner of the network interface.
    privateDnsName String
    Private DNS name of the network interface (IPv4).
    privateIp String
    privateIpListEnabled Boolean
    Whether private_ip_list is allowed and controls the IPs to assign to the ENI and private_ips and private_ips_count become read-only. Default false.
    privateIpLists List<String>
    List of private IPs to assign to the ENI in sequential order. Requires setting private_ip_list_enabled to true.
    privateIps List<String>
    List of private IPs to assign to the ENI without regard to order.
    privateIpsCount Number
    Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
    securityGroups List<String>
    List of security group IDs to assign to the ENI.
    sourceDestCheck Boolean
    Whether to enable source destination checking for the ENI. Default true.
    subnetId String

    Subnet ID to create the ENI in.

    The following arguments are optional:

    tags Map<String>
    Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Supporting Types

    NetworkInterfaceAttachment, NetworkInterfaceAttachmentArgs

    DeviceIndex int
    Integer to define the devices index.
    Instance string
    ID of the instance to attach to.
    AttachmentId string
    DeviceIndex int
    Integer to define the devices index.
    Instance string
    ID of the instance to attach to.
    AttachmentId string
    deviceIndex Integer
    Integer to define the devices index.
    instance String
    ID of the instance to attach to.
    attachmentId String
    deviceIndex number
    Integer to define the devices index.
    instance string
    ID of the instance to attach to.
    attachmentId string
    device_index int
    Integer to define the devices index.
    instance str
    ID of the instance to attach to.
    attachment_id str
    deviceIndex Number
    Integer to define the devices index.
    instance String
    ID of the instance to attach to.
    attachmentId String

    Import

    Using pulumi import, import Network Interfaces using the id. For example:

    $ pulumi import aws:ec2/networkInterface:NetworkInterface test eni-e5aa89a3
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.45.0 published on Tuesday, Jul 16, 2024 by Pulumi