라우팅 테이블 - Amazon Virtual Private Cloud

라우팅 테이블

라우팅 테이블에는 서브넷 또는 게이트웨이의 네트워크 트래픽이 전송되는 위치를 결정하는 데 사용되는 라우팅이라는 규칙 집합이 포함되어 있습니다.

라우팅 테이블 개념

다음은 라우팅 테이블의 주요 개념입니다.

  • 기본 라우팅 테이블 — VPC와 함께 자동으로 제공되는 라우팅 테이블입니다. 다른 라우팅 테이블과 명시적으로 연결되지 않은 모든 서브넷의 라우팅을 제어합니다.

  • 사용자 지정 라우팅 테이블 — VPC에 대해 생성하는 라우팅 테이블입니다.

  • 엣지 연결 - 인바운드 VPC 트래픽을 어플라이언스로 라우팅하는 데 사용하는 라우팅 테이블입니다. 라우팅 테이블을 인터넷 게이트웨이 또는 가상 프라이빗 게이트웨이와 연결하고 어플라이언스의 네트워크 인터페이스를 VPC 트래픽의 대상으로 지정합니다.

  • 라우팅 테이블 연결 — 라우팅 테이블과 서브넷, 인터넷 게이트웨이 또는 가상 프라이빗 게이트웨이 간의 연결입니다.

  • 서브넷 라우팅 테이블 — 서브넷과 연결된 라우팅 테이블입니다.

  • 게이트웨이 라우팅 테이블 — 인터넷 게이트웨이 또는 가상 프라이빗 게이트웨이와 연결된 라우팅 테이블입니다.

  • 로컬 게이트웨이 라우팅 테이블 — Outposts 로컬 게이트웨이와 연결된 라우팅 테이블입니다. 로컬 게이트웨이에 대한 자세한 내용은 AWS Outposts 사용 설명서로컬 게이트웨이를 참조하십시오.

  • 대상 — 트래픽을 이동할 대상 IP 주소의 범위입니다(대상 CIDR). 예를 들어, 172.16.0.0/12 CIDR이 있는 외부 회사 네트워크입니다.

  • 전파 — 라우팅 전파를 사용하면 가상 프라이빗 게이트웨이가 라우팅 테이블에 라우팅을 자동으로 전파할 수 있습니다. 즉, 라우팅 테이블에 VPN 라우팅을 수동으로 입력할 필요가 없습니다. VPN 라우팅 옵션에 대한 자세한 내용은 Site-to-Site VPN 사용 설명서Site-to-Site VPN 라우팅 옵션을 참조하십시오.

  • 대상 — 대상 트래픽을 전송할 때 사용할 게이트웨이, 네트워크 인터페이스 또는 연결입니다(예: 인터넷 게이트웨이).

  • 로컬 라우팅 — VPC 내 통신을 위한 기본 라우팅입니다.

라우팅 옵션의 예는 라우팅 옵션 예 단원을 참조하십시오.

라우팅 테이블 작동 방식

VPC에는 암시적 라우터가 있으며 라우팅 테이블을 사용하여 네트워크 트래픽이 전달되는 위치를 제어합니다. VPC의 각 서브넷을 라우팅 테이블에 연결해야 합니다. 테이블에서는 서브넷에 대한 라우팅을 제어합니다(서브넷 라우팅 테이블). 서브넷을 특정 라우팅 테이블과 명시적으로 연결할 수 있습니다. 그렇지 않으면 서브넷이 기본 라우팅 테이블과 암시적으로 연결됩니다. 서브넷은 한 번에 하나의 라우팅 테이블에만 연결할 수 있지만 여러 서브넷을 동일한 서브넷 라우팅 테이블에 연결할 수 있습니다.

선택적으로 라우팅 테이블을 인터넷 게이트웨이 또는 가상 프라이빗 게이트웨이와 연결할 수 있습니다(게이트웨이 라우팅 테이블). 이렇게 하면 게이트웨이를 통해 VPC로 들어오는 인바운드 트래픽에 대한 라우팅 규칙을 지정할 수 있습니다. 자세한 내용은 게이트웨이 라우팅 테이블 단원을 참조하십시오.

VPC당 생성할 수 있는 라우팅 테이블 수에는 할당량이 있습니다. 라우팅 테이블당 추가할 수 있는 라우팅 수에도 할당량이 있습니다. 자세한 내용은 Amazon VPC 할당량 단원을 참조하십시오.

라우팅

테이블의 각 라우팅은 목적지 및 대상을 지정합니다. 예를 들어 서브넷이 인터넷 게이트웨이를 통해 인터넷에 액세스할 수 있도록 하려면 서브넷 라우팅 테이블에 다음 라우팅을 추가합니다.

대상 대상
0.0.0.0/0 igw-12345678901234567

라우팅의 대상은 모든 IPv4 주소를 나타내는 0.0.0.0/0입니다. 대상은 VPC에 연결된 인터넷 게이트웨이입니다.

IPv4 및 IPv6 CIDR 블록은 별도로 취급됩니다. 예를 들어 대상 CIDR이 0.0.0.0/0인 라우팅에는 모든 IPv6 주소가 자동으로 포함되지 않습니다. 모든 IPv6 주소에 대해 대상 CIDR이 ::/0인 라우팅을 생성해야 합니다.

모든 라우팅 테이블에는 VPC 내부 통신을 위한 로컬 라우팅이 포함되어 있습니다. 이 라우팅은 기본적으로 모든 라우팅 테이블에 추가됩니다. VPC에 하나 이상의 IPv4 CIDR블록이 연결되어 있는 경우, 라우팅 테이블에 각 IPv4 CIDR 블록의 로컬 경로가 포함됩니다. IPv6 CIDR 블록을 VPC와 연결한 경우, 라우팅 테이블에 IPv6 CIDR 블록의 로컬 경로가 포함됩니다. 서브넷 라우팅 테이블이나 기본 라우팅 테이블에서 이러한 라우팅을 수정하거나 삭제할 수 없습니다.

게이트웨이 라우팅 테이블의 라우팅 및 로컬 라우팅에 대한 자세한 내용은 게이트웨이 라우팅 테이블 단원을 참조하십시오.

라우팅 테이블에 라우팅이 여러 개 있는 경우 트래픽과 일치하는 가장 구체적인 라우팅(가장 긴 접두사 일치)을 사용하여 트래픽의 라우팅 방법을 결정합니다.

다음 예시에서 IPv6 CIDR 블록은 VPC와 연결되어 있습니다. 라우팅 테이블에서:

  • VPC(2001:db8:1234:1a00::/56) 내에 남아 있는 IPv6 트래픽은 Local 라우팅에 의해 적용되며 VPC 내에서 라우팅됩니다.

  • IPv4 및 IPv6 트래픽은 별도로 취급됩니다. 따라서 모든 IPv6 트래픽(VPC 내부의 트래픽 제외)은 외부 전용 인터넷 게이트웨이로 라우팅됩니다.

  • 피어링 연결을 가리키는 172.31.0.0/16 IPv4 트래픽에 대한 라우팅이 있습니다.

  • 인터넷 게이트웨이를 가리키는 모든 IPv4 트래픽(0.0.0.0/0)에 대한 라우팅이 있습니다.

  • 송신 전용 인터넷 게이트웨이를 가리키는 모든 IPv6 트래픽(::/0)에 대한 라우팅이 있습니다.

대상 대상
10.0.0.0/16 로컬
2001:db8:1234:1a00::/56 로컬
172.31.0.0/16 pcx-11223344556677889
0.0.0.0/0 igw-12345678901234567
::/0 eigw-aabbccddee1122334

기본 라우팅 테이블

VPC를 만들면 기본 라우팅 테이블이 자동으로 생성됩니다. 기본 라우팅 테이블은 다른 라우팅 테이블과 명시적으로 연결되지 않은 모든 서브넷에 대한 라우팅을 제어합니다. Amazon VPC 콘솔의 [Route Tables] 페이지의 [Main] 열에서 [Yes]를 찾아 VPC에 대한 기본 라우팅 테이블을 볼 수 있습니다.

기본적으로 기본이 아닌 VPC를 만들면 기본 라우팅 테이블에는 로컬 라우팅만 포함됩니다. 콘솔에서 VPC 마법사를 사용하여 NAT 게이트웨이 또는 가상 프라이빗 게이트웨이가 있는 비 기본 VPC를 생성하면 마법사는 해당 게이트웨이의 기본 라우팅 테이블에 라우팅을 자동으로 추가합니다.

기본 라우팅 테이블에서 라우팅을 추가 및 제거하고 수정할 수 있습니다. 로컬 라우팅보다 더 구체적인 라우팅을 생성할 수 없습니다. 기본 라우팅 테이블은 삭제할 수 없지만 기본 라우팅 테이블을 생성한 사용자 지정 서브넷 라우팅 테이블로 바꿀 수 있습니다. 게이트웨이 라우팅 테이블을 기본 라우팅 테이블로 설정할 수 없습니다.

서브넷이 기본 라우팅 테이블에 명시적으로 연결되어 있지 않을 경우에도 서브넷을 기본 라우팅에 명시적으로 연결할 수 있습니다. 기본 라우팅 테이블을 변경하면 이를 수행할 수 있습니다. 기본 라우팅 테이블을 변경하면 추가되는 새로운 서브넷 또는 다른 라우팅 테이블에 명시적으로 연결되지 않은 서브넷의 기본값도 변경됩니다. 자세한 내용은 기본 라우팅 테이블 바꾸기 단원을 참조하십시오.

사용자 지정 라우팅 테이블

기본적으로 사용자 지정 라우팅 테이블은 비어 있으며 필요에 따라 라우팅을 추가합니다. 콘솔에서 VPC 마법사를 사용하여 인터넷 게이트웨이가 있는 VPC를 생성하면 마법사는 사용자 지정 라우팅 테이블을 만들고 인터넷 게이트웨이에 라우팅을 추가합니다. VPC를 보호하는 한 가지 방법은 기본 라우팅 테이블을 원래 기본 상태로 두는 것입니다. 그런 다음 생성한 각 새 서브넷을 생성한 사용자 지정 라우팅 테이블 중 하나에 명시적으로 연결합니다. 이렇게 하면 각 서브넷이 트래픽으로 어떻게 라우팅되는지를 명시적으로 제어할 수 있습니다.

기본 라우팅 테이블에서 라우팅을 추가 및 제거하고 수정할 수 있습니다. 사용자 지정 라우팅 테이블에 연결이 없는 경우에만 삭제할 수 있습니다.

서브넷 라우팅 테이블 연결

VPC에 있는 각 서브넷을 라우팅 테이블과 연결해야 합니다. 서브넷은 사용자 지정 라우팅 테이블과 명시적으로 연결되거나 기본 라우팅 테이블과 암시적 또는 명시적으로 연결될 수 있습니다. 서브넷 및 라우팅 테이블 연결 보기에 대한 자세한 내용은 테이블과 명시적으로 연결되어 있는 서브넷 또는 게이트웨이 확인 단원을 참조하십시오.

Outposts와 연결된 VPC에 있는 서브넷은 로컬 게이트웨이의 추가 대상 유형을 가질 수 있습니다. 이 점이 Outposts가 아닌 서브넷과의 유일한 라우팅 차이점입니다.

다음 중 하나라도 해당되는 경우 서브넷을 라우팅 테이블에 연결할 수 없습니다.

  • 라우팅 테이블에 기본 로컬 라우팅보다 더 구체적인 기존 라우팅이 포함된 경우.

  • 기본 로컬 라우팅의 대상이 대체된 경우.

예제 1: 암시적/명시적 서브넷 연결

다음 다이어그램에서는 인터넷 게이트웨이, 가상 프라이빗 게이트웨이, 퍼블릭 서브넷 및 VPN 전용 서브넷이 있는 VPC의 라우팅을 보여줍니다. 기본 라우팅 테이블에는 가상 프라이빗 게이트웨이에 대한 라우팅이 있습니다. 사용자 지정 라우팅 테이블은 퍼블릭 서브넷과 연결되었습니다. 사용자 지정 라우팅 테이블에는 인터넷 게이트웨이를 통해 인터넷(0.0.0.0/0)에 연결되는 라우팅이 있습니다.


                    기본 라우팅 테이블과 사용자 지정 테이블

이 VPC에 새 서브넷을 생성하면 서브넷이 트래픽을 가상 프라이빗 게이트웨이로 라우팅하는 기본 라우팅 테이블과 명시적으로 자동 연결됩니다. 반대 구성(인터넷 게이트웨이에 대한 라우팅이 있는 기본 라우팅 테이블과 가상 프라이빗 게이트웨이에 대한 라우팅이 있는 사용자 지정 라우팅 테이블)을 설정하면 새 서브넷은 인터넷 게이트웨이에 대한 라우팅을 자동으로 갖게 됩니다.

예제 2: 기본 라우팅 테이블 바꾸기

기본 라우팅 테이블을 변경할 수 있습니다. 트래픽 중단을 방지하려면 먼저 사용자 지정 라우팅 테이블을 사용하여 라우팅 변경을 테스트하는 것이 좋습니다. 테스트 결과에 만족하면 기본 라우팅 테이블을 새로운 사용자 지정 테이블로 바꿉니다.

다음 다이어그램에서는 기본 라우팅 테이블(라우팅 테이블 A)과 암시적으로 연결되는 두 개의 서브넷이 있는 VPC와 어떤 서브넷과도 연결되지 않는 사용자 지정 라우팅 테이블(라우팅 테이블 B)을 보여줍니다.


                    기본 테이블 교체: 시작

서브넷 2와 라우팅 테이블 B 사이에 명시적 연결을 만들 수 있습니다.


                    기본 테이블 교체: 새 테이블

라우팅 테이블 B를 테스트한 후, 이 테이블을 기본 라우팅 테이블로 만들 수 있습니다. 서브넷 2는 여전히 라우팅 테이블 B와 명시적으로 연결되고, 라우팅 테이블 B가 새로운 기본 라우팅 테이블이기 때문에 서브넷 1은 라우팅 테이블 B와 암시적으로 연결됩니다. 라우팅 테이블 A는 더 이상 사용되지 않습니다.


                    기본 테이블 교체: 교체

라우팅 테이블 B에서 서브넷 2의 연결을 끊더라도 서브넷 2와 라우팅 테이블 B 사이에는 여전히 암시적 연결이 존재합니다. 라우팅 테이블 A가 더 이상 필요하지 않으면 삭제할 수 있습니다.


                    기본 테이블 교체: 연결 끊기

게이트웨이 라우팅 테이블

라우팅 테이블을 인터넷 게이트웨이 또는 가상 프라이빗 게이트웨이와 연결할 수 있습니다. 라우팅 테이블이 게이트웨이와 연결된 경우 이를 게이트웨이 라우팅 테이블이라고 합니다. VPC로 들어오는 트래픽의 라우팅 경로를 세밀하게 제어할 수 있는 게이트웨이 라우팅 테이블을 생성할 수 있습니다. 예를 들어 인터넷 게이트웨이를 통해 VPC로 들어오는 트래픽을 VPC의 미들박스 어플라이언스(예: 보안 어플라이언스)로 리디렉션하여 가로챌 수 있습니다.

게이트웨이 라우팅 테이블은 대상이 미들박스 어플라이언스에 연결된 VPC의 local(기본 로컬 라우팅) 또는 탄력적 네트워크 인터페이스(네트워크 인터페이스)인 라우팅을 지원합니다. 대상이 네트워크 인터페이스인 경우 다음 대상이 허용됩니다.

  • VPC의 전체 IPv4 또는 IPv6 CIDR 블록. 이 경우 기본 로컬 라우팅의 대상을 대체합니다.

  • VPC에 있는 서브넷의 전체 IPv4 또는 IPv6 CIDR 블록입니다. 이는 기본 로컬 라우팅보다 더 구체적인 라우팅입니다.

게이트웨이 라우팅 테이블에 있는 로컬 라우팅의 대상을 VPC의 네트워크 인터페이스로 변경하면 나중에 기본 local 대상으로 복원할 수 있습니다. 자세한 내용은 로컬 라우팅의 대상 교체 및 복원 단원을 참조하십시오.

개별 VPC CIDR 블록보다 큰 범위를 포함하여 VPC의 범위를 벗어나는 CIDR 블록에는 라우팅을 추가할 수 없습니다. 다른 유형의 대상을 지정할 수 없습니다.

다음 게이트웨이 라우팅 테이블에서 172.31.0.0/20 CIDR 블록이 있는 서브넷으로 향하는 트래픽은 특정 네트워크 인터페이스로 라우팅됩니다. VPC의 다른 모든 서브넷으로 향하는 트래픽은 로컬 라우팅을 사용합니다.

대상 대상
172.31.0.0/16 로컬
172.31.0.0/20 eni-id

다음 게이트웨이 라우팅 테이블에서 로컬 라우팅의 대상이 네트워크 인터페이스 ID로 대체됩니다. VPC 내의 모든 서브넷으로 향하는 트래픽은 네트워크 인터페이스로 라우팅됩니다.

대상 대상
172.31.0.0/16 eni-id

다음 중 하나라도 해당되는 경우 라우팅 테이블을 게이트웨이와 연결할 수 없습니다.

  • 라우팅 테이블에 네트워크 인터페이스 또는 기본 로컬 라우팅이 아닌 대상이 있는 기존 라우팅이 포함된 경우

  • 라우팅 테이블에 VPC의 범위를 벗어나는 CIDR 블록에 대한 기존 라우팅이 포함된 경우

  • 라우팅 테이블에 대해 라우팅 전파가 활성화된 경우

게이트웨이 라우팅 테이블을 사용하여 VPC 외부의 트래픽(예: 연결된 전송 게이트웨이를 통한 트래픽)을 제어하거나 가로챌 수 없습니다. VPC로 들어오는 트래픽을 가로채서 동일한 VPC에 있는 다른 대상으로만 리디렉션할 수 있습니다.

트래픽이 미들박스 어플라이언스에 도달하도록 하려면 실행 중인 인스턴스에 대상 네트워크 인터페이스가 연결되어야 합니다. 인터넷 게이트웨이를 통해 흐르는 트래픽의 경우, 대상 네트워크 인터페이스에는 퍼블릭 IP 주소도 있어야 합니다.

보안 어플라이언스의 라우팅에 대한 자세한 내용과 예는 VPC에서 미들박스 어플라이언스에 대한 라우팅 단원을 참조하십시오.

라우팅 우선순위

Amazon은 라우팅 테이블에서 LPM(Longest Prefix Match)을 통해 트래픽과 일치하는, 가장 구체적인 라우팅을 사용하여 트래픽의 라우팅 방법을 결정합니다.

IPv4 및 IPv6 주소 또는 CIDR 블록에 대한 라우팅은 서로 독립적입니다. IPv4 트래픽 또는 IPv6 트래픽과 일치하는 가장 구체적인 라우팅을 사용하여 트래픽 라우팅 방법을 결정합니다.

예를 들어 다음 서브넷 라우팅 테이블에는 인터넷 게이트웨이를 가리키는 IPv4 인터넷 트래픽(0.0.0.0/0)에 대한 라우팅과 피어링 연결(pcx-11223344556677889)을 가리키는 172.31.0.0/16 IPv4 트래픽에 대한 라우팅이 있습니다. 172.31.0.0/16 IP 주소 범위로 향하는 서브넷의 모든 트래픽은 피어링 연결을 사용합니다. 이 라우팅은 인터넷 게이트웨이에 대한 라우팅보다 더 구체적이기 때문입니다. VPC(10.0.0.0/16) 내에서 대상으로 전송되는 트래픽은 Local 라우팅이 적용되며 따라서 VPC 내에서 라우팅됩니다. 서브넷으로부터의 다른 모든 트래픽은 인터넷 게이트웨이를 사용합니다.

대상 대상
10.0.0.0/16 로컬
172.31.0.0/16 pcx-11223344556677889
0.0.0.0/0 igw-12345678901234567

가상 프라이빗 게이트웨이를 VPC에 연결하고 서브넷 라우팅 테이블에서 라우팅 전파를 활성화한 경우, Site-to-Site VPN 연결을 나타내는 라우팅은 라우팅 테이블에 전파된 라우팅으로 자동으로 나타납니다. 전파된 라우팅이 정적 라우팅과 겹치고 가장 긴 접두사 일치를 적용할 수 없는 경우 정적 라우팅이 전파된 라우팅보다 우선합니다. 자세한 내용은 AWS Site-to-Site VPN 사용 설명서라우팅 테이블 및 VPN 라우팅 우선 순위를 참조하십시오.

이 예에서 라우팅 테이블에는 인터넷 게이트웨이로의 정적 라우팅(수동으로 추가됨)과 가상 프라이빗 게이트웨이로 전파되는 라우팅이 있습니다. 두 라우팅은 모두 대상 주소가 172.31.0.0/24입니다. 이 경우 대상 주소가 172.31.0.0/24인 모든 트래픽은 인터넷 게이트웨이로 라우팅됩니다. 이 라우팅은 정적 라우팅이므로 전파된 라우팅보다 우선합니다.

대상 대상
10.0.0.0/16 로컬
172.31.0.0/24 vgw-11223344556677889(전파됨)
172.31.0.0/24 igw-12345678901234567(정적)

라우팅 테이블에 다음 중 하나에 대한 정적 라우팅이 포함되어 있는 경우에도 동일한 규칙이 적용됩니다.

  • NAT 게이트웨이

  • 네트워크 인터페이스

  • 인스턴스 ID

  • 게이트웨이 VPC 엔드포인트

  • 전송 게이트웨이

  • VPC 피어링 연결

정적 라우팅과 전파된 라우팅의 대상이 동일한 경우 정적 라우팅이 우선 적용됩니다.