Buy @ Amazon

All about ENI for AWS Exam and later


ENI - Elastic Network Interface

  • An ENI (Elastic Network Interface) is a logical networking component in a VPC that represents a virtual network interface card (NIC).
  • If ENI, think virtual NIC.
  • An ENI can include the following attributes: 
    • a primary private IPv4 address 
    • one or more secondary private IPv4 addresses 
    • one Elastic IP address per private IPv4 address 
    • one public IPv4 address, which can be auto-assigned to the network interface for eth0 when you launch an instance 
    • one or more IPv6 addresses 
    • one or more security groups 
    • a MAC address 
    • a source/destination check flag 
    • a description
  • You can create an ENI, attach it to an instance, detach it from an instance, and attach it to another instance in the same subnet.
  • Multiple Elastic IP addresses can be applied to an ENI. 
  • Multiple IP addresses can be assigned to an ENI. 
  • An ENI has a dynamically assigned private address in the assigned subnet, and can optionally have a dynamically assigned public IP address as well. 
  • You can create and configure ENIs in your account and attach them to instances in your VPC. 
  • An ENI's attributes follow it as it is attached or detached from an instance and reattached to another instance. 
  • When you move an ENI from one instance to another, network traffic is redirected to the new instance. 
  • You can also modify the attributes of your ENI, including changing its security groups and managing its IP addresses. 
  • Each instance in your VPC has a default network interface, called the primary network interface (eth0) that is assigned a private IPv4 address from the IPv4 address range of your VPC. You cannot detach this primary network interface from an instance. 
  • You can create and attach an additional network interface (i.e ENI here) to any instance in your VPC. The number of network interfaces you can attach varies by instance type.
  • Attaching multiple network interfaces to an instance is useful when you want to: 
    • Create a management network. 
    • Use network and security appliances in your VPC. 
    • Create dual-homed instances with workloads/roles on distinct subnets. 
    • Create a low-budget, high-availability solution.