ENI( Elastic Network Interface) 데이터링크계층 - Network Interface
。EC2 인스턴스의가상 NIC이자VPC의논리적 구성요소
▶ENI를 통해EC2 인스턴스가네트워크로부터 식별되어액세스가 가능
▶NIC로서IP 주소와Mac 주소를 포함
。AZ단위로 적용 가능하며 다른AZ에서 생성된ENI를 활용할 수 없음.
。ENI생성 시기본값으로AZ의Private Network내부에만 통신가능한Private IP 주소와Private DNS가 생성
▶Elastic IP를 추가 정의하여Public IP 주소와 연동해서 활용
。EC2 인스턴스생성 시 함께Public IP 주소,Private IP 주소,Private DNS를 보유한Primary ENI(Eth0)가 생성
▶EC2 인스턴스삭제 시 해당ENI도 함께 삭제
。단일EC2 인스턴스에 여러ENI를 연동하여Private IP 주소 + Elatic IP또는Public IP 주소를 추가 가능
ENI의장애대응
。ENI는단일 인스턴스에 종속된게 아닌 이동 가능한네트워크 인터페이스
▶ 장애가 발생한EC2 인스턴스의ENI를 다른인스턴스에 적용하여장애 대응이 가능
▶ 다른EC2 인스턴스에 장애가 발생한인스턴스의ENI를 적용하여장애 대응에도 효과적으로 대응할 수 있음.
ENI생성 및인스턴스적용
AWS콘솔 - EC2 - 네트워크 인터페이스진입 후네트워크 인터페이스 생성
。서브넷:ENI를 적용할EC2 인스턴스가 위치한AZ의서브넷을 선택
。프라이빗 IPv4 주소:ENI에 할당할Private IP주소설정
。보안그룹:ENI의보안그룹을 설정
▶ENI생성 시 기본적으로AZ의Private Network내부에만 통신가능한Private IP 주소와Private DNS가 생성
- 생성한
ENI를EC2 인스턴스와 연결
。EC2 인스턴스에 생성된ENI가 연동됨을 관측 가능
▶ 해당 방식으로 여러ENI를 정의함으로써 여러Private IP 주소 + Elatic IP또는Public IP 주소를 추가 가능
Public IPv4 Address:
。EC2 인스턴스의ENI에 할당된 공개IP 주소
▶ 외부에서 해당IP주소를 통해EC2 인스턴스에 접근
。EC2 인스턴스에서버 어플리케이션설치 시ENI에 할당된Public IP Address를 통해 해당서버 어플리케이션에Access가 가능.
。AWS는Public IPv4에 시간당$0.0005의요금 청구
▶EC2 인스턴스임대 시 해당IPv4 주소 요금까지 청구
Private IPv4 Address:
。EC2 인스턴스의ENI에 할당되어EC2 인스턴스의AZ의Private Network내에서만 사용가능한IP Address
▶인스턴스의Private IPv4는Public IPv4와 달리 고정되어 재실행 시에도 변화하지 않음.
Elastic IP
。특정EC2 인스턴스에게 계정에 종속된고정된 Public IPv4 Address를 제공하는 서비스
▶EC2 인스턴스의Private IPv4 Address를 연동하여인스턴스를재시작하더라도 변경되지 않는 계정에 종속된고정된 IP주소를 제공
。리전 단위로 하나의인스턴스에만 적용 가능하며, 계정 당Elastic IP를 약 5개만 사용 가능
▶ 다른리전으로 전환이 불가능
。EC2이외의AWS 서비스(NLB등 )에도 사용가능
。Elastic IP를 보유하기만해도 비용 발생
▶EC2 인스턴스에 연결하지 않아도 요금이 청구되므로 삭제하는게 좋다.
Elastic IP정의 및 설정
。AWS 콘솔 - EC2접속 및EC2 인스턴스프로비저닝후 좌측 컨트롤패널의네트워크 및 보안 - 탄력적 IP에 접근 후탄력적 IP 할당설정
- 생성된
Elastic IP를EC2 인스턴스에 연결
。 이후 해당EC2 인스턴스의ENI의Public IPv4 Address가Elastic IP로 설정됨을 확인가능
▶EC2 인스턴스를 중지 후 재실행하더라도Public IPv4 Address는 해당Elastic IP로 고정.
EC2 인스턴스종료 및Elastic IP삭제
。Elastic IP는 보유하기만해도 비용 발생하므로 삭제.
▶탄력적 IP 주소 연결 해제 - 탄력적 IP 주소 릴리스