ENI
elastic network interface. 가상의 네트워크 카드라고 생각하면 된다.
ENI Attribute
- primary 프라이빗 IPv4, 하나 이상의 secondary IPv4
- 프라이빗 아이피당 하나의 Elastic IP (IPv4) 할당 가능
- 하나의 퍼블릭 IPv4
- 하나 이상의 security groups (하나의 EC2 에 여러 ENI 에 따른 해당 security group일 수 있다)
- MAC 주소
- ENI를 독립적으로 만들고 EC2에 붙일 수 있다. (failover 를 위해)
- AZ 에 종속된다
예)
EC2 a
Eth0 - primary ENI
192.168.0.xx
Eth1 - secondary ENI
192.168.0.yy
EC2 b
Eth0 - primary ENI
Eth1 - 위 EC2 a 의 Eth1 이 옮겨올 수 있다 (secondary 만 가능)
참고로, 이 방식이 많은 AWS Managed Service 들이 마치 자신의 VPC 에 들어와 있는 것처럼 동작하는 기술적인 방식이다.
primary 는 AWS 쪽으로, secondary 는 자신의 VPC 에 포함 되어 있는것.
ENI 유스케이스
Dual Home 인스턴스
일반적으로 EC2 Instance 는 하나의 Subnet 에 종속되어야 한다고 생각하기 쉽다.
그러나 두 개의 ENI 를 통해 Public Subnet 과 Priviate Subnet 에 걸쳐서 쓸 수 있다.
예를들면 80 Port 를 통해 public 으로 접근 가능하게 하고 22 Port 를 통해 Private 작업을 할 수 있다.
즉, 두 개의 ENI 를 통해 각각의 subnet 과 이에 설정된 라우트 테이블을 통해 각각의 보안 접근을 통제할 수 있는 아이디어이다.
고가용성 제공 - failover
원래 연결되어있던 EC2 가 다운되었을 경우, 연결된 ENI attribute 들은 그대로 retain(유지한 채로)되고 다른 EC2 로 failover 하는 방법을 제공한다.
Firewall
VPC 에는 두 개의 방화벽이 있다.
- Security group
- NACL (network access control list)
Inbond traffic 은 우선 NACL 을 거쳐 -> Security Group을 거쳐 -> EC2 Instance 에 도달한다. (outbound 는 역순)
Security Group
- Instance level (ENI) 트래픽이 EC2 에 어떻게 들어가고 나가는지에 대한 컨트롤을 한다.
- statefulness - inbound 80 만 세팅하거나 outbound 80 만 세팅해도 됨. 허용만 존재하고 모든 룰을 먼저 평가함
- 그러나 설정이 없다면 모든 인바운드는 기본적으로 막혀있다. 아웃바운드는 전체 허용되어 있는걸로 기본 세팅되어있다.
- source 에 security group을 지정할 수 있다.
- 멀티 instance 에 붙일 수 있다.
- Region 과 VPC 조합에 걸려있다.
- EC2 바깥에서 별개로 동작하는 구조임. 타임아웃으로 접근이 안되는 경우면 security group 문제, connection refused 면 application 문제(혹은 아직 running 상태가 아님)이다.
NACL
- subnet level
- stateless - 설정 안한건 동작 안함. 허용, 거부 룰이 있다. 기본으로 다 허용세팅. 위로부터 필요할때까지 순서대로 룰 확인
- 주로 outbound 는 80이 아니고 ephemeral port 임시포트로 나간다. 그러므로 그렇게 세팅해줘야 함 (32768~65535)
- 서브넷 레벨에서 특정 아이피 막는데 효과적
'IT > Backend , 네트워크' 카테고리의 다른 글
AI 시대, 백엔드는 어떻게 바뀌고 있는가? (1) | 2025.06.15 |
---|---|
AI 기반 네트워크 최적화 (0) | 2025.05.21 |
[aws] networking #2 (0) | 2023.03.31 |
[aws] networking #1 (0) | 2023.03.25 |
[GCP] firewall 설정을 해도 인스턴스에 반영이 되지 않는 경우 (0) | 2021.10.02 |