aws vpc를 만들어보자!
실습내용
1. 사용자 VPC 생성 및 CIDR 10.0.0.0/16 사용
2. (나는 AZ를 하나만 할 거기 때문에 2개가 아니라 1개씩 생성)
Public Subnet 1개, Private Subnet 1개 생성
Public Subnet: 10.0.0.0/24,10.0.1.0/24
Private Subnet: 10.0.10.0/24,10.0.11.0/24

CIDR 블록크기는 10.0.0.0/16으로 설정했다.
/16과/24의 차이 : CIDR 블록의 주소 공간 크기. 서브넷 마스크에 따라 할당할 수 있는 IP 주소의 수가 달라진다.
➡️ 네트워크르 얼마나 세밀하기 분할할 수 있는지가 달라진다./16은 큰 네트워크를 구성할 때 적합,/24는 더 작은 네트워크는 특정 서비스나 애플리케이션에 IP를 제한적으로 할당할 때 적합하다.
/16: 65,536개의 IP 주소를 가질 수 있다.
- 서브넷 마스크: 255.255.0.0 (네트워크:16비트, 호스트:16비트)
/24: 256개의 IP 주소를 가질 수 있다.
- 서브넷 마스크: 255.255.255.0 (네트워크:24비트, 호스트:8비트)
즉,
/16은 더 많은 IP주소를 제공한다.

Management Console에서 서브넷 페이지로 접속하여 "서브넷 생성" 버튼을 클릭해서 서브넷을 생성할 수 있다.

서브넷 생성 페이지에서 서브넷을 생성할 VPC를 선택한다. 이때 위에서 생성한 vpc를 선택해주면 된다.

퍼블릭 서브넷을 만들어준다.
서브넷의 이름, 가용 영역AZ, CIDR을 입력한다. (서브넷 내에도 CIDR을 지정해줘야 한다.)

프라이빗 서브넷을 만들어준다.

서브넷 생성 완료!

✔️ public 서브넷의 경우, 자동 할당 IP설정(공인 IP)이 필요하다. (해당 설정이 없을 경우, EC2 생성 시 사용자 설정이 필요하다.)
방금 만든 public subnet 선택 > 작업 버튼 클릭 > 서브넷 설정 편집 > 자동 할당 IP 설정 > 퍼블릭 IPv4 주소 할당 선택

외부 인터넷 트래픽을 VPC에 연결해주는 역할. 외부에서 접근할 수 있는 경로를 제공한다.
VPC 서브넷의 인스턴스에 대해 인터넷 접속이 가능하기 위해서는 VPC에 Internet Gateway가 연결되어야 하며, 서브넷의 라우팅 테이블과 생성한 Internet Gateway간에 연결이 되어 있도록 해야 한다. 또한 네트워크 ACL 및 시큐리티 그룹 체크도 필요하다.
(*인터넷 게이트웨이가 설정되어 있어야 인스턴스가 외부 접속이 가능하고 외부에서도 SSH등으로 접속이 가능하다.)
VPC에 붙어 있는 라우팅 테이블과 외부 인터넷을 연결해주는 통로
외부인터넷 > (vpc)인터넷 게이트웨이 > 라우팅 테이블 > 퍼블릭 서브넷 > 인스턴스
- 라우팅 테이블에서 인터넷 게이트웨이로 나가는 경로
0.0.0.0/0가 설정되어 있어야 한다.- 일반적으로 퍼블릭 서브넷은 라우팅 테이블에 연결한다.
AWS 관리 콘솔 > VPC > 인터넷 게이트웨이

인터넷 게이트웨이를 생성한다.

인터넷 게이트웨이를 생성 후, 작업 버튼을 눌러 "VPC에 연결"을 선택한다. 그리고 VPC 연결 창에서 아까 만든 vpc(my-vpc-01)를 선택한다.

서브넷 간의 트래픽 흐름을 관리하는 역할. 라우팅 테이블에는 서브넷 또는 게이트웨이의 네트워크 트래픽이 전송되는 위치를 결정하는 라우팅이라는 규칙 세트가 포함되어 있다.

AWS 관리 콘솔 > VPC > 라우팅 테이블 > 라우팅 테이블 생성 버튼
public-rtb, private-rtb이라는 이름으로 두 개의 라우팅 테이블을 생성한다.


라우팅 테이블이 정상적으로 생성되면 다음과 같이 나와야 한다.

이제 각 라우팅 테이블에 서브넷을 연결한다.
라우팅 테이블을 클릭하고 "서브넷 연결" > "서브넷 연결 편집"을 클릭한다.

이때 public-rtb는 public subnet과 연결하고, private-subnet은 private subnet과 연결한다.


각 라우팅 테이블을 클릭한 후 "라우팅" > "라우팅 편집"을 클릭하여 라우팅 규칙을 편집한다.
이때 public-rtb를 선택해야 한다. (private-rtb는 public과 다르게 인터넷 게이트웨이로 라우팅하는 부분이 없기 때문에 Private Subnet으로 구성된 것이다)

"대상"에서 "인터넷 게이트웨이"를 선택하면 위에서 만들었던 VPC에 연결한 인터넷 게이트웨이가 나타나고 클릭하면 된다.
라우팅 테이블 설명 : 목적지가 10.0.0.0/16인 ip는 로컬에서 찾아서 전송하고, 그 이외의 ip는 인터넷 게이트웨이로 전송하라.
➕ (추가) ::/0은 IPv6 트래픽이 인터넷 게이트웨이를 통해 나가도록 설정한 상태이므로 IPv4 트래픽0.0.0.0/0에 대해서도 설정해주어야 한다. 이렇게 설정해야 IPv4 트래픽이 인터넷 게이트웨이를 통해 외부로 나갈 수 있게 되어 로컬PC에서 SSH접속이 가능해진다.


AWS VPC 만들기
AWS - VPC / IGW 생성 및 EC2 연결 (실습)
AWS 클라우드 구축 (2) - VPC 구축(서브넷, 라우팅 테이블, 인터넷 게이트웨이)
라우팅테이블 : [AWS] VPC 구성하기(Private/Public Subnet)