경로 개요

Google Cloud Platform(GCP) 경로란 네트워크 트래픽이 VM 인스턴스에서 다른 대상 위치로 이동하는 경로를 나타냅니다. 이 대상은 VPC 네트워크의 내부에 있거나(예: 다른 VM 내) 외부에 있을 수 있습니다.

모든 경로는 대상 위치와 다음 홉으로 구성됩니다. 대상 IP가 대상 범위 내에 있는 트래픽은 전달을 위해 다음 홉으로 보내집니다. 이 페이지에서는 GCP의 경로 작동 방식에 대해 간략히 설명합니다.

GCP의 라우팅

모든 VPC 네트워크는 확장 가능한 분산형 가상 라우팅 메커니즘을 사용합니다. 일부 경로를 선택적으로 적용할 수 있기는 하지만 VPC 네트워크의 라우팅 테이블은 VPC 네트워크 수준에서 정의됩니다.

각 VM 인스턴스에는 네트워크의 라우팅 테이블의 모든 적용 가능한 경로에 대한 정보를 유지하는 컨트롤러가 있습니다. VM에서 나가는 각 패킷은 라우팅 순서에 따라 적용 가능한 경로의 적절한 다음 홉으로 전달됩니다. 경로를 추가하거나 삭제하면 변경사항이 최종 일관성이 있는 설계를 사용하여 VM 컨트롤러에 전파됩니다.

경로 유형

GCP에는 두 가지 카테고리로 네 가지 유형의 경로가 있습니다. 시스템 생성 경로는 사용자가 네트워크를 만들거나, 서브넷을 추가하거나, 서브넷의 보조 IP 범위를 수정할 때 자동으로 생성됩니다. 커스텀 경로는 사용자가 직접, 또는 Cloud Router를 사용하여 만들고 유지관리하는 경로입니다. 다음 표에는 다양한 경로 유형이 요약되어 있습니다.

유형 카테고리 대상 위치 다음 홉 삭제 가능 여부 적용 대상
기본 경로 시스템 생성 0.0.0.0/0 default-internet-gateway 네트워크의 모든 인스턴스
서브넷 경로 시스템 생성 기본 및 보조 서브넷 IP 범위
패킷을 서브넷의 VM에 전달하는 VPC 네트워크 서브넷이 삭제된 경우나 사용자가 서브넷의 보조 IP 범위를 변경하는 경우에만 네트워크의 모든 인스턴스
정적 경로 커스텀 • 서브넷 IP 범위와 부분적으로 또는 정확히 겹치지 않는 IP 범위
• 서브넷 IP 범위보다 더 넓은 IP 범위
다음 중 하나:
• 이름으로 참조된 인스턴스
• IP 주소로 참조된 인스턴스
• Cloud VPN 터널
네트워크의 모든 인스턴스(단, 네트워크 태그를 사용하여 특정 인스턴스로 제한되지 않은 경우)
동적 경로 커스텀 • 서브넷 IP 범위와 부분적으로 또는 정확히 겹치지 않는 IP 범위
• 서브넷 IP 범위보다 더 넓은 IP 범위
Cloud Router BGP 피어의 IP 주소 Cloud Router가 더 이상 BGP 피어에서 경로를 수신하지 않는 경우 Cloud Router에서만 가능 • VPC 네트워크가 리전별 동적 라우팅 모드인 경우 - Cloud Router와 동일한 리전에 있는 인스턴스
• VPC 네트워크가 전역 동적 라우팅 모드인 경우 - 모든 인스턴스

기본 경로

VPC 네트워크를 만들면 GCP 시스템에서 기본 경로가 자동으로 생성됩니다. 이 경로는 다음과 같은 두 가지 용도로 사용됩니다.

  • 인터넷으로 가는 경로를 포함하여 VPC 네트워크에서 나가는 경로를 정의합니다. 인터넷에 액세스해야 하는 인스턴스는 이 경로를 사용할 뿐만 아니라 추가 요구사항도 충족해야 합니다.

  • 비공개 Google 액세스의 표준 경로를 제공합니다.

시스템 생성 기본 경로의 우선순위는 1000입니다. 이 경로의 대상 위치(0.0.0.0/0)는 가장 광범위하기 때문에 GCP에서는 대상 위치가 보다 구체적인 경로가 패킷에 적용되지 않는 경우에 한해서만 이 경로가 사용됩니다. 구체적인 대상 위치와 경로 우선순위를 사용하여 경로를 선택하는 방법에 대한 자세한 내용은 라우팅 순서를 참조하세요.

네트워크를 인터넷에서 완전히 분리하려는 경우나 기본 경로를 커스텀 경로로 바꿔야 하는 경우 기본 경로를 삭제할 수 있습니다.

  • '인터넷 트래픽'을 다른 다음 홉으로 라우팅하려는 경우 기본 경로를 커스텀 정적 또는 동적 경로로 바꿀 수 있습니다. 예를 들어 기본 경로를 다음 홉이 Cloud VPN 터널이거나 다른 인스턴스(예: 프록시 서버)인 커스텀 정적 경로로 바꿀 수 있습니다.

  • 기본 경로를 삭제하기만 하고 바꾸지는 않으면 다른 경로에 포함되지 않은 IP 범위를 대상으로 전송되는 패킷이 삭제됩니다.

서브넷 경로

서브넷 경로는 VPC 네트워크의 각 서브넷으로 가는 경로를 정의하는 시스템 생성 경로입니다.

각 서브넷에는 대상 위치가 서브넷의 기본 IP 범위와 일치하는 서브넷 경로가 하나 이상 있습니다. 서브넷에 보조 IP 범위가 있는 경우 GCP는 각 보조 범위에 대해 해당하는 대상 위치를 사용하여 서브넷 경로를 만듭니다. 서브넷 IP 범위에 대한 자세한 내용은 네트워크 및 서브넷을 참조하세요.

다른 경로의 대상 위치는 서브넷 경로의 대상 위치와 일치하거나 그보다 구체적일 수 없습니다. 서브넷 경로의 대상 범위를 포함하는 더 광범위한 대상 범위를 사용하여 커스텀 경로를 만들 수 있습니다. IP 범위가 겹치는 경우 GCP에서는 대상 위치가 구체적인지 여부를 라우팅 순서의 첫 번째 기준으로 삼기 때문에 패킷의 대상 위치가 서브넷 경로의 대상 범위에 포함되었다면 기본적으로 적용되는 다음 홉은 항상 서브넷 경로가 됩니다. 이는 다른 경로의 대상 위치에 서브넷 경로의 대상 위치가 '포함'되고 해당 경로의 우선순위가 더 높은 경우에도 마찬가지입니다.

서브넷 경로가 생성되고 삭제되는 방식은 다음과 같습니다.

  • 서브넷이 생성되면 서브넷의 기본 IP 범위에 해당하는 서브넷 경로도 생성됩니다.

    • 서브넷에 보조 IP 범위를 추가하면 이 보조 범위에 해당하는 서브넷 경로가 생성됩니다.
  • 자동 모드 VPC 네트워크에서는 자동으로 생성된 각 서브넷의 기본 IP 범위에 해당하는 서브넷 경로가 생성됩니다. 자동 모드 네트워크를 커스텀 모드로 변환하는 경우에만 이러한 서브넷을 삭제할 수 있습니다. 자세한 내용은 VPC 네트워크의 유형을 참조하세요.

  • 서브넷 자체를 수정하거나 삭제하지 않는 한 서브넷 경로를 삭제할 수 없습니다.

    • 서브넷에서 보조 범위를 삭제하면 해당 보조 범위의 서브넷 경로가 자동으로 삭제됩니다.

    • 서브넷을 삭제하면 기본 범위와 보조 범위의 모든 서브넷 경로가 자동으로 삭제됩니다. 다른 방법으로는 서브넷의 기본 범위에 대한 서브넷 경로를 삭제할 수 없습니다.

  • VPC 네트워크 피어링을 사용하여 네트워크끼리 연결하면 네트워크 간에 서로 서브넷 경로를 가져오게 됩니다. 따라서 기본 및 보조 서브넷 IP 범위는 모두 고유해야 합니다.

    • 피어링된 네트워크에 포함된 서브넷의 서브넷 경로를 삭제하려면 피어링 관계를 해제해야 합니다. 피어링 관계를 해제하면 다른 네트워크에서 가져온 모든 서브넷 경로가 자동으로 삭제됩니다.

방화벽 규칙에 따라 인스턴스 간 통신이 차단될 수도 있습니다. 인스턴스 간 통신에 대한 자세한 내용은 네트워크 내의 통신을 참조하세요.

커스텀 경로

커스텀 경로는 사용자가 수동으로 만든 정적 경로이거나 하나 이상의 Cloud Router에서 자동으로 유지관리되는 동적 경로입니다.

커스텀 경로의 대상 위치는 네트워크의 어떤 서브넷 경로와도 일치하거나 그보다 구체적일 수 없습니다.

자동 모드 VPC 네트워크를 사용하는 경우 10.128.0.0/9 CIDR 블록에 속하는 대상 위치를 사용하면 안 됩니다. 해당 블록은 서브넷 경로의 현재 및 미래 주소 공간을 정의하기 때문입니다. 자세한 내용은 자동 모드 IP 범위를 참조하세요. 자동 모드 VPC 네트워크에서 대상 위치가 10.128.0.0/9 범위에 속하는 정적 경로는 언제든지 사용 중지될 수 있습니다. 새 GCP 리전을 사용할 수 있게 되어 새 서브넷과 함께 서브넷 경로가 자동으로 생성되면 이 문제가 발생할 수 있습니다. 자세한 내용은 자동 모드 네트워크의 고려 사항을 참조하세요.

정적 경로

정적 경로는 정적 경로의 다음 홉 중 어느 것이든 사용할 수 있습니다. 정적 경로는 다음 두 가지 방법 중 하나로 만듭니다.

  • 수동으로 정적 경로를 생성할 수 있습니다.

  • GCP Console을 사용하여 정책 기반 라우팅을 사용하는 Cloud VPN 터널이나 경로 기반 VPN인 Cloud VPN 터널을 만들면 원격 트래픽 선택기의 정적 경로가 자동으로 생성됩니다. 자세한 내용은 네트워크 및 터널 라우팅에 대한 Cloud VPN 문서를 참조하세요.

자세한 내용은 정적 경로 매개변수를 참조하세요.

동적 경로

동적 경로는 하나 이상의 Cloud Router에서 관리됩니다. 이 경로의 대상 위치는 항상 VPC 네트워크 외부의 IP 범위를 나타내며 다음 홉은 항상 BGP 피어 주소입니다. Cloud Router는 다음 항목의 동적 경로를 관리할 수 있습니다.

적용 여부 및 순서

적용 가능한 경로

인스턴스에 적용되는 경로는 다음 규칙을 따릅니다.

  • 시스템 생성 경로는 VPC 네트워크의 모든 인스턴스에 적용됩니다. 서브넷 경로가 적용되는 인스턴스의 범위는 변경할 수 없지만 기본 경로를 바꿀 수는 있습니다.

  • 커스텀 정적 경로는 경로의 태그 속성에 따라 모든 인스턴스나 특정 인스턴스에 적용될 수 있습니다. 태그 속성이 있는 정적 경로는 해당하는 네트워크 태그가 있는 인스턴스에 적용될 수 있습니다. 태그 속성이 지정되지 않은 정적 경로는 네트워크의 모든 인스턴스에 적용됩니다.

  • 동적 경로는 VPC 네트워크의 동적 라우팅 모드에 따라 인스턴스에 적용됩니다. VPC 네트워크가 리전별 동적 라우팅 모드이면 모든 Cloud Router는 해당 리전 내에서 학습한 경로를 적용합니다. 네트워크가 전역 동적 라우팅 모드이면 모든 Cloud Router는 전체 네트워크에서 학습한 경로를 적용합니다.

라우팅 순서

GCP는 다음 절차에 따라 적용 가능한 경로 풀에서 패킷의 다음 홉을 선택합니다.

  1. GCP에서는 서브넷 경로의 대상 위치가 해당 서브넷의 IP 주소 범위와 일치하면서 가장 구체적이어야 하므로 서브넷 경로가 가장 먼저 고려됩니다. 패킷의 대상 위치가 서브넷 경로의 대상 범위에 속하면 해당 패킷은 GCP 서브넷에 전달됩니다. 서브넷 경로를 다른 유형의 경로로 재정의할 수는 없습니다.

    • GCP에서는 정적 경로의 대상 위치가 서브넷 경로와 일치하거나 그보다 구체적일 수 없습니다.

    • 동적 경로의 경우 모든 Cloud Router는 대상 위치가 서브넷 경로와 일치하거나 그보다 구체적인 모든 경로를 무시합니다.

  2. 패킷의 대상 위치가 서브넷 경로의 대상 범위에 속하지 않으면 GCP는 대상 위치가 가장 구체적인 다른 경로를 찾습니다.

    • 예를 들어 VM에서 나가는 패킷의 대상 위치가 10.240.1.4이고 대상 위치가 각각 10.240.1.0/2410.240.0.0/16인 두 개의 경로가 있다고 가정하겠습니다. 10.240.1.4에 대해 가장 구체적인 대상 위치는 10.240.1.0/24이므로 대상 위치가 10.240.1.0/24인 경로가 해당 패킷의 다음 홉을 정의합니다.
  3. 가장 구체적인 대상 위치가 동일한 경로가 둘 이상 있으면 GCP는 경로의 우선순위를 고려합니다.

    • 우선순위가 가장 높은 단일 경로를 사용할 수 있으면 패킷이 해당 경로의 다음 홉으로 전송됩니다.

    • 사용 가능하면서 우선순위가 동일하게 가장 높은 경로가 둘 이상 있으면 어피니티에 5-튜플 해시를 사용하여 ECMP 라우팅 설계를 구현함으로써 여러 개의 다음 홉 간에 트래픽이 분산됩니다. 이 해시는 프로토콜, 소스 및 대상 IP 주소, 전송되는 패킷의 소스 및 대상 포트를 사용하여 계산되며, 사용 가능한 경로의 수가 변경되면 다시 계산됩니다.

  4. 적용 가능한 대상 위치를 찾지 못하면 GCP는 해당 패킷을 삭제하고, ICMP 대상 또는 네트워크에 연결할 수 없다는 오류로 응답합니다.

정적 경로 매개변수

각 정적 경로는 다음 구성요소로 이루어집니다.

  • 이름설명: 이 필드로 경로를 식별합니다. 이름은 필수사항이지만 설명은 선택사항입니다. 프로젝트의 모든 경로에는 고유한 이름이 있어야 합니다.

  • 네트워크: 각 경로는 정확히 하나의 VPC 네트워크와 연결되어야 합니다.

  • 대상 범위: 대상 범위는 들어오는 패킷을 수신하는 시스템의 IP 주소가 포함된 단일 IPv4 CIDR 블록입니다. GCP는 IPv6 대상 범위를 지원하지 않습니다. 대상 위치는 CIDR 표기법으로 표현되어야 하고 가능한 가장 광범위한 대상 위치는 0.0.0.0/0입니다.

  • 우선순위: 우선순위는 여러 경로의 대상 위치가 동일한 경우에 적용할 경로를 결정하는 데 사용됩니다. 숫자가 낮을수록 우선순위가 높습니다. 예를 들어 우선순위 값이 100인 경로는 우선순위 값이 200인 경로보다 우선순위가 높습니다.

  • 다음 홉: 정적 경로의 다음 홉은 기본 인터넷 게이트웨이, GCP 인스턴스 또는 Cloud VPN 터널을 가리킬 수 있습니다. 자세한 내용은 정적 경로의 다음 홉을 참조하세요.

  • 태그: 네트워크 태그 목록을 지정하여 해당 목록의 태그 중 하나 이상이 있는 인스턴스에만 경로가 적용되도록 할 수 있습니다. 태그를 지정하지 않으면 GCP는 네트워크의 모든 인스턴스에 해당 경로를 적용합니다.

정적 경로의 다음 홉

정적 경로에 유효한 다음 홉은 다음과 같습니다. 각 유형에 대한 자세한 내용은 gcloud 참조 문서를 확인하세요.

  • 다음 홉 게이트웨이(next-hop-gateway): 기본 인터넷 게이트웨이를 지정하여 공개 IP 주소의 경로를 정의할 수 있습니다.

  • 다음 홉 인스턴스(next-hop-instance): GCP에 있는 기존 인스턴스이름영역을 지정하여 트래픽을 해당 인스턴스로 전달할 수 있습니다. 트래픽은 네트워크의 기본 내부 IP 주소로 전달됩니다.

    • 해당 인스턴스의 기본 네트워크 인터페이스에 대한 내부 IP 주소가 변경되면 GCP는 라우팅 테이블을 자동으로 업데이트하여 트래픽이 새 IP 주소로 해당 인스턴스에 계속 전송되도록 합니다.

    • 해당 인스턴스가 동일한 영역에서 동일한 이름을 가진 새 인스턴스로 대체되면 GCP는 라우팅 테이블을 자동으로 업데이트하여 트래픽이 대체 인스턴스로 전달되도록 합니다. 인스턴스가 자동으로 대체되었는지 수동으로 대체되었는지는 중요하지 않습니다.

  • 다음 홉 IP(next-hop-address): GCP에 있는 기존 인스턴스의 기본 네트워크 인터페이스에 대한 내부 IP 주소를 사용하여 해당 인스턴스를 참조할 수 있습니다.

    • 해당 인스턴스가 새 인스턴스로 대체될 경우 대체 인스턴스는 반드시 동일한 내부 IP 주소를 사용해야 합니다. GCP는 현재 다음 홉에 지정된 내부 IP 주소를 사용하는 모든 인스턴스로 트래픽을 전달합니다.

    • 다음 홉 IP 주소는 반드시 VPC 네트워크의 기존 인스턴스여야 합니다. VPC 네트워크에 연결된 네트워크의 공개 IP 주소와 비공개 IP 주소는 유효한 다음 홉이 아닙니다.

  • 다음 홉 VPN 터널(next-hop-vpn-tunnel): 정책 기반 라우팅경로 기반 VPN을 사용하는 Cloud VPN 터널의 경우 VPN 터널의 이름과 리전으로 다음 홉을 참조하여 경로를 만들면 트래픽을 해당 VPN 터널로 전달할 수 있습니다.

다음 홉으로 사용되는 인스턴스

다음 홉 인스턴스 또는 다음 홉 IP를 사용하여 다음 홉이 인스턴스인 정적 경로를 만들 경우 다음 홉으로 사용되는 인스턴스가 다른 인스턴스에서 들어오는 트래픽을 수신하도록 구성해야 합니다.

  • 다음 홉으로 사용되는 인스턴스가 IP 전달을 허용하도록 구성해야 합니다. VM을 만들 때만 VM 단위로 IP 전달을 사용 설정할 수 있습니다. 관리되는 인스턴스 그룹의 일부로 자동 생성된 VM에 IP 전달을 사용 설정해야 하는 경우에는 인스턴스 그룹이 사용하는 인스턴스 템플릿에서 IP 전달을 사용 설정해야 합니다.

  • 다음 홉으로 사용되는 인스턴스의 방화벽 규칙을 적절하게 구성해야 합니다. 경로를 구성하고 다음 홉으로 사용되는 인스턴스를 지정해도 방화벽 규칙이 자동으로 조정되지는 않습니다. 들어오는 트래픽을 허용하는 방화벽 규칙을 만들지 않으면 묵시적 수신 거부 규칙에 따라 해당 트래픽이 차단됩니다. 자세한 내용은 방화벽 규칙 개요를 참조하세요.

  • 방화벽 규칙은 다음 홉 인스턴스가 아니라 패킷의 소스와 대상 위치에 적용됩니다. 패킷 소스 및 대상 위치를 변경하지 않고 그대로 두도록 다음 홉 인스턴스를 구성해야 합니다. 예를 들어 수신 방화벽 규칙의 소스에 IP 범위 10.240.0.3/32가 포함되어 있으면 소스가 그와 같고 올바르게 구성된 NAT 인스턴스를 통해 라우팅된 패킷은 방화벽 규칙에 의해 허용됩니다. 이는 NAT 인스턴스의 IP 주소가 10.240.0.3이 아닌 경우에도 해당됩니다.

  • 인스턴스를 다음 홉으로 사용할 때 해당 인스턴스는 영역별 리소스라는 점에 유의하세요. 영역(zone)을 선택하면 암시적으로 리전을 선택한 것으로 간주됩니다. GCP는 경로의 지역적 거리를 고려하지 않으므로 다른 리전의 다음 홉 인스턴스로 트래픽을 전송하는 경로가 만들어질 수 있습니다. 그러면 송신 비용이 추가되고 네트워크 지연이 발생합니다.

  • GCP는 다음 홉이 인스턴스인 경로를 인스턴스 실행 중에 유효한 것으로 간주합니다. 인스턴스에 포함된 운영체제 또는 패킷 라우팅을 담당하는 프로세스 등의 소프트웨어가 작동을 멈추거나 다운되면 패킷이 손실됩니다. 관리형 인스턴스 그룹 및 자동 복구를 사용하여 GCP가 구성 가능한 상태 확인에 실패하면 다음 홉 인스턴스를 다시 만들도록 지시하는 것이 좋습니다.

  • 인스턴스의 게스트 운영체제를 구성하여 네트워크 인터페이스를 사용 중지해도 GCP는 여전히 인스턴스를 경로의 다음 홉으로 간주합니다.

다음 단계

  • 경로 사용에서 경로를 만들고 사용하는 방법을 참조합니다.
  • VPC 개요에서 GCP VPC 네트워크에 관한 정보를 확인하세요.
  • VPC 네트워크를 만들고 수정하는 방법에 대한 안내는 VPC 사용을 참조하세요.
이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...