To add an additional network interface to an instance or to remove an interface from your instance perform the steps described below.
The steps below only provide a basic overview. The exact tasks required will vary depending on your network design.
Contents
When an instance is created, a default Ethernet interface is attached to the system (eth0). You can create additional network interfaces and attach them to an instance.
If an instance has only one Ethernet interface, a public IP address can be assigned to the interface automatically. However, this address will be removed by AWS if a second interface is added to the instance and the instance is stopped and restarted. Be careful not to lose connectivity to your instance when changing the network configuration.
Creating a New Network Interface
The following steps are required to create a new network interface that can later be added to an instance:
Step | Details |
---|---|
Locate the Network Interfaces option on the EC2 dashboard and click on it. | Clicking on Network Interfaces opens the list of existing networks. |
Create a new interface. | Click on Create Network Interface at the top of the interface list. This opens the interface creation window. |
On this screen,
Click on Create when you are done. The new interface will appear in the overview list. There you can assign a name to the interface. Check that the interface is in state available. |
Attaching the Interface to your Instance
After creating a network interface, you have to assign it to the instance where it will be used.
Stopping and restarting the instance after adding a second network interface will release any automatically assigned public IP address.
Additionally, adding a second network interface to a non-Amazon Linux EC2 instance causes traffic flow issues. This occurs when there is only one routing table containing one default gateway and traffic that arrives at the second network interface leaves the instance using the first network interface or vice-versa. This is blocked by AWS because a mismatch between MAC address and IP address.
To make the second interface work, perform the following steps:
- Add the new interface to your running instance.
- Create a configuration file for the second interface.
- If only one interface has an Elastic IP address, restart your network and test reachability via the Elastic IP address.
- If both interfaces only have private IP addresses or both have public IP addresses,
- configure an additional routing table, and then
- set up rules in the custom routing table policy database so that traffic for each interface uses its own routing table.
Refer to the AWS documentation for more information. Failure to use the proper steps, may make your instance unreachable!
Step | Details | |
---|---|---|
Locate your network interface in the interface list and right-click on it. | The right-click opens the context menu. Select Attach. This will open the window to enter the necessary instance information. | |
Select your instance and confirm entry. | Select your instance from the drop-down list and click on Attach. The state of your interface will change from available to in-use. | |
Verify that instance has second interface. | Select your instance in the instance list. The description tab in instance details should now display two network interfaces: |
You can also attach/detach existing interfaces from the instance overview screen. Select your instance and then Actions > Networking > Attach or Detach network interface.
Assigning an Elastic IP Address to the Network Interface
The public IP address assigned to your instance by default when it starts, is not persistent. You will receive a new address when the instance is stopped and started again.
An Elastic IP address is a persistent, public IPv4 address to be used for one of your network interfaces or instances. You can associate an Elastic IP address with any instance or network interface in your account.
The advantage of associating the Elastic IP address with the network interface instead of directly with the instance is that you can move the network interface with its attributes easily from one instance to another.
The initial automatically assigned public IP address will be removed as soon as you restart the instance after adding a network interface with an Elastic IP address to your instance. Do not restart your instance before you are sure you can reach it via the Elastic IP address. The automatically assigned public IP address will also be disabled if you assign an Elastic IP address to the primary Ethernet interface of the instance.
The table below describes the steps required to add an Elastic IP address to a network interface.
Step | Details |
---|---|
Locate the Elastic IPs option on the EC2 dashboard and click on it. | This will list the already created Elastic IP addresses. |
Allocate a new address. | In the overview list, click on Allocate new address if you need to allocate a new address. It is also possible to assign an existing address to an interface. However, each address can only be used for one instance. This will open the address allocation window. |
In the address allocation window, select the Amazon pool (or your own pool of public addresses), and click on Allocate. The new address will be shown in the list. | |
Associate the address with the network interface. | Right-click on the address and select Associate. A window to enter the required options opens. In the window,
|
Detaching a Network Interface from an Instance
You can detach a network interface from your instance in two ways:
- Select your instance in the instance list and use the menu Actions > Networking > Detach Network Interface. Or,
- Select your network interface in the network interface list and use the menu Actions > Detach.
Take care that this step will not make your instance unreachable.
The primary network interface cannot be detached.