컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

정책 기반 경로 사용

정책 기반 경로를 사용하면 패킷의 대상 IP 주소 이상을 기준으로 다음 홉을 선택할 수 있습니다. 이 페이지에서는 정책 기반 경로를 생성, 나열, 설명, 삭제하는 방법을 설명합니다.

시작하기 전에

필요한 역할

정책 기반 경로를 사용하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 네트워크 관리자(roles/compute.networkAdmin) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

정책 기반 경로 만들기

정책 기반 경로를 만들 때 일치 기준을 한 개 이상 지정할 수 있습니다. 선택한 모든 기준과 일치하는 경우 지정된 내부 TCP/UDP 부하 분산기로 트래픽이 리디렉션됩니다. 일치하는 기준을 지정하지 않으면 경로가 VPC 네트워크 내의 모든 IPv4 트래픽에 적용됩니다.

VPC 네트워크 내부 트래픽의 정책 기반 경로 만들기

gcloud

VPC 네트워크 내부 트래픽에 대한 정책 기반 경로를 만들려면 policy-based-routes create 명령어를 사용합니다.

gcloud network-connectivity policy-based-routes create ROUTE_NAME \
    --source-range=IP_RANGE_A \
    --destination-range=IP_RANGE_B \
    --ip-protocol=IP_PROTOCOL \
    --network="projects/PROJECT_ID/global/networks/NETWORK" \
    --tags=NETWORK_TAGS \
    --next-hop-ilb-ip=LOAD_BALANCER_IP \
    --description=DESCRIPTION \
    --priority=PRIORITY

다음을 바꿉니다.

  • ROUTE_NAME: 정책 기반 경로의 이름
  • IP_RANGE_A: 소스 IP CIDR 범위
  • IP_RANGE_B: 대상 IP CIDR 범위
  • IP_PROTOCOL: 전달하려는 트래픽의 IP 프로토콜 옵션은 ALL, TCP 또는 UDP입니다. 기본값은 ALL입니다.
  • PROJECT_ID: 프로젝트의 ID
  • NETWORK: 트래픽을 전달할 네트워크의 이름
  • NETWORK_TAGS: 하나 이상의 네트워크 태그(선택사항) 정책 기반 경로는 이러한 태그 중 하나 이상을 가진 모든 인스턴스에 적용됩니다. 쉼표로 구분된 목록으로 여러 태그를 포함할 수 있습니다.
  • LOAD_BALANCER_IP: 내부 TCP/UDP 부하 분산기의 IP 주소
  • DESCRIPTION: 경로에 대한 설명(선택사항)
  • PRIORITY: 다른 정책 기반 경로와 비교한 정책 기반 경로의 우선순위

정책 기반 경로와 동일한 방식으로 응답 트래픽을 라우팅하려면 다음 홉 및 프로토콜이 동일한 두 번째 정책 기반 경로를 만들되 소스 및 대상 IP 주소 범위를 전환합니다.

gcloud network-connectivity policy-based-routes create RETURN_ROUTE_NAME \
    --source-range=IP_RANGE_B \
    --destination-range=IP_RANGE_A \
    --ip-protocol=IP_PROTOCOL \
    --network="projects/PROJECT_ID/global/networks/NETWORK" \
    --tags=NETWORK_TAGS \
    --next-hop-ilb-ip=LOAD_BALANCER_IP \
    --description=DESCRIPTION \
    --priority=PRIORITY

RETURN_ROUTE_NAME을 반환 경로의 이름으로 바꿉니다.

API

VPC 네트워크 내 트래픽에 대한 정책 기반 경로를 만들려면 policyBasedRoutes.create 메서드에 POST 요청을 수행합니다.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes?policyBasedRouteId=ROUTE_NAME
{
  "filter": {
    "srcRange": "IP_RANGE_A",
    "destRange": "IP_RANGE_B",
    "ipProtocol": "IP_PROTOCOL",
    "protocolVersion": "IPv4"
  },
  "network": "projects/PROJECT_ID/global/networks/NETWORK",
  "nextHopIlbIp": "LOAD_BALANCER_IP",
  "description": "DESCRIPTION",
  "priority": "PRIORITY",
  "virtualMachine": {
    "tags": [
      "NETWORK_TAGS"
    ]
  }
}

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트의 ID
  • ROUTE_NAME: 정책 기반 경로의 이름
  • IP_RANGE_A: 소스 IP CIDR 범위
  • IP_RANGE_B: 대상 IP CIDR 범위
  • IP_PROTOCOL: 전달하려는 트래픽의 IP 프로토콜 옵션은 ALL, TCP 또는 UDP입니다. 기본값은 ALL입니다.
  • NETWORK: 네트워크의 이름
  • LOAD_BALANCER_IP: 내부 TCP/UDP 부하 분산기의 IP 주소
  • DESCRIPTION: 경로에 대한 설명(선택사항)
  • PRIORITY: 다른 정책 기반 경로와 비교한 정책 기반 경로의 우선순위
  • NETWORK_TAGS: 하나 이상의 네트워크 태그(선택사항) 정책 기반 경로는 이러한 태그 중 하나 이상을 가진 모든 인스턴스에 적용됩니다. "tag1","tag2","tag3" 형식으로 태그를 여러 개 포함할 수 있습니다.

정책 기반 경로와 동일한 방식으로 응답 트래픽을 라우팅하려면 다음 홉 및 프로토콜이 동일한 두 번째 정책 기반 경로를 만들되 소스 및 대상 IP 주소 범위를 전환합니다.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes?policyBasedRouteId=RETURN_ROUTE_NAME
{
  "filter": {
    "srcRange": "IP_RANGE_B",
    "destRange": "IP_RANGE_A",
    "ipProtocol": "IP_PROTOCOL",
    "protocolVersion": "IPv4"
  },
  "network": "projects/PROJECT_ID/global/networks/NETWORK",
  "nextHopIlbIp": "LOAD_BALANCER_IP",
  "description": "DESCRIPTION",
  "priority": "PRIORITY",
  "virtualMachine": {
    "tags": [
      "NETWORK_TAGS"
    ]
  }
}

RETURN_ROUTE_NAME을 반환 경로의 이름으로 바꿉니다.

Cloud Interconnect 연결에 사용할 정책 기반 경로 만들기

Cloud Interconnect 연결을 통해 온프레미스 네트워크에서 VPC 네트워크로 이동하는 트래픽을 전달하는 정책 기반 경로를 만들 수 있습니다. Cloud Interconnect 트래픽에 대한 정책 기반 경로를 만들 때 리전을 지정하면 해당 리전의 모든 Cloud Interconnect 연결에 이 경로가 사용 설정됩니다. 특정 Cloud Interconnect 연결에 정책 기반 경로를 만들 수는 없습니다.

gcloud

온프레미스 네트워크에서 시작되는 트래픽에 대한 정책 기반 경로를 만들려면 policy-based-routes create 명령어를 사용합니다.

gcloud network-connectivity policy-based-routes create ROUTE_NAME \
    --interconnect-attachment-region=INTERCONNECT_REGION \
    --tags=NETWORK_TAGS \
    --source-range=IP_RANGE_A \
    --destination-range=IP_RANGE_B \
    --ip-protocol=IP_PROTOCOL \
    --network="projects/PROJECT_ID/global/networks/NETWORK" \
    --next-hop-ilb-ip=LOAD_BALANCER_IP \
    --description=DESCRIPTION \
    --priority=PRIORITY

다음을 바꿉니다.

  • ROUTE_NAME: 정책 기반 경로의 이름
  • INTERCONNECT_REGION: 정책 기반 경로를 적용할 Cloud Interconnect 연결의 리전
  • NETWORK_TAGS: 하나 이상의 네트워크 태그(선택사항) 정책 기반 경로는 이러한 태그 중 하나 이상을 가진 모든 인스턴스에 적용됩니다. 쉼표로 구분된 목록으로 여러 태그를 포함할 수 있습니다.
  • IP_RANGE_A: 소스 IP CIDR 범위
  • IP_RANGE_B: 대상 IP CIDR 범위
  • IP_PROTOCOL: 전달하려는 트래픽의 IP 프로토콜 옵션은 ALL, TCP 또는 UDP입니다. 기본값은 ALL입니다.
  • PROJECT_ID: 프로젝트의 ID
  • NETWORK: 트래픽을 전달할 네트워크의 이름
  • LOAD_BALANCER_IP: 내부 TCP/UDP 부하 분산기의 IP 주소
  • DESCRIPTION: 경로에 대한 설명(선택사항)
  • PRIORITY: 다른 정책 기반 경로와 비교한 정책 기반 경로의 우선순위

API

온프레미스 네트워크에서 시작되는 트래픽에 대한 정책 기반 경로를 만들려면 policyBasedRoutes.create 메서드에 POST 요청을 수행합니다.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes?policyBasedRouteId=ROUTE_NAME
{
  "filter": {
    "srcRange": "IP_RANGE_A",
    "destRange": "IP_RANGE_B",
    "ipProtocol": "IP_PROTOCOL",
    "protocolVersion": "IPv4"
  },
  "interconnectAttachment": {
    "region": "INTERCONNECT_REGION"
  },
  "network": "projects/PROJECT_ID/global/networks/NETWORK",
  "nextHopIlbIp": "LOAD_BALANCER_IP",
  "description": "DESCRIPTION",
  "priority": "PRIORITY",
  "virtualMachine": {
    "tags": [
      "NETWORK_TAGS"
    ]
  }
}

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트의 ID
  • ROUTE_NAME: 정책 기반 경로의 이름
  • IP_RANGE_A: 소스 IP CIDR 범위
  • IP_RANGE_B: 대상 IP CIDR 범위
  • IP_PROTOCOL: 전달하려는 트래픽의 IP 프로토콜 옵션은 ALL, TCP 또는 UDP입니다. 기본값은 ALL입니다.
  • INTERCONNECT_REGION: 정책 기반 경로를 적용할 Cloud Interconnect 연결의 리전
  • NETWORK: 네트워크의 이름
  • LOAD_BALANCER_IP: 내부 TCP/UDP 부하 분산기의 IP 주소
  • DESCRIPTION: 경로에 대한 설명(선택사항)
  • PRIORITY: 다른 정책 기반 경로와 비교한 정책 기반 경로의 우선순위
  • NETWORK_TAGS: 하나 이상의 네트워크 태그(선택사항) 정책 기반 경로는 이러한 태그 중 하나 이상을 가진 모든 인스턴스에 적용됩니다. "tag1","tag2","tag3" 형식으로 태그를 여러 개 포함할 수 있습니다.

정책 기반 경로의 연결 확인

연결 테스트는 네트워크의 엔드포인트 간 연결을 확인할 수 있게 해주는 진단 도구입니다. 구성을 분석하고 경우에 따라 런타임 확인을 수행합니다. 연결 테스트는 정책 기반 경로를 지원합니다. 정책 기반 경로로 연결 테스트를 실행하려면 연결 테스트 만들기 및 실행을 참조하세요.

정책 기반 경로 나열

정책 기반 경로를 나열하여 프로젝트의 모든 정책 기반 경로를 볼 수 있습니다.

gcloud

정책 기반 경로를 나열하려면 policy-based-routes list 명령어를 사용합니다.

gcloud network-connectivity policy-based-routes list

API

정책 기반 경로를 나열하려면 policyBasedRoutes.list 메서드에 GET 요청을 수행합니다.

GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes

PROJECT_ID를 정책 기반 경로를 나열할 프로젝트의 ID로 바꿉니다.

정책 기반 경로 설명

정책 기반 경로를 설명하여 경로에 대한 세부정보를 볼 수 있습니다.

gcloud

정책 기반 경로를 설명하려면 policy-based-routes describe 명령어를 사용합니다.

gcloud network-connectivity policy-based-routes describe NAME

NAME을 설명할 경로의 이름으로 바꿉니다.

API

정책 기반 경로를 설명하려면 policyBasedRoutes.get 메서드에 GET 요청을 수행합니다.

GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes/ROUTE_NAME

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트의 ID
  • ROUTE_NAME: 설명할 정책 기반 경로의 이름

정책 기반 경로 삭제

정책 기반 경로를 삭제하여 VPC 네트워크에서 삭제할 수 있습니다.

gcloud

정책 기반 경로를 삭제하려면 policy-based-routes delete 명령어를 사용합니다.

gcloud network-connectivity policy-based-routes delete NAME

NAME을 삭제할 경로의 이름으로 바꿉니다.

API

정책 기반 경로를 삭제하려면 policyBasedRoutes.delete 메서드에 DELETE 요청을 수행합니다.

DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/policyBasedRoutes/ROUTE_NAME

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트의 ID
  • ROUTE_NAME: 삭제할 정책 기반 경로의 이름