민프
[AWS] VPC, Subnet를 설정하기 전에 사전지식 (Private IP, NAT, CIDR) 본문
1. 사설 IP (Private IP)
- 한정된 IP주소를 최대한 활용하기 위해 IP주소를 분할하고자 만든 개념
- IPv4기준으로 최대 IP갯수는 43억개인데, 요즘 인터넷을 사용하는 인구 대비 턱없이 부족하다.
따라서 '사설망'을 구축한다.
- IPv4기준으로 최대 IP갯수는 43억개인데, 요즘 인터넷을 사용하는 인구 대비 턱없이 부족하다.
- 사설망
- 사설망 내부에는 외부 인터넷 망으로 통신이 불가능한 사설 IP로 구성
- 외부로 통신할 때는 통신 가능한 공인 IP로 나누어 사용
- 보통 하나의 망에는 사설 IP를 부여받은 기기들과 NAT기능을 갖춘 Gateway로 구성
- 참고로 IPv6 최대 IP의 개수는 V4의 48억개보다 많은 2^128개 이다. (2^96)배 더 많다.

2. NAT(Network Address Translation)
- 사설 IP가 공용 IP가 통신할 수 있도록 주소를 변환해 주는 방법
- 3가지 종류
- Dynamic NAT : 1개의 사설 IP를 가용 가능한 공인 IP로 연결
- 공인 IP 그룹(NAT Pool)에서 현재 사용 가능한 IP를 가져와서 연결
- Static NAT : 하나의 사설 IP를 고정된 하나의 공인 IP로 연결
- AWS Internet Gateway가 사용하는 방식
- PAT(Port Address Translation) : 많은 사설 IP를 하나의 공인 IP로 연결
- NAT Gateway/NAT Instance가 사용하는 방식
- Dynamic NAT : 1개의 사설 IP를 가용 가능한 공인 IP로 연결



PAT Gateway(NAT)의 동작과정을 보면
1. 192.168.0.5가 61.123.44.1에 통신을 하고 싶다.
2. 중간에 있는 Gateway가 트래픽을 받아서 처리를 한다.
- 192.168.0.5에서 PORT 5000번으로 DestIP로 가고싶구나
- 그럼 공인 IP를 써서 대신 보내줘야지
- 대신 보내줄 떄 5000번 포트가 아닌 SRC PORT로 보내준다.
3. DestIP에서 SRC PORT가 담긴 걸 받고 응답해줄 때
SRC PORT과 매칭이 되는 PORT, Private IP로 전달해준다.,
3. CIDR(Classless Inter Domain Routing)
- Classless Inter Domain Routing
- IP는 주소의 영역을 여러 네트워크 영역으로 나누기 위해 IP를 묶는 방식
- 여러 개의 사설망을 구축하기 위해 망을 나누는 방법
- CIDR Block/CIDR Notation
- CIDR Block : IP주소의 집합
- CIDR Notation : CIDR Block을 표시하는 방법
- 네트워크 주소와 호스트 주소로 구성
- 각 호스트 주소 숫자만큼의 IP를 가진 네트워크 망 형성 가능
- A.B.C.D/E 형식
- 예: 10.0.1.0/24, 172.16.0.0/12
- A,B,C,D : 네트워크 주소 + 호스트 주소 표시,
- E: 0~32:네트워크 주소가 몇 bit인지 표시



4. Subnet
- 네트워크 안의 네트워크
- 큰 네트워크를 잘게 쪼갠 단위
- 일정 IP주소의 범위 보유
- 큰 네트워크에 부여된 IP범위를 조금씩 잘라 작은 단위로 나눈 후 각 서브넷에 할당

참고링크