BGP 경로 정책 만들기
이 가이드에서는 Cloud Router에서 BGP 경로 정책을 만드는 방법을 설명합니다.
다음 중 하나를 사용하여 Cloud Router에 대해 BGP 경로 정책을 만들 수 있습니다.
- 원하는 텍스트 편집기를 사용해서 BGP 경로 정책을 만들고 gcloud CLI를 사용해서 BGP 경로 정책을 업로드합니다.
BGP 경로 정책 빌드
Cloud Router에 경로 정책을 추가합니다.
gcloud beta compute routers add-route-policy ROUTER_NAME \ --policy-name=BGP_ROUTE_POLICY_NAME \ --policy-type=ROUTE_POLICY_TYPE \ --region=REGION
다음을 바꿉니다.
ROUTER_NAME
: Cloud Router의 이름BGP_ROUTE_POLICY_NAME
: BGP 경로 정책의 이름ROUTE_POLICY_TYPE
: 추가할 정책 유형입니다. 인바운드 경로의 경우IMPORT
, 아웃바운드 경로의 경우EXPORT
입니다.REGION
: Cloud Router가 있는 리전
예를 들어 다음 명령어는 Cloud Router에 인바운드 경로의 경로 정책을 추가합니다.
gcloud beta compute routers add-route-policy ROUTER_NAME \ --policy-name=BGP_ROUTE_POLICY_NAME \ --policy-type=IMPORT \ --region=REGION
다음 명령어를 실행하여 BGP 경로 정책 용어를 추가합니다.
gcloud beta compute routers add-route-policy-term ROUTER_NAME \ --policy-name=BGP_ROUTE_POLICY_NAME \ --region=REGION \ --priority=ROUTE_POLICY_PRIORITY \ --match=ROUTE_POLICY_MATCH_EXPRESSION \ --actions=ROUTE_POLICY_ACTIONS_EXPRESSION
다음을 바꿉니다.
ROUTE_POLICY_PRIORITY: the priority for this policy, such as
1`.ROUTE_POLICY_MATCH_EXPRESSION
: 이 경로 정책에 일치하는 표현식입니다.ROUTE_POLICY_ACTIONS_EXPRESSION
: 이 경로 정책의 작업
예를 들어 다음 명령어는
192.168.10.0/24
에 포함되지 않고 BGP 커뮤니티65000:1
및65000:2
집합과 일치하는 BGP 경로의 BGP 다중 종료 구분자 (MED) 속성 값을12345
로 설정하는 BGP 정책을 만듭니다.gcloud beta compute routers add-route-policy-term ROUTER_NAME \ --policy-name=BGP_ROUTE_POLICY_NAME \ --region=REGION \ --priority=ROUTE_POLICY_PRIORITY \ --match='destination != "192.168.10.0/24" && communities.matchesEvery(["65000:1", "65000:2"])' \ --actions='med.set(12345)'
ROUTE_POLICY_PRIORITY
를 이 정책에 원하는 우선순위(예:1
)로 바꿉니다.
BGP 경로 정책 업로드
원하는 텍스트 편집기에서 BGP 경로 정책을 만듭니다. JSON 또는 YAML 형식을 사용해서 BGP 경로 정책을 만들 수 있습니다. 다음 예시에서는 YAML 파일을 사용합니다.
name: BGP_ROUTE_POLICY_NAME type: ROUTE_POLICY_TYPE terms: - priority: ROUTE_POLICY_PRIORITY match: expression: > ROUTE_POLICY_MATCH_EXPRESSION actions: - expression: ROUTE_POLICY_ACTIONS_EXPRESSION
다음을 바꿉니다.
BGP_ROUTE_POLICY_NAME
: BGP 경로 정책의 이름입니다.ROUTE_POLICY_TYPE
: 만들려는 BGP 경로 정책의 유형입니다. 유형은 다음 중 하나일 수 있습니다.ROUTE_POLICY_TYPE_IMPORT
: 인바운드 경로의 BGP 경로 정책입니다.ROUTE_POLICY_TYPE_EXPORT
: 아웃바운드 경로의 BGP 경로 정책입니다.
ROUTE_POLICY_PRIORITY
: 이 정책의 우선순위입니다(예:1
).ROUTE_POLICY_MATCH_EXPRESSION
: 이 경로 정책에 일치하는 표현식입니다.ROUTE_POLICY_ACTIONS_EXPRESSION
: 이 경로 정책의 작업
예를 들어 다음 YAML 파일 명령어는
192.168.10.0/24
에 포함되지 않고 BGP 커뮤니티 집합65000:1
및65000:2
과 일치하는 BGP 경로의 BGP 다중 종료 구분자 (MED) 속성 값을12345
로 설정하는 수신 경로의 BGP 정책을 만듭니다.# Set the MED value for BGP routes that aren't 192.168.10.0/24 and # communities that include (65000:1, 65000:2) name: BGP_ROUTE_POLICY_NAME type: ROUTE_POLICY_TYPE_IMPORT terms: - priority: 1 match: expression: > destination != '192.168.10.0/24' && communities.matchesEvery(['65000:1', '65000:2']) actions: - expression: med.set(12345)
BGP 경로 정책을 업로드합니다.
gcloud beta compute routers upload-route-policy ROUTER_NAME \ --region=REGION \ --policy-name=BGP_ROUTE_POLICY_NAME \ --file-name=FILE_NAME \ --file-format=yaml
다음을 바꿉니다.
ROUTER_NAME
: Cloud Router의 이름REGION
: Cloud Router가 있는 리전FILENAME
: 업로드할 파일 이름
BGP 피어에 BGP 경로 정책을 적용합니다.
gcloud beta compute routers update-bgp-peer ROUTER_NAME \ --region=REGION \ --peer-name=PEER_NAME \ --import-policies='IMPORT_POLICIES'
다음을 바꿉니다.
PEER_NAME
: BGP 경로 정책을 적용할 BGP 피어의 이름입니다.IMPORT_POLICIES
: 쉼표로 구분된 가져오기 정책 목록입니다. 빈 문자열을 전달하면 모든 가져오기 정책이 삭제됩니다.