# 介紹 Elastic Network Interfaces(ENIs)一種虛擬網路介面(**虛擬網卡**),用於連接和管理Amazon EC2實例與VPC(Virtual Private Cloud)之間的網路流量。ENI可以看作是一個虛擬的網路卡,它提供了以下功能: * 主要的私有IPv4地址,可以有一個或多個次要的IPv4地址 * 一個彈性IP(IPv4)對應於每個私有IPv4地址 * 一個公有IPv4地址 * 一個或多個安全組 * 一個MAC地址 * 你可以獨立創建ENI,並在需要時將其附加到EC2實例上(移動它們),以實現故障轉移。 * ENI綁定到特定的可用區(AZ),表示該ENI只能在該可用區內使用。 透過ENI,EC2實例可以連接到VPC中的不同子網路,同時具有可配置的網路設置和彈性IP地址,從而實現更靈活和可靠的網路連接。 # 運用 ![](https://hackmd.io/_uploads/rk63buY_3.png) 在AWS的架構中可以分為兩個面向: 1. network:就是網路世界 2. compute:就是運算資源,EC2就是運算的主機 在網路世界中security group是辨認ENI ENI可以是做一個虛擬網卡能插到EC2上面 因此若是其中一個EC2壞了 把網卡拔起來在插到另一台主機上 對於網路世界是沒有任何差別的 # 實作 在這裡要實作當EC2套用了ENI後會發生什麼事 以及它可以快速套用在不同EC2的優勢 ## 1.創建兩個DEMO用的EC2 回到instance 分頁點擊創建 ![](https://hackmd.io/_uploads/B1xrU_Fu2.png) 隨意取個名字,並在summary的地方修改數量成2個 <br> ![](https://hackmd.io/_uploads/HJ4_IOY_3.png) 確認type為t2.micro 隨意選擇一個key <br> ![](https://hackmd.io/_uploads/rkC68OKO2.png) 要選擇security group 因為不想再創一個新的 因此選擇先前創過的 <br> 按下創建就可以等待兩個EC2 instance 建立好 ## 2.創建ENI ### 觀察network ![](https://hackmd.io/_uploads/r1lLD_Yuh.png) 點擊其中一個instance 觀察它的Networking 分頁中的 Network Interface 可以看到有一個自動創建的defalut ENI 有公開與私有ip <br> 兩個instance 有不同的ip ### 觀察ENI ![](https://hackmd.io/_uploads/Bk5mOuYOh.png) 下拉左側的分頁選單至Network & Security中的Network interfaces ![](https://hackmd.io/_uploads/Syy6u_tO3.png) 可以看到自動創建的ENI 在這裡要記下AZ的位置(ap-northeast-3a) 在創建ENI會用到 ### 創建ENI ![](https://hackmd.io/_uploads/H18mKOKu3.png) 幫你的ENI取名 並選擇AZ(一定要選擇跟前面EC2一樣的) ![](https://hackmd.io/_uploads/H1IDF_Fu2.png) 套用SC 就可以創建了 ### 創建成功 ![](https://hackmd.io/_uploads/HkUJqdKdh.png) 可以回到列表看剛創建的ENI 可以看到取的名字以及Available的狀態 ## 3.套用ENI ![](https://hackmd.io/_uploads/Sy_DcuKO3.png) 點擊上放的ACTION 選擇ATTACH ![](https://hackmd.io/_uploads/Hyej9Ot_3.png) 選擇要套用的EC2 instance ![](https://hackmd.io/_uploads/SJwa5_Kun.png) 套用成功就會顯示狀態為in-use ![](https://hackmd.io/_uploads/H1_ziOFuh.png) 回到instance列表 點選剛套用的EC2 查看他的Networking 分頁中的 Network Interface 從原本default的一個 變成兩個了 ## 4.撤換ENI 若想換掉ENI 只需要回到Network & Security中的Network interfaces ![](https://hackmd.io/_uploads/H10aidYun.png) 點擊Detach 按下確認 重新整理 ![](https://hackmd.io/_uploads/SkqzhuY_h.png) 就可以看到ENI就會釋出了 想要在插在別台EC2上就重複套用工作就可以