본문 바로가기
기술

기본 라우팅 테이블과 사용자 지정 라우팅 테이블: 무엇을 써야 할까?

by 스타스토리. 2025. 6. 24.
반응형
핵심 요약: 본 문서는 AWS VPC의 네트워크 트래픽을 제어하는 핵심 요소인 라우팅 테이블의 기본 개념과 작동 방식을 설명한다. 또한, 서브넷과 라우팅 테이블의 연결을 편집하는 실습을 통해 퍼블릭 및 프라이빗 서브넷을 구성하고, 보안을 강화하는 관리 모범 사례를 제시한다.

AWS VPC 환경에서 서브넷을 생성하는 것만으로는 네트워크의 동작을 완벽하게 정의할 수 없다. 트래픽이 서브넷 내부와 외부로 어떻게 흐를지를 결정하는 '교통 관제사' 역할이 필요한데, 이것이 바로 라우팅 테이블(Route Table)이다. 라우팅 테이블의 설정을 통해 특정 서브넷을 인터넷과 연결된 퍼블릭 환경으로 만들거나, 외부와 격리된 프라이빗 환경으로 구성할 수 있다. 본 문서는 라우팅 테이블의 정확한 개념을 이해하고, 이를 편집하여 네트워크 흐름을 제어하는 방법을 상세히 안내한다.

1. VPC 라우팅 테이블 핵심 개념

라우팅 테이블은 VPC 내에 존재하는 가상 라우터가 네트워크 트래픽을 어디로 전달해야 할지 알려주는 규칙들의 집합이다. 모든 서브넷은 반드시 하나의 라우팅 테이블과 연결되어야 하며, 이 테이블의 규칙에 따라 해당 서브넷의 모든 트래픽 흐름이 결정된다.

1.1. 기본 라우팅 테이블 vs. 사용자 지정 라우팅 테이블

  • 기본 라우팅 테이블 (Main Route Table): VPC 생성 시 자동으로 만들어지는 테이블이다. 별도의 라우팅 테이블과 명시적으로 연결되지 않은 모든 서브넷은 이 기본 테이블의 규칙을 자동으로 상속받는다. 삭제는 불가능하며, 일반적으로 외부와 통신이 필요 없는 프라이빗 서브넷용으로 유지하는 것이 모범 사례이다.
  • 사용자 지정 라우팅 테이블 (Custom Route Table): 사용자가 특정 목적(예: 인터넷 통신)을 위해 직접 생성하는 테이블이다. 서브넷별로 다른 라우팅 정책을 적용하고자 할 때 생성하여 사용하며, 이를 통해 네트워크 구성을 명시적이고 체계적으로 관리할 수 있다.

1.2. 라우팅 테이블의 주요 구성 요소

각 라우팅 테이블의 규칙(Route)은 두 가지 핵심 요소로 구성된다.

대상 (Destination) : 트래픽의 목적지 IP 주소 범위 (CIDR 표기법)
타겟 (Target)     : 해당 목적지로 트래픽을 보낼 게이트웨이 또는 네트워크 인터페이스

예를 들어, 대상: 0.0.0.0/0, 타겟: igw-xxxxxxxx 규칙은 VPC 내부 IP 대역이 아닌 모든 트래픽을 인터넷 게이트웨이로 보내라는 의미이다.

2단계: 라우팅 테이블 연결 편집 실습

이전 실습에서 생성한 public subnet C는 현재 기본 라우팅 테이블과 연결되어 있어 인터넷 통신이 불가능한 상태이다. 이 서브넷을 인터넷 통신이 가능한 퍼블릭 라우팅 테이블과 연결하는 과정을 진행한다.

2.1. 서브넷의 라우팅 테이블 연결 편집

  • AWS VPC 콘솔의 '서브넷' 메뉴에서 public subnet C를 선택한다.
  • 상단의 '작업(Actions)' 드롭다운 메뉴를 클릭하고 '라우팅 테이블 연결 편집'을 선택한다.
  • '라우팅 테이블 ID' 목록에서, 인터넷 게이트웨이로의 경로가 설정된 사용자 지정 라우팅 테이블(예: public-rtb)을 선택한다.
  • '저장' 버튼을 클릭하여 변경 사항을 적용한다.

2.2. 변경 사항 확인

변경이 완료된 후, public subnet C의 '세부 정보' 탭에서 '라우팅 테이블' 항목이 public-rtb로 변경되었는지 확인한다. 라우팅 테이블 ID 하이퍼링크를 클릭하여 '라우팅' 탭을 보면, 0.0.0.0/0 트래픽이 인터넷 게이트웨이로 향하는 경로가 적용되었음을 최종적으로 확인할 수 있다. 이로써 public subnet C는 완전한 퍼블릭 서브넷이 되었다.

3. 인터넷 경로(0.0.0.0/0)의 중요성

라우팅 테이블에서 0.0.0.0/0 경로는 '기본 경로(Default Route)'라고 불린다. 이는 라우팅 테이블에 명시된 다른 특정 경로(예: VPC 내부로 향하는 10.0.0.0/16 로컬 경로)에 해당하지 않는 모든 트래픽을 의미한다. 즉, '알 수 없는 모든 외부 IP 주소'를 지칭하는 가장 넓은 범위의 주소이다.

0.0.0.0/0을 대상으로(Destination) 인터넷 게이트웨이(IGW)를 타겟(Target)으로 설정하는 것은, 해당 라우팅 테이블과 연결된 서브넷이 인터넷과 통신할 수 있는 '공개된 출입문'을 열어주는 것과 같다. 이 경로가 없는 라우팅 테이블과 연결된 서브넷은 외부 인터넷과 통신할 수 없는 프라이빗 서브넷으로 유지된다.

📌 라우팅 테이블 관리 모범 사례
VPC의 보안을 강화하는 가장 효과적인 방법은 다음과 같다.
1. 기본 라우팅 테이블은 프라이빗으로 유지: VPC 생성 시 만들어지는 기본 라우팅 테이블에는 인터넷 게이트웨이 경로를 추가하지 않는다. 이 테이블은 외부 통신이 필요 없는 '프라이빗' 서브넷의 기본값으로 사용한다.
2. 사용자 지정 라우팅 테이블 사용: 인터넷 통신이 필요한 '퍼블릭' 서브넷을 위해서는 별도의 사용자 지정 라우팅 테이블을 생성하고, 여기에만 0.0.0.0/0 경로를 추가한다.
3. 명시적 연결: 모든 서브넷을 생성할 때, 의도에 따라 퍼블릭 또는 프라이빗 라우팅 테이블과 명시적으로 연결한다. 이렇게 하면 실수로 서브넷이 외부에 노출되는 것을 방지하고 네트워크 구성을 명확하게 관리할 수 있다.

결론: 완성된 고가용성 아키텍처

라우팅 테이블 연결 편집을 완료함으로써, VPC-Lab은 이제 두 개의 서로 다른 가용 영역(ap-northeast-2a, ap-northeast-2c)에 각각 퍼블릭 서브넷을 보유한 완전한 고가용성 네트워크 구성을 갖추게 되었다. 두 서브넷 모두 인터넷 게이트웨이로 향하는 경로를 공유하므로, 외부로부터의 트래픽을 수신하고 응답할 수 있다.


두 개의 퍼블릭 서브넷이 하나의 퍼블릭 라우팅 테이블과 연결된 구성 예시

이처럼 견고하게 구성된 네트워크 기반 위에서 EC2 인스턴스, 로드 밸런서, 데이터베이스 등의 AWS 리소스를 배포하여 안정적이고 확장 가능한 애플리케이션 환경을 구축할 수 있다. 라우팅 테이블의 정확한 이해와 관리는 클라우드 보안과 운영의 첫걸음이다.

반응형