VPC 사용을 위한 기본 네트워크 지식

옹심이·2025년 1월 4일
0
post-thumbnail

주절주절

클라우드 서비스를 사용하다보니 하기 싫어도 네트워크에 대해 공부하게 된다. 오류 나면 구글링 해보고 따라하다가 안되면 그 다음 갈피를 못잡겠다. 그래서 관련 네트워크 지식 공부를 할 수 밖에 없게된다.. 별 내용은 없지만 VPC에 대해 찾아보다가 공부한 기반 지식들을 조금씩 정리한 것들이다

사설망

사설망은 외부(공인 인터넷)에 공개되지 않고 물리적/논리적으로 분리되어 내부적으로만 사용하는 IP주소이다. 회사, 학교 등 조직 내부에서 별도의 사설망을 구축해 독립적인 환경을 구성할 수 있으며 이는 외부 인터넷의 영향으로부터 자유롭기 때문에 안정적이고 빠르며 관리에 용이하다. 하지만 외부와 통신하기 위해서는 NAT로 공인 IP로 변환해야한다.

가상 사설망(VPN)

공용망 위에 암호화된 가상 터널을 만들어 마치 사설망처럼 통신할 수 있게 도와주는 기술이다. 예를 들어 재택 근무 중에도 직원이 사무실에 있는 것처럼 조직 내부의 자원인 파일 서버등을 이용할 수 있다. 즉, VPN은 공용망 위에 사설망을 확장해주는 역할을 한다고 이해하면 쉽다.

간단한 동작 과정

  1. 클라이언트가 요청
  2. 요청을 암호화하기 위한 터널이 만들어지고 터널을 통해 VPN 서버로 안전하게 요청을 전달
  3. VPN 서버에서 복호화 후 VPN 서버의 공용 IP로 요청 서버에 요청을 전달
  4. VPN 서버가 받은 응답을 암호화 후 안전하게 사용자에게 전달

VPC(가상 사설 클라우드)

퍼블릭 클라우드는 여러 사용자가 동일한 물리적 인프라(서버, 네트워크, 스토리지)를 공유하는 형태이다. 따라서 모든 사용자는 동일한 하드웨어 자원을 공유하기 때문에 기본적으로 공용 네트워크와 연결된다.

VPC는 퍼블릭 클라우드 위에서 사용자가 독립적으로 네트워크를 운영할 수 있도록 만들어진 기술이다. 덕분에 퍼블릭 클라우드를 사용하며 자신만의 전용 네트워크를 사용하는 것처럼 설정할 수 있다.

  • IP 주소 범위 설정(CIDR 블록)
  • 서브넷 설정
  • 라우팅 테이블 구성
  • 게이트웨이 사용 여부 설정
  • 보안 그룹
  • 네트워크 ACL(서브넷 수준에서 트래픽 허용 여부 설정)

서브넷

VPC에서는 네트워크를 잘개 쪼개서 서브넷을 만들 수 있다. 이는 더 많은 네트워크 망을 만들기 위함이다. 각각의 서브넷은 가용영역 안에 존재하며 서브넷 안에 RDS, EC2 등의 리소스를 배치할 수 있다.

라우터와 라우팅 테이블

VPC 서브넷은 내부적으로 네트워크 트래픽을 처리하기 위해 라우터와 라우팅 테이블을 활용한다. 라우터는 네트워크 트래픽을 목적지로 전달하기 위한 장치이며, VPC 내부의 라우터는 AWS 제공하는 가상의 라우터이다. 라우터의 역할은 다음과 같다.

  • 서브넷 간 통신 지원 : 같은 VPC 내 서브넷 간의 트래픽은 기본적으로 라우팅 테이블 규칙에 따라 허용된다
  • 외부 네트워크와의 트래픽 전달 : 인터넷 게이트웨이, NAT 게이트웨이 VPN 게이트웨이 등을 통해 외부로 트래픽을 전달한다.

라우팅 테이블은 네트워크 트래픽이 어디로 가야하는지를 정의한 규칙의 집합이다. 각 서브넷은 하나의 라우팅 테이블과 연결되어 있다. 라우팅 테이블은 다음과 같이 구성된다.

목적지대상설명
10.0.0.0/16localVPC 내의 모든 서브넷 간 트래픽을 허용
0.0.0.0/0Internet Gateway공용 서브넷에서 외부 인터넷으로 나가는 트래픽
0.0.0.0/0NAT Gateway사설 서브넷에서 인터넷으로 나가는 트래픽
192.168.1.0/24Virtual Private Gateway온프레미스 네트워크로 가는 트래픽
  • 목적지 : 네트워크 트래픽이 향하는 IP주소 범위(CIDR 블록)
  • 대상 : 트래픽이 전달되어야할 장치(인터넷 게이트웨이, NAT 게이트웨이 등)

서브넷 유형에 따라 라우팅 테이블이 다르다. 공용 서브넷의 경우에는 라우팅 테이블에 인터넷 게이트웨이를 포함시켜야하며, 사설 서브넷은 NAT 게이트웨이를 포함하거나 외부 트래픽을 차단하도록 구성한다.

NAT 게이트웨이

프라이빗 서브넷이 인터넷과 통신을 하기위한 아웃바운드 인스턴스로 인터넷과 단방향으로 통신 가능하다. 그래서 사설 서브넷의 리소스가 외부로 요청을 보낼 수 있지만, 외부에서 직접적으로 해당 리소스에 접근할 수 없다. 이는 소프트웨어 업데이트 요청 등 인터넷에 일방적 요청에 사용된다.

0개의 댓글