Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP 커뮤니티에 대한 라우팅 정책

BGP 커뮤니티, 확장 커뮤니티 및 대규모 커뮤니티를 라우팅 정책 일치 조건으로 이해

BGP 커뮤니티는 공통 속성을 공유하는 대상 그룹입니다. 커뮤니티 정보는 BGP 업데이트 메시지에 경로 속성으로 포함됩니다. 이 정보는 커뮤니티 구성원을 식별하고 각 구성원에 대해 자세히 설명할 필요 없이 그룹에서 작업을 수행할 수 있도록 합니다. 커뮤니티 및 확장된 커뮤니티 속성을 사용하여 수락, 거부, 선호 또는 재배포와 같은 라우팅 결정을 트리거할 수 있습니다.

구성(정적, 집계 또는 생성된 경로의 경우) 또는 가져오기 라우팅 정책을 통해 비 BGP 경로에 커뮤니티 태그를 할당할 수 있습니다. 그런 다음 BGP가 경로를 내보낼 때 이러한 태그를 일치시킬 수 있습니다.

커뮤니티 값은 두 개의 주요 섹션으로 나뉘는 32비트 필드입니다. 값의 처음 16비트는 커뮤니티를 시작한 네트워크의 AS 번호를 인코딩하고, 마지막 16비트는 AS에서 할당한 고유 번호를 전달합니다. 이 시스템은 인터넷의 각 AS에 대해 전역적으로 고유한 커뮤니티 값 집합을 보장하려고 시도합니다. Junos OS는 의 표기법 을 사용하며, 여기서 각 값은 십진수입니다.as-number:community-value 0 및 65,535의 AS 값은 예약되어 있으며, 해당 AS 번호 내의 모든 커뮤니티 값도 예약되어 있습니다. 각 커뮤니티 또는 커뮤니티 집합에는 구성 계층 내에서 이름이 지정됩니다.[edit policy-options] 커뮤니티의 이름은 라우팅 디바이스에 커뮤니티를 고유하게 식별하고 경로를 분류하는 방법으로 사용됩니다. 예를 들어 커뮤니티 값이 64510:1111인 경로는 라는 커뮤니티 에 속할 수 있습니다.AS64510-routes 커뮤니티 이름은 라우팅 정책 내에서 일치 기준 또는 작업으로 사용되기도 합니다. 커뮤니티를 만들기 위한 명령 구문은 다음과 같습니다. 정책 옵션 .community name members [community-ids] 는 단일 커뮤니티 가치 또는 여러 커뮤니티 가치입니다.community-ids 커뮤니티 이름에 두 개 이상의 값이 할당되면 라우팅 디바이스는 이를 커뮤니티 값의 논리적 AND로 해석합니다. 즉, 경로는 커뮤니티 이름을 할당받기 전에 구성된 모든 값을 가져야 합니다.

일반 커뮤니티 속성은 4개의 옥텟입니다. VPN과 같은 네트워킹 향상 기능에는 커뮤니티와 같은 속성으로 충족할 수 있는 기능 요구 사항이 있습니다. 그러나 4-옥텟 커뮤니티 값은 VPN 요구 사항을 수용할 만큼 충분한 확장과 유연성을 제공하지 않습니다. 이것은 확장된 커뮤니티의 창출로 이어집니다. 확장 커뮤니티는 두 개의 주요 섹션으로 나뉘는 8옥텟 값입니다. 커뮤니티의 처음 2개 옥텟은 유형 필드를 인코딩하고 마지막 6개 옥텟은 유형 필드에서 정의한 형식으로 고유한 데이터 세트를 전달합니다. 확장된 커뮤니티는 커뮤니티를 그룹화하거나 분류할 수 있는 더 넓은 범위를 제공합니다.

BGP 확장 커뮤니티 속성 형식에는 세 가지 필드가 있습니다. type:administrator:assigned-number. 라우팅 디바이스는 단어 또는 유형 필드를 나타낼 것으로 예상합니다.targetorigin 관리자 필드는 AS 또는 IPv4 주소에 10진수를 사용하는 반면, 할당된 번호 필드에는 필드 크기(2옥텟의 경우 65,535, 4옥텟의 경우 4,294,967,295)보다 크지 않은 십진수가 필요합니다.

표준 및 확장 커뮤니티 속성에 대한 커뮤니티 ID를 지정할 때 UNIX 스타일 정규 표현식을 사용할 수 있습니다. 유일한 예외는 확장 커뮤니티 속성에 대한 정규식을 지원하지 않는 VPN 가져오기 정책()입니다.vrf-import

일반 BGP 커뮤니티 속성은 16비트 값으로 분할된 하나 이상의 4바이트 값 집합으로 구성된 가변 길이 속성입니다. 최상위 단어는 AS 번호로 해석되며, 최하위 단어는 AS 운영자가 할당한 로컬 정의 값입니다. 4바이트 ASN을 채택한 이후 4바이트 BGP 일반 커뮤니티 및 6바이트 BGP 확장 커뮤니티는 더 이상 BGP 커뮤니티 속성을 지원할 수 없습니다. 운영자는 BGP 커뮤니티의 로컬 부분에 AS 번호를 인코딩하는 경우가 많으며, 이는 때때로 커뮤니티 형식이 ASN:ASN임을 의미합니다. 4바이트 ASN을 사용하면 인코딩하려면 8바이트가 필요합니다. BGP 확장 커뮤니티에서는 4바이트 AS를 전역 관리자 필드로 인코딩할 수 있지만 로컬 관리자 필드에는 2바이트의 사용 가능한 공간만 있습니다. 따라서 6바이트 확장 커뮤니티 속성도 적합하지 않습니다. 이를 극복하기 위해 Junos OS는 전역 관리자로서 자치 시스템 번호를 인코딩하기 위해 가장 중요한 4바이트 값을 제공하는 12바이트 BGP 대규모 커뮤니티와 RFC 8092에 정의된 로컬 값을 인코딩하기 위해 나머지 2개의 4바이트 할당 번호를 제공하는 선택적 전이적 경로 속성을 구성할 수 있도록 허용합니다. 및 계층 수준에서 BGP 대규모 커뮤니티를 구성할 수 있습니다.[edit policy-options community community-name members][edit routing-options static route ip-address community] BGP 대규모 커뮤니티 속성 형식에는 4개의 필드가 있습니다. :.largeglobal administrator:assigned number:assigned number

BGP IPv6 유니캐스트 주소별 확장 커뮤니티는 20바이트 값 집합으로 인코딩됩니다. 20바이트 값은 다음 형식으로 해석됩니다.

  • 최상위 2바이트는 유형 및 하위 유형 값(높은 값(최상위 바이트) 및 낮은 값(두 번째로 중요한 바이트))을 인코딩합니다.

  • 다음 16바이트는 IPv6 유니캐스트 주소를 인코딩합니다. IETF RFC의 전역 관리자입니다.

  • 마지막 2바이트는 운영자가 정의한 로컬 값을 인코딩합니다. IETF RFC의 로컬 관리자입니다.

IPv6 유니캐스트 주소별 BGP 확장 커뮤니티 속성은 키워드 , 로 표시되거나 그 뒤에 IPv6 및 로컬 관리자가 <, > 및 :로 구분됩니다.ipv6-targetipv6-originipv6-extended

주:

BGP 대규모 커뮤니티 속성 값의 길이는 0이 아닌 12의 배수여야 합니다.

예: 특정 Community 태그를 포함하는 BGP 경로를 IS-IS로 재배포하도록 라우팅 정책 구성

이 예는 커뮤니티에서 BGP 경로를 가져와 메트릭 63으로 IS-IS에 배치하는 정책을 정의합니다.Edu

요구 사항

이 예를 구성하기 전에 디바이스 초기화를 제외한 특별한 구성은 필요하지 않습니다.

개요

그림 1은(는) 본 예제에서 사용되는 토폴로지를 나타냅니다.

그림 1: 특정 Community 태그가 있는 BGP 경로를 IS-IS로 재배포특정 Community 태그가 있는 BGP 경로를 IS-IS로 재배포

이 예에서 디바이스 A, 디바이스 B, 디바이스 C, 디바이스 D는 AS(Autonomous System) 1에 있으며 IS-IS를 실행하고 있습니다. 디바이스 D를 제외한 모든 AS 1 디바이스는 내부 BGP(IBGP)를 실행하고 있습니다.

디바이스 E는 AS 2에 있으며 디바이스 C와 외부 BGP(EBGP) 피어링 세션을 가지고 있습니다. 디바이스 E에는 10.2.0.0/16 및 10.3.0.0/16이라는 두 개의 정적 경로가 있습니다. 이러한 경로는 Edu 2:5 커뮤니티 속성으로 태그가 지정되며 EBGP를 통해 디바이스 C에 보급됩니다.

디바이스 C는 Edu 2:5 community 속성으로 태그가 지정된 BGP 경로를 수락하고, 경로를 IS-IS로 재배포하며, 이러한 경로에 IS-IS 메트릭 63을 적용합니다.

CLI 빠른 구성그림 1 내 모든 디바이스의 구성을 보여줍니다. 이 섹션에서는 디바이스 C와 디바이스 E의 단계를 설명합니다.#d205e61__d205e382

구성

절차

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

디바이스 A

디바이스 B

디바이스 C

디바이스 D

디바이스 E

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색에 관한 정보는 CLI 사용자 가이드에서 구성 모드에서 CLI 편집기 사용을 참조하십시오.

디바이스 E 구성:

  1. 인터페이스를 구성합니다.

  2. 정적 경로에 커뮤니티 속성을 추가하는 정책을 구성합니다.staticsEdu

  3. EBGP를 구성하고 정책을 적용합니다.statics

  4. 고정 경로를 구성합니다.

  5. 라우터 ID 및 AS 번호를 구성합니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색에 관한 정보는 CLI 사용자 가이드에서 구성 모드에서 CLI 편집기 사용을 참조하십시오.

디바이스 C 구성:

  1. 인터페이스를 구성합니다.

  2. IBGP를 구성합니다.

  3. 디바이스 E에서 학습한 Edu 태그가 지정된 BGP 경로를 재배포하고 메트릭 63을 적용하는 Edu-to-isis 정책을 구성합니다.

  4. 인터페이스에서 IS-IS를 활성화하고 Edu-to-isis 정책을 적용합니다.

  5. EBGP를 통해 디바이스 E에 경로를 재배포하는 send-isis-and-direct 정책을 구성합니다.

    이 정책이 없으면 디바이스 E는 AS 1의 네트워크에 연결할 수 없습니다.

  6. EBGP를 구성하고 send-isis-and-direct 정책을 적용합니다.

  7. 라우터 ID 및 AS(Autonomous System) 번호를 구성합니다.

결과

구성 모드에서 show interfaces, show protocols, show policy-optionsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 E

디바이스 C

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

IS-IS 이웃 확인

목적

디바이스 E의 BGP 경로가 AS 1의 IS-IS 네트워크에서 통신되는지 확인합니다.

작업

운영 모드에서 show route protocol isis 명령을 입력합니다.

의미

예상대로 10.2.0.0/16 및 10.3.0.0/16 경로는 메트릭 73의 IS-IS 외부 경로로 디바이스 D의 라우팅 테이블에 있습니다. 디바이스 C가 메트릭에 63을 추가하지 않은 경우 디바이스 D는 이러한 경로에 대한 메트릭 10을 갖게 됩니다.

예: BGP 커뮤니티를 제거하는 라우팅 정책 구성

이 예는 BGP 경로를 수락하지만 경로에서 BGP 커뮤니티를 제거하는 정책을 만드는 방법을 보여줍니다.

요구 사항

이 예제를 구성하기 전에 디바이스 초기화 이외의 특별한 구성은 필요하지 않습니다.

개요

이 예는 외부 BGP(EBGP) 연결이 있는 두 라우팅 디바이스를 보여줍니다. 디바이스 R2는 BGP 세션을 사용하여 디바이스 R1에 2개의 정적 경로를 전송합니다. 디바이스 R1에서 가져오기 정책은 모든 BGP 커뮤니티가 경로에서 제거되어야 한다고 지정합니다.

기본적으로 EBGP 피어에 커뮤니티가 구성되면 커뮤니티가 전송되고 수락됩니다. 이웃으로부터 받은 커뮤니티의 수락을 억제하려면 모든 커뮤니티 또는 지정된 커뮤니티 집합을 제거할 수 있습니다. 정책의 결과가 빈 커뮤니티 집합인 경우 커뮤니티 속성은 포함되지 않습니다. 모든 커뮤니티를 제거하려면 먼저 와일드카드 커뮤니티 집합을 정의합니다(여기서 커뮤니티 이름은 ).wild

그런 다음 라우팅 정책 문에서 작업을 지정합니다.community delete

AS(Autonomous System)에서 특정 커뮤니티를 억제하려면 커뮤니티를 로 정의합니다.community wild members "*:community-value"

토폴로지

그림 2은 샘플 네트워크를 표시합니다.

그림 2: 커뮤니티를 제거하는 BGP 정책커뮤니티를 제거하는 BGP 정책

구성

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

디바이스 R1

디바이스 R2

절차

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

디바이스 R1 구성

  1. 인터페이스를 구성합니다.

  2. BGP를 구성합니다.

    디바이스 R2와의 BGP 피어링 세션에 가져오기 정책을 적용합니다.

  3. 커뮤니티를 삭제하는 라우팅 정책을 구성합니다.

  4. AS(Autonomous System) 번호와 라우터 ID를 구성합니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

디바이스 R2 구성:

  1. 인터페이스를 구성합니다.

  2. 라우터 ID 및 AS(Autonomous System) 번호를 구성합니다.

  3. BGP를 구성합니다.

  4. 여러 커뮤니티를 구성하거나 여러 구성원이 있는 단일 커뮤니티를 구성합니다.

  5. 고정 경로를 구성합니다.

  6. 정적 경로를 BGP에 보급하고 BGP 커뮤니티를 경로에 추가하는 라우팅 정책을 구성합니다.

  7. 내보내기 정책을 적용합니다.

결과

구성 모드에서 show interfaces, show protocols, show policy-optionsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 R1

디바이스 R2

디바이스 구성이 완료되면 구성모드에서 commit을 입력합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

BGP 경로 확인

목적

디바이스 R1의 라우팅 테이블에 BGP 커뮤니티가 포함되어 있지 않은지 확인합니다.

작업
  1. 디바이스 R1에서 명령을 실행합니다 .show route protocols bgp extensive

  2. 디바이스 R1에서 가져오기 정책의 구성을 비활성화 합니다.community remove

  3. 디바이스 R1에서 명령을 실행하여 보급된 커뮤니티를 확인합니다.show route protocols bgp extensive

의미

출력은 디바이스 R1의 라우팅 테이블에서 디바이스 R2에서 전송된 BGP 경로에서 커뮤니티가 억제됨을 보여줍니다. 디바이스 R1의 가져오기 정책 설정이 비활성화되면 커뮤니티가 더 이상 억제되지 않습니다.community remove

예: BGP 커뮤니티 수를 기반으로 라우팅 정책 구성

이 예는 BGP 커뮤니티 수를 기반으로 BGP 경로를 수락하는 정책을 생성하는 방법을 보여줍니다.

요구 사항

이 예제를 구성하기 전에 디바이스 초기화 이외의 특별한 구성은 필요하지 않습니다.

개요

이 예는 외부 BGP(EBGP) 연결이 있는 두 라우팅 디바이스를 보여줍니다. 디바이스 R2는 BGP 세션을 사용하여 디바이스 R1에 2개의 정적 경로를 전송합니다. 디바이스 R1에서 가져오기 정책은 BGP 수신 경로가 일치하는 것으로 간주될 커뮤니티를 최대 5개까지 포함할 수 있도록 지정합니다. 예를 들어, 경로에 세 개의 커뮤니티가 포함된 경우 일치하는 것으로 간주되어 허용됩니다. 경로에 6개 이상의 커뮤니티가 포함된 경우 일치하지 않는 경로로 간주되어 거부됩니다.

EBGP의 기본 정책은 모든 경로를 수락하는 것임을 기억해야 합니다. 일치하지 않는 경로가 거부되도록 하려면 정책 정의 끝에 작업을 포함해야 합니다.then reject

토폴로지

그림 3은 샘플 네트워크를 표시합니다.

그림 3: 허용되는 커뮤니티 수에 제한이 있는 BGP 정책허용되는 커뮤니티 수에 제한이 있는 BGP 정책

구성

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

디바이스 R1

디바이스 R2

절차

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

디바이스 R1 구성

  1. 인터페이스를 구성합니다.

  2. BGP를 구성합니다.

    디바이스 R2와의 BGP 피어링 세션에 가져오기 정책을 적용합니다.

  3. 직접 경로를 전송하는 라우팅 정책을 구성합니다.

  4. AS(Autonomous System) 번호와 라우터 ID를 구성합니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

디바이스 R2 구성:

  1. 인터페이스를 구성합니다.

  2. 라우터 ID 및 AS(Autonomous System) 번호를 구성합니다.

  3. BGP를 구성합니다.

  4. 여러 커뮤니티를 구성하거나 여러 구성원이 있는 단일 커뮤니티를 구성합니다.

  5. 고정 경로를 구성합니다.

  6. 정적 경로를 BGP에 보급하고 BGP 커뮤니티를 경로에 추가하는 라우팅 정책을 구성합니다.

  7. 내보내기 정책을 적용합니다.

결과

구성 모드에서 show interfaces, show protocols, show policy-optionsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 R1

디바이스 R2

디바이스 구성이 완료되면 구성모드에서 commit을 입력합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

BGP 경로 확인

목적

디바이스 R1의 라우팅 테이블에 예상되는 BGP 경로가 포함되어 있는지 확인합니다.

작업
  1. 디바이스 R1에서 명령을 실행합니다 .show route protocols bgp

  2. 디바이스 R1에서 가져오기 정책의 구성을 변경합니다.community-count

  3. 디바이스 R1에서 명령을 실행합니다 .show route protocols bgp

  4. 디바이스 R1에서 명령을 실행하여 보급된 커뮤니티를 확인합니다.show route protocols bgp extensive

의미

출력은 디바이스 R1의 라우팅 테이블에서 디바이스 R2에서 전송된 BGP 경로가 숨겨져 있음을 보여줍니다. 디바이스 R1의 가져오기 정책 설정이 수정되면 BGP 경로가 더 이상 숨겨지지 않습니다.community-count