make it simple
article thumbnail
Published 2023. 3. 20. 02:03
[AWS] VPC & SUBNET 구축하기 DevOps&Network

VPC(Virtual Private Cloud) 란?

  • VPC는 자체 데이터 센터에서 운영하는 기존 네트워크와 아주 유사한 가상 네트워크입니다. VPC를 생성한 후 서브넷을 추가할 수 있습니다.
 

Virtual Private Cloud(VPC) - Amazon Virtual Private Cloud

Virtual Private Cloud(VPC) Virtual Private Cloud(VPC)는 사용자의 AWS 계정 전용 가상 네트워크입니다. VPC는 AWS 클라우드에서 다른 가상 네트워크와 논리적으로 분리되어 있습니다. Amazon EC2 인스턴스 같은 AWS

docs.aws.amazon.com

SUBNET 이란?

  • 서브넷은 VPC의 IP 주소 범위입니다. 서브넷은 단일 가용 영역에 상주해야 합니다. 서브넷을 추가한 후에는 VPC에 AWS 리소스 배포할 수 있습니다.
    • public subnet: 외부에서 접근이 가능한 네트워크 영역 
    • private subnet: 외부에서 접근이 불가능한 네트워크 영역. NAT 게이트웨이를 사용하여 내부에서 외부로 접근 가능하게 만들어 준다. 안전하게 리소스를 내부에서 관리하기 위해 사용하는 네트워크 영역이다. 예) DB

VPC의 서브넷 - Amazon Virtual Private Cloud

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

 
전체적인 구성도는 대충 이런 느낌이다.VPC라는 가상 네트워크가 있고 그안에 각각의 영역을 가지고있는 서브넷들이 있다. 서브넷 사용 이유는 도메인의 크기를 줄이기 위해서다. 또한 나눌수록 관리가 용이해진다.


실습해보기
 
VPC 생성
 

1. default vpc가 있다. 무시하고 vpc 생성 클릭



2. 이름 입력 후  IPv4 CIDR(IP 할당하는 부분) 에 10.0.0.0/16 입력 (/16 ~ /28 범위의 cidr을 작성해야한다.)

3. 만든 vpc 체크박스 클릭 -> 작업 클릭 -> VPC 설정 편집 클릭  -> DNS 설정 -> DNS 호스트 이름 활성화 클릭 후 저장


public subnet 생성
 

4. public subnet 생성 -> 서브넷 생성 클릭 

5. VPC ID에 위에서 만든 VPC 선택 -> 이름 입력 -> 가용 영역 2a로 선택 -> IPv4 CIDR 블록 10.0.0.0/24로 설정 -> 서브넷 생성

6. 생성한 subnet 클릭 -> 서브넷 설정 편집 클릭

7. 퍼블릭 IPv4 주소 자동 할당 활성화 클릭 후 저장 (해당 설정을 해야 공인 IP로 Public Subnet은 인터넷 게이트웨이와 연결되어 외부에서 접근이 가능하다.)


Private Subnet 생성
 

9. Public Subnet처럼 생성(같은 vpc, 서브넷 이름 설정, 같은 가용 영역) -> 하지만 IPv4 CIDR 블록은 10.0.2.0/23로 설정.

  • NAT(Network Address Transalation, 네트워크 주소 변환) 게이트웨이 설정(private subnet의 인스턴스가 vpc 외부의 서비스를 연결할 수 있지만 외부 서비스는 연결을 못한다.

 
10. 인터넷 게이트웨이 생성 클릭 -> 이름 태그 작성 -> 생성

 

11. 생성한 인터넷 게이트웨이 클릭 -> 작업 클릭 -> VPC에 연결 클릭 -> 만든 vpc 선택 후 연결

  • Routing Table 설정(라우팅 테이블에는 서브넷 또는 게이트웨이의 네트워크 트래픽이 전송되는 위치를 결정하는 라우팅이라는 규칙 세트가 포함되어 있습니다.)

12. VPC가 생성한 라우팅 테이블 VPC이름을 보고 찾으면된다. 이 라우팅 테이블은 로컬로 라우팅하기 때문에 Private 라우팅으로 설정하면된다. (이름은 원래 - 였는데 Private Routing Table로 변경했다.)

13. 퍼블릭 라우팅 세팅하기: 라우팅 테이블 생성 클릭 -> 이름 작성 생성한 VPC 선택 -> 라우팅 테이블 생성 

14. 생성한 퍼블릭 라우팅 체크박스 클릭 -> 작업 -> 라우팅 편집

15. 라우팅 추가 -> 대상 선택 -> 대상 인터넷 게이트웨이 선택 -> 생성한 게이트웨이 선택 ( 퍼블릭에서 접근 가능하게 설정)

16. 다시 라우팅 테이블 리스트 화면 -> 체크 박스 클릭시 밑에 편집화면 노출 -> 서브넷 연결 클릭 

17. Public Subnet 클릭 후 저장

  • NAT GATEWAY 세팅 (Private Subnet 의 인스턴스가 아웃바운드 트래픽을 인터넷으로 전송할 수 있도록 해준다)

18. NAT 게이트웨이 생성 클릭

19. Public Subnet 선택 -> 탄력적 IP 할당 클릭 후 IP 부여 -> NAT 게이트웨이 생성 ( Private Subnet과 연결해주기 위해 미리 Public Subnet에 NAT 게이트웨이 세팅)

20. Private Routing Table 편집 -> 버튼 클릭 하면 밑과 같은 화면 노출 -> 라우팅 탭 선택 -> 라우팅 편집 클릭

21. 라우팅 추가 -> 0.0.0./0  작성 -> 대상 NAT 게이트웨이 선택 -> 만든 NAT 게이트웨이 선택 후 저장

22. 라우팅 테이블 선택 -> 생성한 Private Routing Table 체크박스 클릭 -> 서브넷 연결 탭 선택 -> 서브넷 연결 편집

23. Private Subnet 선택 후 저장


결론

  • 위와 같은 설정으로 Public Subnet에 있는 EC2들은 외부망에서 접근이 가능하고 Private Subnet에 있는 EC2는 외부망에서 접근이 불가하다. 하지만 Private Subnet은 NAT Gateway를 통해 아웃바운드는 가능하다.
  • 후에 EC2를 생성하고 목적에 맞는 Subnet에 지정해서 사용하면된다. 다음편엔 EC2를 적용해보자.

reference

 

[AWS] EC2 구성을 위한 VPC, 서브넷, 라우팅 테이블, 게이트웨이 구성방법

VPC 란 VPC ( Virtual Private Cloud ) 는 AWS 계정 전용 가상 네트워크입니다. VPC 는 AWS 클라우드에서 다른 가상네트워크와 논리적으로 분리되어 있습니다. VPC 의 IP 주소 범위를 구성하여 VPC 를 구성하고,

mozi.tistory.com

 

'DevOps&Network' 카테고리의 다른 글

JWT(JSON WEB TOKEN) 이란?  (1) 2023.04.17
[Docker]Docker Compose란?  (0) 2023.04.02
[AWS] 구축한 Subnet에 EC2 연결  (0) 2023.03.23
profile

make it simple

@keep it simple

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!