← 목록 | ENI · Public IP · EIP 인쇄 대화상자에서 대상 → PDF로 저장 HTML 받기
AWS NETWORK · 01

ENI · Public IP · EIP

EC2는 무엇으로 통신하고, 왜 IP가 바뀌는가
Icon-Resource/Networking-and-Content-Delivery/Res_Amazon-VPC_Elastic-Network-Interface_48 Icon-Resource/Compute/Res_Amazon-EC2_Elastic-IP-Address_48
ENI는 가상 랜카드EC2가 통신에 쓰는 인터페이스. 서브넷에 속하므로 AZ를 벗어나지 못한다.
Public IP는 빌린 주소켤 때 풀에서 임의로 붙고, 정지하면 반납된다. 같은 주소는 돌아오지 않는다.
EIP는 내 주소계정에 할당된 고정 IPv4. 붙였다 뗐다 하며, 인스턴스가 바뀌어도 따라간다.
01

ENI — EC2의 가상 랜카드

EC2는 스스로 통신하지 않는다. ENI(Elastic Network Interface)가 붙어 있고, 주소도 보안 그룹도 전부 그쪽에 달려 있다.

  • 인스턴스를 만들면 기본 ENI(eth0)가 함께 생기고, 함께 삭제된다.
  • 따로 만든 ENI는 남는다 — 떼어서 다른 인스턴스에 붙일 수 있다.
  • MAC 주소가 ENI에 있으므로, MAC에 묶인 라이선스는 ENI를 옮겨 살린다.
02

ENI는 AZ를 벗어나지 못한다

ENI는 서브넷에 속하고, 서브넷은 하나의 AZ 안에 있다. 그래서 ENI도 그 AZ의 것이다.

  • 다른 AZ의 인스턴스에는 붙일 수 없다. 옮기려면 새로 만든다.
  • 이중화는 ENI를 옮기는 게 아니라 AZ마다 하나씩 두는 것.

ENI 하나가 들고 있는 것

기본 Private IPv4
서브넷 범위에서 1개. 지정하거나 맡기거나.
보조 Private IPv4
여러 개. 개수는 인스턴스 타입이 정한다.
Public IPv4
기본 Private IP에 하나. 자동 할당 또는 EIP.
EIP
Private IP 하나당 하나까지 붙일 수 있다.
보안 그룹
하나 이상 — 방화벽은 인스턴스가 아니라 여기에 붙는다.
MAC 주소 · 소스/대상 확인
NAT 인스턴스를 만들면 이 확인을 꺼야 한다.
이 문서의 스토리 20컷 · howtodraw.cloud1 / 4
ENI · Public IP · EIPPublic IP는 어디에서 오는가
03

Public IP는 ENI의 기본 Private IP에 붙는다

인스턴스가 시작될 때 AWS의 공용 풀에서 임의로 하나를 빌려 기본 Private IP에 매핑한다. 고를 수 없고, 빌린 것이라 계정에 남지도 않는다.

자동 할당은 서브넷 설정 — 켜고 끌 수 있다
EIP를 붙이면 자동 할당 주소는 그 자리에서 반납된다
IPv6는 이 이야기와 무관하다 — 처음부터 공인 주소다

세 가지 주소, 한눈에시험 포인트

구분Private IPPublic IP (자동 할당)EIP
어디에 붙나ENI (기본 1개 + 보조)ENI의 기본 Private IP지정한 Private IP
어디까지 닿나VPC 안에서만인터넷인터넷
고를 수 있나서브넷 범위에서 지정 가능풀에서 임의내 계정에 할당된 것 중에서
정지 → 시작그대로바뀐다그대로
재부팅그대로그대로그대로
요금없음IPv4 시간당 과금IPv4 시간당 과금 (놀아도)
이 문서의 스토리 20컷 · howtodraw.cloud2 / 4
ENI · Public IP · EIPIP가 바뀌면 안 될 때
04

정지했다 켜면, 다른 주소가 온다

정지하는 순간 빌린 주소는 풀로 돌아간다. 다시 시작하면 새로 하나를 빌려온다 — 도메인도, 방화벽 화이트리스트도 전부 어긋난다.

  • 정지 중인 인스턴스는 Public IP를 들고 있지 않다.
  • 재부팅은 인스턴스를 놓지 않으므로 주소도 그대로다.
05

EIP — 계정이 들고 있는 고정 주소

풀에서 빌리는 대신 내 계정에 할당받는다. 인스턴스가 죽어도 주소는 내 것이고, 다른 인스턴스의 ENI에 옮겨 붙일 수 있다.

  • 장애 시 EIP를 예비 인스턴스로 옮기는 것이 가장 단순한 페일오버.
  • 보조 Private IP에도 붙는다 — 한 인스턴스가 주소 여러 개를 가진다.

Public IP의 일생

시작풀에서 임의로 하나실행 중그 주소로 통신정지주소 반납다시 시작다른 주소

재부팅은 이 흐름을 타지 않는다 — 주소는 그대로.

외워 둘 숫자

5EIP 기본 쿼터리전당, 계정당
1Private IP당 EIP하나까지
0정지 중 Public IP들고 있지 않다

여기서 틀린다

  • 재부팅과 정지를 같이 보지 말 것reboot은 주소를 유지한다. 바뀌는 건 stop → start뿐이다.
  • EIP를 떼면 원래 주소로 못 돌아간다새 Public IP를 다시 받을 뿐, 쓰던 주소는 이미 남의 것이다.

한도와 요금

  • 놀고 있는 EIP가 더 비싸다어디에도 연결되지 않은 EIP는 시간당 과금. 2024-02부터는 쓰는 IPv4도 과금된다.
  • EIP 기본 쿼터는 리전당 5개더 필요하면 서비스 할당량으로 요청한다.
  • ENI·IP 개수는 인스턴스 타입이 정한다작은 타입은 ENI 2개 × IP 2개 수준. 개수가 필요하면 타입 표를 본다.
이 문서의 스토리 20컷 · howtodraw.cloud3 / 4
ENI · Public IP · EIP고를 때, 그리고 외울 때

이럴 땐 이렇게

주소가 고정이어야 한다EIP. 단, 진짜 필요한 것이 이름이라면 Route 53.
여러 대가 한 주소로 받는다EIP가 아니라 로드밸런서. EIP는 한 인터페이스의 것이다.
인터넷이 필요 없다Public IP를 끄고 VPC 엔드포인트 · NAT 게이트웨이로.
MAC에 묶인 라이선스ENI를 따로 만들어 옮겨 붙인다 — 주소도 보안 그룹도 따라간다.

시험 직전 체크

  • ENI는 서브넷의 것 — 다른 AZ로 못 옮긴다
  • Public IP는 기본 Private IP에 붙는다
  • stop → start 면 새 주소, reboot이면 그대로
  • EIP는 계정의 것 — 인스턴스가 죽어도 남는다
  • EIP는 Private IP 하나당 하나
  • IPv4는 붙어 있어도 시간당 요금이 나간다

용어

ENI Elastic Network Interface — VPC 안의 가상 랜카드
기본 ENI eth0. 인스턴스와 함께 생기고 함께 삭제된다
보조 Private IP ENI 하나가 더 가질 수 있는 사설 주소
자동 할당 Public IP 시작할 때 풀에서 빌리는 공인 주소
EIP Elastic IP — 계정에 할당되는 고정 공인 IPv4
소스/대상 확인 ENI가 자기 앞으로 온 것만 받는 설정. NAT은 꺼야 한다
한 줄 정리

ENI는 EC2의 랜카드이고 AZ를 벗어나지 못한다. Public IP는 켤 때 빌리는 주소라 정지하면 바뀌고, 바뀌면 안 되는 주소는 EIP다.

ENI = 서브넷 = AZstop/start → 새 주소reboot → 그대로고정이 필요하면 EIP
이 문서의 스토리 20컷 · howtodraw.cloud4 / 4