🥞 BE
home

네트워킹의 동작원리

VPC란

VPC(Virtual Private Cloud)를 이용하면 사용자가 정의한 가상 네트워크로 AWS 리소스를 시작할 수 있다.
이 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 매우 유사하다.

VPC의 특징

계정 생성 시 default로 VPC를 만들어 줌
EC2, RDS, S3 등의 서비스 활용 가능
서브넷 구성
보안 설정 (IP block, inbound outbound 설정)
VPC Peering(VPC 간의 연결)
IP 대역 지정 가능
VPC는 하나의 Region에만 속할 수 있음(다른 Region으로 확장 불가능)

VPC의 구성요소

Availability Zone (AZ, 국가별 데이터 센터)
일정 거리 이상 떨어져있음. 1개의 리전은 2개 이상의 AZ로 구성됨.
Subnet(CIDR)
VPC의 하위 단위. 하나의 AZ에서만 생성 가능. 하나의 AZ에는 여러개의 subnet 생성 가능.
CIDR 블록을 통해 Subnet을 구분.
CIDR : 하나의 VPC 내에 있는 여러 IP 주소를 각각의 Subnet으로 분리/분배하는 방법.
Internet Gateway(IGW)
인터넷으로 나가는 통로
Network Access Control List(NACL)/security group
보안 검문소. NACL - Stateless, SG - Stateful
Route Table
트래픽이 어디로 가야 할지 알려주는 테이블. VPC 생성 시 자동으로 만들어줌.
정의된 대역폭 내의 IP는 Local에서 처리가능. 나머지는 모두 IGW로 보냄.
NAT(Network Address Translation) instance/NAT gateway
Private Subnet에서 Public Subnet으로 우회하여 IGW를 활용하는 방법.
Private Subnet → Route Table → Router → Public Subnet → Router → IGW 순서로 돌아감.
NAT Instance는 단일 Instance(EC2). NAT Gateway는 aws에서 제공하는 서비스. NAT Instance는 Public Subnet에 있어야 함.
Bastion host
Private Instance에 접근하기 위한 수단.
Public subnet 내에 위치하는 EC2.
VPC endpoint
Aws의 여러 서비스들과 VPC를 연결시켜주는 중간 매개체. Aws에서 VPC 바깥으로 트래픽이 나가지 않고 aws의 여러 서비스를 사용하게끔 만들어주는 서비스.
Private subnet 같은 경우는 격리된 공간인데, 그 상황에서도 aws의 다양한 서비스들(S3, dynamodb, athena 등) 연결할 수 있도록 지원하는 서비스
Interface Endpoint : Private ip를 만들어 서비스로 연결해줌(SQS, SNS, Kinesis, Sagemaker 등 지원)
Gateway Endpoint : 라우팅 테이블에서 경로의 대상으로 지정하여 사용(S3, Dynamodb 지원)