🏠 AWS에서의 IP 주소
AWS에서의 모든 공용 IPv4 주소는 시간당 0.005달러의 요금이 부과되며, 매 월 750시간은 무료이다.
✅ IP 주소의 종류
- IPv4 - 인터넷 프로토콜 버전 4를 말하며, EC2 인스턴스는 시작 / 종료시마다 새로운 공용 IPv4 주소를 얻게 된다. 사설 IPv4를 사용하는 경우, EC2 인스턴스에 고정된 IP가 할당된다.
- Elastic IP - EC2 인스턴스에 고정된 공용 IPv4주소를 붙일 수 있도록 허용해준다.
- IPv6 - 인터넷 프로토콜 버전 6을 말하며, AWS에서의 모든 IPv6 주소는 공용 주소가 된다.
⚙️ VPC & Subnets Primer
🛜 VPC
VPC는 Virtual Private Cloud의 약어로, 리소스를 배포하기 위한 사설 네트워크이다.
🛜 Subnets
서브넷은 VPC 내부의 네트워크를 분할할 수 있도록 허용한다.
공용 서브넷은 인터넷에서 엑세스 가능한 서브넷이고, 사설 서브넷은 인터넷에서 엑세스가 불가능한 서브넷이다.
인터넷과 서브넷간의 엑세스를 정의하기 위해서는 라우트 테이블을 이용한다.
⚙️ Internet Gateways & NAT Gateways
🚪 Internet Gateways
인터넷 게이트웨이는 VPC 인스턴스가 인터넷과 연결할 수 있도록 도우며,
공용 서브넷은 인터넷 게이트웨이에 라우팅 경로를 가지고 있다.
🚪 NAT Gateways
NAT 게이트웨이와 NAT 인스턴스는 사용자의 사설 서브넷에 위치한 인스턴스가
사설인 상태를 유지하며 인터넷에 엑세스 할 수 있도록 허용한다.
⚙️ Network ACL & Security Groups
🧑🏻🚒 NACL
NACL은 Network ACL의 약어로, 서브넷으로부터의 트래픽을 통제하는 방화벽 역할을 한다.
허용 / 거부 규칙을 가질 수 있으며 서브넷 레벨에서 기능하고, 규칙은 IP 주소만을 포함한다.
🔐 Security Groups
Security Group은 ENI나 EC2 인스턴스로부터의 트래픽을 통제하는 방화벽 역할을 한다.
허용 규칙만을 가지며 인스턴스 레벨에서 기능하고, 규칙은 IP 주소 및 다른 보안 그룹을 포함한다.
⚙️ VPC 관련 기능
🌊 VPC Flow Logs
VPC Flow Logs는 인터페이스를 통과하는 모든 IP 트래픽에 대한 정보들을 포착하며,
연결성 문제를 모니터링하거나 해결하는 것을 돕는다.
또한 ELB, ElastiCache, RDS, Aurora와 같은 AWS 관리형 인터페이스의 네트워크 정보들도 포착한다.
VPC Flow Logs 데이터는 S3, CloudWatch Logs, Kinesis Data Firehose로 이동이 가능하다.
🔗 VPC Peering
VPC Peering이란 두 개의 VPC를 은밀하게 AWS의 네트워크를 사용하여 연결하여
그들이 같은 네트워크에 있는 것처럼 행동하게 하는 것이다.
이 경우 겹치는 CIDR(IP 주소 범위)가 있어서는 안되며, VPC Peering 연결은 전이되는 연결이 아니다.
📌 VPC Endpoints
엔드포인트는 사용자가 공용 www 네트워크를 사용하는 대신
사설 네트워크를 사용해 AWS 서비스에 연결할 수 있도록 허용하여,
사용자가 AWS 서비스에 접근하는 데 있어 낮은 지연과 강화된 보안을 제공한다.
VPC 엔드포인트 게이트웨이는 S3과 DynamoDB 전용이고, 나머지는 VPC 엔드포인트 인터페이스를 사용한다.
🔗 AWS PrivateLink
PrivateLink는 수천개의 VPC에 서비스를 노출하기 위한 가장 안전하고 확장가능한 방법이다.
VPC peering, 인터넷 게이트웨이, NAT, 라우팅 테이블 등의 어떤 것도 요구하지 않으며,
네트워크 부하 분산기(서비스 VPC)와 ENI(소비자 VPC)만을 요구한다.
⚙️ Site to Site VPN & Direct Connect
🔒 Site to Site VPN
Site to Site VPN은 AWS에 on-premises VPN을 연결하기 위한 방법으로,
연결은 자동적으로 암호화되어 공용 인터넷을 통해 전달된다.
🔗 Direct Connect (DX)
Direct Connect는 AWS와 on-premises 사이의 물리적 연결을 설정하는 방법으로,
안전하며 빠른 비공개 연결이 이루어져 사설 네트워크를 통해 전달된다.
다만, 설정되는데 최소 한 달이 걸린다.
🔒 AWS Client VPN
Client VPN은 AWS나 on-premises에 있는 사설 네트워크에 OpenVPN을 이용해 컴퓨터를 연결하는 것이다.
또한 사설 IP를 통해 EC2 인스턴스에 연결할 수 있도록 허용해준다.
🚪 Transit Gateway
전이적 Peering을 하기 위해선 수천개의 VPC와 on-premises 사이에 hub & spoke 연결을 할 수 있어야 한다.
Transit Gateway는 이 기능을 제공하는 하나의 단일 게이트웨이로,
직접 연결형 게이트웨이 및 VPN 연결과 작동한다.