회사에서 인프라를 설계하면서 VPC를 아무렇지 않게 생성하고 했지만 각 설정들에 대해 가볍게만 알고 있는 느낌이 들어 한번 다른 사람들도 이해할 수 있게 정리를 해보았다.
VPC란?
Amazon VPC는 Amazon에서 제공하는 Private한 네크워크 망
- Virtual Private Cloud(VPC) — 사용자의 AWS 계정 전용 가상 네트워크입니다.
- 서브넷 — VPC의 IP 주소 범위입니다.
- 라우팅 테이블 — 네트워크 트래픽을 전달할 위치를 결정하는 데 사용되는 라우팅이라는 규칙 집합입니다.
- 인터넷 게이트웨이 — VPC의 리소스와 인터넷 간의 통신을 활성화하기 위해 VPC에 연결하는 게이트웨이입니다.
- NAT 게이트웨이 — 네트워크 주소 변환을 통해 프라이빗 서브넷에서 인터넷 또는 기타 AWS 서비스에 연결하는 게이트웨이입니다.
- 씨큐리티 그룹 — 보안 그룹은 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 하는 규칙 집합입니다..
- VPC 엔드포인트 — 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결을 필요로 하지 않고 PrivateLink 구동 지원 AWS 서비스 및 VPC 엔드포인트 서비스에 VPC를 비공개로 연결할 수 있습니다. VPC의 인스턴스는 서비스의 리소스와 통신하는 데 퍼블릭 IP 주소를 필요로 하지 않습니다. VPC와 기타 서비스 간의 트래픽은 Amazon 네트워크를 벗어나지 않습니다.
[AWS] 가장쉽게 VPC 개념잡기
[IP](2/5) 네트워크 대역과 사설IP,공인IP
VPC 생성해보기
위의 사설망에서 보듯이 우리가 aws측에서 받아온 공인 ip 내부의 사설망 구조를 잡아주는 것이라고 생각하면 된다.
192.168.x.x, 172.16–31.x.x, 10.x.x.x IP 이 세가지 대역들은 사설망 내부의 ip이다.
- 사설 네트워크에 활용하는 IP 대역 범위는 10.0.0.0 ~. 10.255.255.255, 172.16.0.0 ~ 172.31.255.255, 192.168.0.0 ~ 192.168.255.255 이다.
2023년 1월 기준 가장 최신의 vpc 생성창의 모습이다. 네트워크의 모든 구조를 안다면 vpc만 생성하기를 통해 기초부터 만들기가 가능하지만 모든 편의성과 간소화를 위해 vpc 등을 선택하여 만들어 준다.
-
IPv4 CIDR 블록
-
이 부분이 위에서 말한 사설 네트워크이다. 즉, 192.168.x.x, 172.16–31.x.x, 10.x.x.x 이 셋중 하나를 입력해주면 되는데 뒤의 / 는 무엇일까?
-
아래 링크에서 간단하게 이해하고 서브넷 마스크 치트 시트 이 부분만 인지하면 된다. (간단하게 이해하면 숫자가 클수록 해당 네트워크 안에서 사용할 수 있는 ip 주소의 갯수가 줄어든다고 생각하면 된다.)
서브넷 마스크란 무엇인가요?
-
가용 영역(AZ)
- aws 온프레미스 실제 데이터센터 내에 물리적으로 떨어져 있다는 것을 의미 a,b,c,d로 나누어져 있다.
- 이전에 카카오 화재 사건때를 봤을 때 a zone에서 사고가 생겨도 b,c,d 존은 서버를 유지 할 수 있게 설계 되어 있다.
- 이런 것을 고가용성 설계(high availability) 설계라고 한다.
-
NAT 게이트웨이
- 서브넷은 public 서브넷과 private 서브넷으로 나누어져 있다. public의 경우에는 인터넷 게이트웨이(igw)를 통해 외부 인터넷과 통신이 가능하게 만들어 놨지만 private은 외부 인터넷의 접근을 차단하고 내부 망에서만 사용이 가능하게 만든 서브넷이다. (ex. DB)
- 이러한 private 서브넷을 외부 인터넷을 통해 업데이트를 진행하는 등 접근이 필요한 경우를 위해 사용되어지는 것이 NAT 게이트웨이이다.
- 예시 그림
- 이전에 private subnet의 DB에 접속하기 위해 public의 ec2에 ssh 접속을 해서 접근했던 방식이 있었는데 이와 비슷하다고 생각하면 된다.