Menu
Amazon Elastic Compute Cloud
User Guide for Windows Instances

Enabling Enhanced Networking with the Elastic Network Adapter (ENA) on Windows Instances in a VPC

To prepare for enhanced networking with the ENA network adapter, set up your instance as follows:

  • Launch the instance in a VPC. (You can't enable enhanced networking if the instance is in EC2-Classic.)

  • Install and configure the AWS CLI or the AWS Tools for Windows PowerShell on any computer you choose, preferably your local desktop or laptop. For more information, see Accessing Amazon EC2. Enhanced networking cannot be managed from the Amazon EC2 console.

  • If you have important data on the instance that you want to preserve, you should back that data up now by creating an AMI from your instance. Updating kernels and kernel modules, as well as enabling the enaSupport attribute, may render incompatible instances or operating systems unreachable; if you have a recent backup, your data will still be retained if this happens.

Testing Whether Enhanced Networking with ENA Is Enabled

To test whether enhanced networking with ENA is already enabled, verify that the driver is installed on your instance and that the enaSupport attribute is set.

Instance Attribute (enaSupport)

To check whether an instance has the enhanced networking enaSupport attribute set, use one of the following commands. If the attribute is set, the response is true.

  • describe-instances (AWS CLI)

    Copy
    aws ec2 describe-instances --instance-id instance_id --query "Reservations[].Instances[].EnaSupport"
  • Get-EC2Instance (Tools for Windows PowerShell)

    Copy
    (Get-EC2Instance -InstanceId instance-id).Instances.EnaSupport

Image Attribute (enaSupport)

To check whether an AMI has the enhanced networking enaSupport attribute set, use one of the following commands. If the attribute is set, the response is true.

  • describe-images (AWS CLI)

    Copy
    aws ec2 describe-images --image-id ami_id --query "Images[].EnaSupport"
  • Get-EC2Image (Tools for Windows PowerShell)

    Copy
    (Get-EC2Image -ImageId ami_id).EnaSupport

Enabling Enhanced Networking with ENA on Windows

If you launched your instance and it does not have enhanced networking enabled already, you must download and install the required network adapter driver on your instance, and then set the enaSupport instance attribute to activate enhanced networking. You can only enable this attribute on supported instance types. For more information, see Enhanced Networking Types.

To enable enhanced networking with ENA

  1. Connect to your instance and log in as the local administrator.

  2. From the instance, install the driver as follows:

    1. Download the Amazon ENA adapter driver package.

    2. Extract the zip archive.

    3. Open a Command Prompt window and navigate to the folder containing the driver for your Windows version, which must be one of the following:

      • Windows Server 2008 R2

      • Windows Server 2012

      • Windows Server 2012 R2

      • Windows Server 2016

    4. In the folder corresponding to your OS version, you should see three driver files: ena.cat, ena.inf, and ena.sys. Install the driver using the following command:

      Copy
      pnputil -i -a ena.inf

      This should yield the following output if the installation is successful:

      Microsoft PnP Utility
                                      
      Processing inf :            ena.inf 
      Succesfully installed the driver on a device on the system.
      Driver package added successfully.
      Published name :            oem9.inf
                                  
      Total attempted:                 1                            
      Number successfully imported:    1
  3. From your local computer, stop the instance using the Amazon EC2 console or one of the following commands: stop-instances (AWS CLI), Stop-EC2Instance (AWS Tools for Windows PowerShell). If your instance is managed by AWS OpsWorks, you should stop the instance in the AWS OpsWorks console so that the instance state remains in sync.

  4. Enable ENA support on your instance.

    Note that you cannot enable ENA support on the instance unless you have previously installed the ENA driver as described above.

    1. From your local computer, check the EC2 instance ENA-support attribute on your instance by running of the following commands. EnaSupport is set to false by default.

      AWS CLI

      Copy
      aws ec2 describe-instances --instance-id instance-id --query "Reservations[].Instances[].EnaSupport"

      Tools for Windows PowerShell

      Copy
      (Get-EC2Instance -InstanceId instance-id).Instances.EnaSupport

      If the attribute is not enabled, the output will be "[]" or blank.

    2. To enable ENA support, run one of the following commands, which returns no output:

      AWS CLI

      Copy
      aws ec2 modify-instance-attribute --instance-id instance-id --ena-support

      Tools for Windows PowerShell

      Copy
      Edit-EC2InstanceAttribute -InstanceId instance-id -EnaSupport $true

      If you encounter problems when you restart the instance, you can also disable ENA support with one of the following commands:

      AWS CLI

      Copy
      aws ec2 modify-instance-attribute --instance-id instance-id --no-ena-support

      Tools for Windows PowerShell

      Copy
      Edit-EC2InstanceAttribute -InstanceId instance-id -EnaSupport $false
    3. Verify that the attribute has been set to true by again running the describe-instances or Get-EC2Instance command as shown above. You should now see:

      [
          true
      ]
  5. From your local computer, start the instance using the Amazon EC2 console or one of the following commands: start-instances (AWS CLI), Start-EC2Instance (AWS Tools for Windows PowerShell). If your instance is managed by AWS OpsWorks, you should start the instance in the AWS OpsWorks console so that the instance state remains in sync.

  6. On the instance, validate that the ENA driver is installed and working.

    1. Right-click the network icon and choose Open Network and Sharing Center.

    2. Choose the Ethernet adapter, for example, Ethernet 2.

    3. Choose Details. The Network Connection Details window, the Description field should have the value Amazon Elastic Network Adapter.

  7. (Optional) Create an AMI from the instance. The AMI will inherit the enhanced networking enaSupport attribute from the instance. Therefore, you can use this AMI to launch another instance with enhanced networking with ENA enabled by default.

    If your instance is an EBS–backed instance, create a new AMI as described in Creating an Amazon EBS-Backed Windows AMI.

    If your instance is an instance store–backed instance, create a new AMI as described in Creating an Instance Store-Backed Windows AMI. To enable enhanced networking by default on instances created from the AMI, be sure to include the --ena-support flag when you register it.

Amazon ENA Driver Versions

Windows AMIs include the Amazon ENA driver to enable enhanced networking.

Driver version Details

1.0.9.0

Includes some reliability fixes. Applies only to Windows Server 2008 R2. Not recommended for other versions of Windows Server.

1.0.8.0

The initial release. Included in AMIs for Windows Server 2008 R2, Windows Server 2012 RTM, Windows Server 2012 R2, and Windows Server 2016.