목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

배경 정보

아키텍처

RFC 6513/6514의 변경 사항은 무엇입니까?

구성 변경

경로 알림

예

예 1: Profile 12: Default MDT - mLDP - P2MP - BGP-AD - BGP C-mcast Signaling

설정

문제 해결

인그레스 보더 라우터

이그레스 보더 라우터

예 2: Profile 20 Default MDT - P2MP-TE - BGP-AD - PIM - C-mcast Signaling

설정

문제 해결

인그레스 보더 라우터

이그레스 보더 라우터

예 3: 예 1과 같이 PE와 보더 라우터 간에 iBGP가 있습니다.

예 4: 원활한 MPLS

소개

이 문서에서는 mVPN에 대해 세그먼테이션되지 않은 GTM(Global Table Multicast)에 대해 설명합니다.

사전 요구 사항

요구 사항

이 문서에 대한 특정 요건이 없습니다.

사용되는 구성 요소

이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

배경 정보

NG mVPN(RFC 6513/6514)에는 많은 프로파일이 있습니다. 대부분의 프로필은 PE 라우터에 VPN(Virtual Private Network) 또는 VRF(Virtual Routing/Forwarding)를 갖추고 있습니다. 일부 프로파일(프로파일 7 및 글로벌 컨텍스트에 있습니다. 이미 전역으로 설정된 이러한 프로파일에는 GTM과 함께 BGP AD(Auto Discovery)가 도입됩니다. VRF 컨텍스트에서 사용 가능한 프로파일의 경우, 이제 전역 컨텍스트에서 MDT(Multicast Distribution Tree)를 통해 프로파일을 사용할 수 있습니다. 이들은 모두 비분절 GTM 모델이다. 세분화되지 않은 GTM에서 사용하는 절차는 IETF draft-ietf-bess-mvpn-global-table-mcast에 설명되어 있습니다.

RFC 7524와 draft-ietf-bess-mvpn-global-table-mcast(RFC 7716)는 모두 BGP 유니캐스트 경로(주소군 ipv4 유니캐스트 또는 주소군 ipv4 멀티캐스트)를 통해 GTM 소스 주소에 연결할 수 있어야 합니다.

RFC 7524를 통한 draft-ietf-bess-mvpn-global-table-mcast의 장점은 일반 NG mVPN(RFC 6514)에 사용되는 것과 동일한 절차가 유지된다는 것입니다.

GTM을 통해, mVPN은 비세그먼트화되거나 세그먼트화될 수 있다.

아키텍처

이 문서에서 보더 라우터라는 용어는 네트워크의 두 세그먼트를 연결하는 ABR, ASBR 또는 어그리게이션 라우터에 사용됩니다. 일반적으로 ABR은 Seamless MPLS 네트워크에 있습니다. ASBR은 Inter-AS MPLS VPN을 사용할 때 사용됩니다. 또한 어그리게이션 라우터는 GTM 오버레이 비세그먼트 라우터가 코어 네트워크의 두 부분을 연결할 때 사용되며, 두 부분 중 하나에서 다른 멀티캐스트 코어 트리 프로토콜을 실행할 때 사용됩니다. 예를 들어, 어그리게이션 라우터는 코어 네트워크의 PIM 부분을 코어 네트워크의 mLDP 부분과 연결할 수 있습니다.

모든 모델에는 SAFI 2를 사용할 수 있습니다. SAFI 2는 SAFI 1과 다른 토폴로지를 가질 수 있다는 장점이 있다. 따라서 유니캐스트 포워딩을 변경하지 않고 멀티캐스트용 RPF를 변경할 수 있습니다.

보더 라우터는 이중 캡슐화를 지원하지 않습니다. 즉, 라우터가 두 개 또는 모드 코어 트리 프로토콜에서 동시에 멀티캐스트를 전달할 수 없습니다. 일반적으로 하나의 코어 트리에서 다른 코어 트리로 마이그레이션할 때 사용할 수 있습니다. 마이그레이션 과정에서 인그레스 PE는 두 코어 트리로 전달합니다. 보더 라우터에서는 이 작업이 불가능합니다.

GTM 아키텍처는 세분화되지 않은 GTM 및 세분화된 GTM을 지원합니다. 이 문서는 세그먼테이션되지 않은 GTM에 대해서만 다룹니다.

GTM Overlay Non-Segmented의 절차는 draft-ietf-bess-mvpn-global-table-mcast에 설명된 절차입니다. RFC 6513/6514에서와 동일한 절차를 따르며 몇 가지 변경 사항이 있습니다.

RFC 6513/6514의 변경 사항은 무엇입니까?

GTM에서는 다음 사항이 적용됩니다. 이 중 일부는 RFC 6513/6514와 동일하며 일부는 다릅니다.

- SFS(Single Forwarding Selection)는 지원되지 않습니다.

- AF IPv6가 지원됩니다.

- C-PIM 및 C-BGP 시그널링이 지원됩니다.

- 엣지를 향하는 PE 라우터의 인터페이스에는 VRF가 없습니다. 이러한 인터페이스는 현재 전역으로 제공되고 있습니다. 이러한 라우터를 draft-ietf-bess-mvpn-global-table-mcast에서 PBR(Protocol Boundary Router)이라고 합니다. 이 라우터는 LSM 코어 트리 프로토콜과 PIM 간에 인터페이스합니다. 이러한 라우터를 경계 라우터라고 합니다.

- 코어 네트워크는 LSM(Label Switched Multicast) 코어 트리 프로토콜을 실행합니다.

- mLDP, P2MP TE(정적 및 동적) 및 IR이 지원됩니다.

- 기본, 파티션 분할 및 데이터 MDT 지원

- GTM에는 VPNv4/6 접두사가 없으므로 VRF Route-Import EC 및 Source-AS EC는 IPv4 유니캐스트(SAFI 1) 또는 멀티캐스트(SAFI 2) 접두사에 연결됩니다.

Route-type 1, 3, 5에는 RT가 있습니다. Cisco IOS® XR에서는 초안에 따라 이 RT가 필요하지 않더라도 GTM에 대해 이러한 RT가 있어야 합니다. GTM에서 사용할 BGP 아래의 RT를 구성해야 합니다. 이러한 RT는 일반 mVPN의 VRF에서 사용되는 RT와 유사하지만, 이제 전역 컨텍스트에 적용됩니다.

Route-type 4, 6, 7은 업스트림 PE 라우터를 식별하는 RT를 전달합니다. 전역 관리자 필드는 업스트림 PE의 IP 주소입니다. 로컬 관리자 필드는 GTM에 대해 0으로 설정됩니다(비GTM 또는 일반 mVPN에서 VRF를 식별함).

PE 라우터는 LSM(Label Switched Multicast) 코어 트리 프로토콜(mLDP, P2MP Traffic Engineering, IR(Ingress Replication))과 PIM 간의 상호 연결 라우터가 됩니다. 코어 네트워크에는 LSM을 실행하는 부분이 있으며, 코어 네트워크에는 PIM을 실행하는 부분이 있습니다. 네트워크의 LSM 부분과 네트워크의 PIM 부분 사이의 인터페이스 역할을 하는 코어 라우터를 경계 라우터로 호출하도록 합니다. 다음 예에서는 C-PE 라우터(C for Core)라고 합니다.

이러한 보더 라우터는 GTM에 필요한 컨피그레이션이 포함된 라우터입니다. 다른 라우터는 모두 GTM을 인식하지 못합니다.

GTM 컨피그레이션은 일반 mVPN 프로파일에 필요한 컨피그레이션과 유사합니다. 엣지를 향하는 인터페이스는 VRF에 있지 않습니다.

VRF가 없으므로 일반 경로 구별자가 없습니다. 일반 RD(Route Distinguishers)는 없지만 BGP로 시그널링할 때 RD가 사용되므로 GTM의 시그널링에는 all-zero RD 및 all-ones RD가 사용됩니다. 이 기능을 사용하려면 BGP 명령 global-table-multicast를 구성해야 합니다.

GTM의 경우 유니캐스트 경로가 VPNv4/6에 있지 않습니다. 따라서 유니캐스트 연결성은 AF IPv4 또는 AF IPv6와 SAFI 1 또는 SAFI 2의 BGP에서 제공해야 합니다. 즉, BGP는 경계 라우터(VRF가 없는 PE 라우터) 간에 계속 사용해야 합니다.이미지 1을 참조하십시오.

이미지 1

border와 CE 라우터 간에는 BGP가 없습니다. 보더 라우터는 iBGP의 경로를 다른 보더 라우터로 광고할 때 멀티캐스트 특성을 추가합니다.

CE와 PE 라우터 사이에 BGP가 있을 수 있습니다. 이미지 2를 참조하십시오.

이미지 2

이 경우 PE 라우터는 유니캐스트 경로를 eBGP에서 iBGP로 전달할 때 다른 PE 라우터로 전달할 때 멀티캐스트 특성을 추가합니다. CE에서 멀티캐스트 특성이 있는 유니캐스트 경로를 PE 라우터에 알린 경우 PE 라우터는 멀티캐스트 특성을 그대로 유지하고 유니캐스트 경로를 다른 PE 라우터로 전달합니다. 기본적으로 eBGP 세션의 경우 멀티캐스트 특성이 제거됩니다. 따라서 PE 경로가 iBGP에서 eBGP로 유니캐스트 경로를 CE 경로로 광고할 때 멀티캐스트 특성이 없습니다.

PE 라우터는 iBGP를 통해 유니캐스트 접두사를 광고할 때 EC(Extended Community) VRF Route Import(VRF-RI) 및 EC Source-AS를 연결합니다. 다른 PE 라우터는 eBGP에서 이러한 경로를 전파하기 전에 이러한 경로를 분리합니다.

eBGP 세션이 두 ASBR 사이에 있는 경우 Inter-AS MPLS VPN 및 Inter-AS mVPN이 있습니다. 이 경우 멀티캐스트 특성을 유지할 수 있습니다. 기본 동작은 eBGP 세션에서 제거하는 것이므로 두 ASBR 간의 eBGP 세션에서 send-multicast-attributes 명령을 구성해야 합니다.

RR이 있는 경우 iBGP-iBGP 전파가 있을 수 있습니다. 이는 Seamless MPLS의 inline-ABR(next-hop-self)에 해당됩니다. 기본 동작은 iBPG 세션에 대한 멀티캐스트 특성을 유지하는 것이므로 inline-ABR에서 이를 제거하려면 send-multicast-attributes-disable 명령을 사용해야 합니다.

구성 변경

라우터 BGP의 AF(주소군) ipv4 mVPN 아래에 global-table-multicast를 구성해야 합니다. 이렇게 하면 all-zero RD 및 all-ones RD의 작업이 허용됩니다.

글로벌 컨텍스트에서 AF ipv4의 멀티캐스트 라우팅 아래에 import-rt 및 export-rt를 구성해야 합니다. 이는 GTM에 VRF가 없기 때문에 VRF에 대해 구성된 RT가 더 이상 없기 때문입니다. 이러한 RT는 일반 mVPN에 사용되는 RT와 겹치지 않아야 합니다.

이제 라우터 pim 명령(rpf topology 및 mdt 명령)이 전역 컨텍스트에서 구성됩니다.

이제 multicast-routing 명령(bgp auto-discovery 및 mdt 명령)이 전역 컨텍스트에서 구성됩니다.

경로 알림

보더 라우터 간에는 소스 접두사를 광고하는 iBGP가 있습니다. 인그레스 보더 라우터가 소스 접두사를 어떻게 알 수 있습니까? 세 가지 가능성이 있습니다.

그림 3은 이 세 가지 가능한 시나리오를 보여 줍니다.

이미지 3

1. 보더 라우터가 PE에서 비 BGP 접두사로 접두사를 받았습니다. 보더 라우터는 이러한 접두사를 BGP에 재배포해야 합니다. 이 보더 라우터는 멀티캐스트 특성을 추가합니다.

2. 보더 라우터에는 PE 라우터에 대한 eBGP 세션이 있습니다. 보더 라우터는 iBGP를 통해 접두사를 다른 보더 라우터로 전파하기 전에 멀티캐스트 특성을 추가합니다. eBGP 세션을 통해 수신된 접두사에 이미 멀티캐스트 특성이 있는 경우 그대로 유지되고 전달됩니다. 보더 라우터는 덮어쓰지 않습니다.

3. 인그레스 보더 라우터는 iBGP에서 소스 접두사를 학습합니다. 이 경우 인그레스 보더 라우터는 RR입니다. 이 시나리오는 경계 라우터가 ABR인 Seamless MPLS에서 사용됩니다.

보더 라우터가 다른 보더 라우터에서 수신된 iBGP 접두사를 광고할 때 PE 라우터로 접두사를 보내기 전에 멀티캐스트 특성을 분리합니다. 이러한 상황이 발생하려면 경계 라우터에 라우터 BGP 아래에서 send-multicast-attributes disable 명령이 있어야 합니다.

예

몇 가지 예를 들어보겠습니다. 첫 번째 예는 프로파일 12를 GTM 구축으로 변환하는 것으로 시작합니다.

예 1: Profile 12: Default MDT - mLDP - P2MP - BGP-AD - BGP C-mcast Signaling

이미지 4는 이 네트워크를 보여줍니다. CE 라우터를 향하는 PE 라우터에 VRF가 없습니다.

이미지 4

내부 코어 네트워크는 mLDP를 실행합니다. 외부 코어 네트워크는 PIM을 실행합니다. 따라서 PIM을 mLDP 코어에 연결하는 보더 라우터는 PIM을 mLDP로 또는 그 반대로 변환해야 합니다.

소스가 보더 라우터 C-PE2에서 IGP 경로로 학습될 수 없습니다. IGP는 ISIS입니다. 이 경우, 보더 라우터의 RPF는 ISIS 경로를 사용하며, 이는 P1을 가리킵니다. 이 경우 PIM 인접 관계가 없으므로 RPF가 실패합니다. C-PE2 라우터를 10.2.1.8용 RPF에 연결하고 MDT를 RPF 인터페이스로 가리키도록 할 수 있습니다. mLDP, P2MP 또는 IR을 기반으로 하는 MDT일 수 있습니다.

해결책은 SAFI 2를 사용하는 것입니다. BGP에서 소스가 AFI 2 경로로 학습되도록 사용됩니다. 따라서 Border 라우터(C-PE2)에는 Source as BGP SAFI 2 경로(show route ipv4 multicast)가 있습니다. 소스에 대한 RPF는 MDT 인터페이스를 가리킵니다.

SAFI 2를 사용하면 RPF가 변경되고 모든 소스에 대한 RPF는 이제 SAFI 2를 사용합니다. 이는 글로벌의 모든 소스에 대한 RPF가 VPN 서비스에 인그레스 PE에 대한 RPF를 포함하는 SAFI 2를 사용함을 의미합니다. SAFI 2가 활성화되면 모든 RPF는 SAFI 2를 통해서만 발생합니다. 소스만 SAFI 2에 있으므로 인그레스 PE 라우터용 RPF는 실패합니다. 이 작업을 수행하려면 라우터 rib 아래에서 rump always-replicate 명령을 구성할 수 있습니다. 전역 소스 접두사에 대한 RPF와 PE 라우터에 대한 RPF만 작동해야 하므로, rump always-replicate 명령에 대한 액세스 목록을 구성하고 전역 소스 및 액세스 목록에 인그레스 PE 라우터만 지정할 수 있습니다. 이렇게 하면 보더 라우터가 SAFI 1에 대해 BGP를 이미 실행하고 이 SAFI 1이 많은 접두사를 전달하는 경우 이러한 접두사가 모두 SAFI 2 RIB에 재배포되지 않고 메모리를 불필요하게 사용하지 않습니다.

또는 라우터 BGP 아래에서 주소군 ipv4 멀티캐스트에 대한 distance bgp 20 20 20을 구성할 수 있습니다. 이렇게 하면 전역 소스가 IGP의 AFI 2를 통해서도 학습되는 경우 iBGP의 거리와 IGP의 거리가 더 작기 때문에 학습된 BGP가 선호됩니다.

설정

보더 라우터의 컨피그레이션입니다.

hostname C-PE1

router rib

address-family ipv4

rump always-replicate

!

route-policy global-one

set core-tree mldp-default

end-policy

!

route-policy sources-in-ISIS

if destination in (10.2.1.0/24) then

pass

endif

end-policy

!

router isis 1

is-type level-1

net 49.0001.0000.0000.0003.00

address-family ipv4 unicast

metric-style wide

mpls traffic-eng level-1

mpls traffic-eng router-id Loopback0

!

interface Loopback0

address-family ipv4 unicast

!

address-family ipv4 multicast

!

!

interface GigabitEthernet0/0/0/0

address-family ipv4 unicast

!

address-family ipv4 multicast

!

!

interface GigabitEthernet0/0/0/1

address-family ipv4 unicast

!

address-family ipv4 multicast

!

!

!

router bgp 1

address-family ipv4 unicast

!

address-family ipv4 multicast

redistribute connected route-policy loopback

redistribute isis 1 route-policy sources-in-ISIS

!

address-family ipv4 mvpn

global-table-multicast

!

neighbor 10.100.1.5

remote-as 1

update-source Loopback0

address-family ipv4 multicast

next-hop-self

!

address-family ipv4 mvpn

!

!

mpls ldp

mldp

address-family ipv4

rib unicast-always

!

!

router-id 10.100.1.3

address-family ipv4

!

interface GigabitEthernet0/0/0/0

address-family ipv4

!

!

interface GigabitEthernet0/0/0/1

address-family ipv4

!

!

!

multicast-routing

address-family ipv4

interface Loopback0

enable

!

interface GigabitEthernet0/0/0/1

enable

!

mdt source Loopback0

export-rt 1:1

import-rt 1:1

bgp auto-discovery mldp

!

mdt default mldp p2mp

mdt data mldp 10 immediate-switch

!

!

router pim

address-family ipv4

rpf topology route-policy global-one

mdt c-multicast-routing bgp

interface Loopback0

enable

!

interface GigabitEthernet0/0/0/1

!

!

!

참고:mLDP를 사용하는 GTM 대신 전역 대역 내 mLDP를 수행할 수 있습니다. 오버레이 시그널링 프로토콜로 BGP를 사용하거나 플로우 집계를 위해 Default MDT를 사용하는 것이 이러한 작업을 수행하지 않는 이유입니다. GTM 모델에서는 Default 및 Data MDT를 사용할 수 있지만, Global In-band mLDP에서는 mLDP 상태당 하나의 멀티캐스트 흐름이 있습니다. 또한 GTM에서는 Sparse Mode를 훨씬 쉽게 지원하는 반면, 대역 내 mLDP에서는 제한 사항이 있습니다(예: RP가 배치된 경우). 스파스 모드는 오버레이 시그널링 프로토콜로서 PIM에서 가장 쉽게 지원됩니다.

보더 라우터에 다음 컨피그레이션이 있어야 합니다.

- AF ipv4 mvpn으로 구성된 BGP

- BGP AD 사용

- MDT가 지정되었습니다.

- 라우터 bgp에 구성된 import-rt 및 export-rt

- 라우터 bgp AF ipv4/6 mvpn에 구성된 전역 테이블 멀티캐스트

선택적으로, SAFI 2는 라우터 BGP에서 활성화해야 합니다

문제 해결

- 첫째, 경계 경로에는 경로 유형 1 경로가 있어야 합니다.

- 내부 코어의 코어 트리를 확인합니다. 여기 mLDP입니다. 그러면 mLDP 신호 처리는 괜찮은가요? 기본 MDT 및 가능한 데이터 MDT에 대한 mLDP 데이터베이스 항목을 확인합니다.

- BGP에서 소스 경로를 확인합니다.

- 이그레스 보더 라우터에서 RPF를 확인합니다.

- 보더 라우터의 BGP(route-type 6 & 7)에서 C-multicast 시그널링을 확인합니다.

인그레스 보더 라우터

인그레스 보더 라우터의 이그레스 인터페이스는 Lmdt 인터페이스입니다.

RP/0/0/CPU0:C-PE1#show mrib route 203.0.113.1 10.2.1.8

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.1.8,203.0.113.1) RPF nbr: 10.1.2.2 Flags: RPF

Up: 00:08:58

Incoming Interface List

GigabitEthernet0/0/0/1 Flags: A, Up: 00:08:58

Outgoing Interface List

Lmdtdefault Flags: F LMI MA, Up: 00:08:58

RP/0/0/CPU0:C-PE1#show mfib route 203.0.113.1 10.2.1.8

IP Multicast Forwarding Information Base

Entry flags: C - Directly-Connected Check, S - Signal, D - Drop,

IA - Inherit Accept, IF - Inherit From, EID - Encap ID,

ME - MDT Encap, MD - MDT Decap, MT - MDT Threshold Crossed,

MH - MDT interface handle, CD - Conditional Decap,

DT - MDT Decap True, EX - Extranet, RPFID - RPF ID Set,

MoFE - MoFRR Enabled, MoFS - MoFRR State, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

EG - Egress, EI - Encapsulation Interface, MI - MDT Interface,

EX - Extranet, A2 - Secondary Accept

Forwarding/Replication Counts: Packets in/Packets out/Bytes out

Failure Counts: RPF / TTL / Empty Olist / Encap RL / Other

(10.2.1.8,203.0.113.1),   Flags:

Up: 01:47:24

Last Used: 00:00:00

SW Forwarding Counts: 1197/1197/239400

SW Replication Counts: 1197/0/0

SW Failure Counts: 0/0/0/0/0

Lmdtdefault Flags:  F LMI, Up:01:47:24

GigabitEthernet0/0/0/1 Flags:  A, Up:01:47:24

RP/0/0/CPU0:C-PE1#show route ipv4 multicast

Codes: C - connected, S - static, R - RIP, B - BGP, (>) - Diversion path

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

i - ISIS, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, su - IS-IS summary null, * - candidate default

U - per-user static route, o - ODR, L - local, G  - DAGR, l - LISP

A - access/subscriber, a - Application route

M - mobile route, r - RPL, (!) - FRR Backup path

Gateway of last resort is not set

i L1 10.1.1.0/24 [255/20] via 10.1.2.2, 1d21h, GigabitEthernet0/0/0/1

C    10.1.2.0/24 is directly connected, 1d21h, GigabitEthernet0/0/0/1

L    10.1.2.3/32 is directly connected, 3d19h, GigabitEthernet0/0/0/1

i L1 10.1.3.0/24 [115/20] via 10.1.3.4, 3d13h, GigabitEthernet0/0/0/0

L    10.1.3.3/32 is directly connected, 3d19h, GigabitEthernet0/0/0/0

i L1 10.1.4.0/24 [115/20] via 10.1.3.4, 3d13h, GigabitEthernet0/0/0/0

i L1 10.1.5.0/24 [115/30] via 10.1.3.4, 3d12h, GigabitEthernet0/0/0/0

i L1 10.1.6.0/24 [255/40] via 10.1.3.4, 1d21h, GigabitEthernet0/0/0/0

i L1 10.2.1.0/24 [255/30] via 10.1.2.2, 1d21h, GigabitEthernet0/0/0/1

i L1 10.2.2.0/24 [255/50] via 10.1.3.4, 1d21h, GigabitEthernet0/0/0/0

i L1 10.100.1.1/32 [255/30] via 10.1.2.2, 1d21h, GigabitEthernet0/0/0/1

i L1 10.100.1.2/32 [255/20] via 10.1.2.2, 1d21h, GigabitEthernet0/0/0/1

L    10.100.1.3/32 is directly connected, 1d21h, Loopback0

i L1 10.100.1.4/32 [115/20] via 10.1.3.4, 3d13h, GigabitEthernet0/0/0/0

i L1 10.100.1.5/32 [115/30] via 10.1.3.4, 3d12h, GigabitEthernet0/0/0/0

i L1 10.100.1.6/32 [255/40] via 10.1.3.4, 1d21h, GigabitEthernet0/0/0/0

i L1 10.100.1.7/32 [255/50] via 10.1.3.4, 1d21h, GigabitEthernet0/0/0/0

RP/0/0/CPU0:C-PE1#show pim rpf 10.2.1.8

Table: IPv4-Multicast-default

* 10.2.1.8/32 [255/30]

via GigabitEthernet0/0/0/1 with rpf neighbor 10.1.2.2

이그레스 보더 라우터

소스 경로의 경우 VRF Route-Import EC 및 Source-AS EC는 IPv4 유니캐스트 또는 멀티캐스트 접두사에 연결됩니다. 여기서 IPv4 멀티캐스트 경로입니다.

RP/0/0/CPU0:C-PE2#show bgp ipv4 multicast 10.2.1.0/24

BGP routing table entry for 10.2.1.0/24

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 32          32

Last Modified: Sep 12 08:34:56.441 for 15:09:58

Paths: (1 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.3 (metric 30) from 10.100.1.3 (10.100.1.3)

Origin incomplete, metric 30, localpref 100, valid, internal, best, group-best

Received Path ID 0, Local Path ID 1, version 32

Extended community: VRF Route Import:10.100.1.3:0 Source AS:1:0

참고: 어떤 이유로든 VRF RI EC 및 Source AS EC가 없는 경우 이그레스(Egress) 보더 라우터의 RPF가 실패합니다.

경로에 다음 EC가 없는 경우의 예:

RP/0/0/CPU0:C-PE2#show bgp ipv4 multicast 10.2.1.0/24

BGP routing table entry for 10.2.1.0/24

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                277         277

Last Modified: Sep 13 04:08:37.441 for 00:00:02

Paths: (1 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.3 (metric 30) from 10.100.1.3 (10.100.1.1)

Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best

Received Path ID 0, Local Path ID 1, version 277

Originator: 10.100.1.1, Cluster list: 10.100.1.3

이로 인해 RPF는 실패합니다.

RP/0/0/CPU0:C-PE2#show pim rpf 10.2.1.8

Table: IPv4-Multicast-default

* 10.2.1.8/32 [200/30]

via Null with rpf neighbor 0.0.0.0

RP/0/0/CPU0:C-PE2#show bgp ipv4 mvpn

BGP router identifier 10.100.1.5, local AS number 1

BGP generic scan interval 60 secs

Non-stop routing is enabled

BGP table state: Active

Table ID: 0x0   RD version: 0

BGP main routing table version 56

BGP NSR Initial initsync version 4 (Reached)

BGP NSR/ISSU Sync-Group versions 0/0

Global table multicast is enabled

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 0:0:0

*>i[1][10.100.1.3]/40 10.100.1.3                    100      0 i

*> [1][10.100.1.5]/40 0.0.0.0                                0 i

*>i[3][32][10.2.1.8][32][203.0.113.1][10.100.1.3]/120

10.100.1.3                    100      0 i

*> [7][0:0:0][1][32][10.2.1.8][32][203.0.113.1]/184

0.0.0.0                                0 i

Processed 4 prefixes, 4 paths

rd all-zero-rd 키워드와 함께 명령을 지정할 수 있습니다. 그런 다음 모든 항목이 모두 0인 RD로 표시됩니다.

RP/0/0/CPU0:C-PE2#show bgp ipv4 mvpn rd all-zero-rd

BGP router identifier 10.100.1.5, local AS number 1

BGP generic scan interval 60 secs

Non-stop routing is enabled

BGP table state: Active

Table ID: 0x0   RD version: 0

BGP main routing table version 56

BGP NSR Initial initsync version 4 (Reached)

BGP NSR/ISSU Sync-Group versions 0/0

Global table multicast is enabled

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 0:0:0

*>i[1][10.100.1.3]/40 10.100.1.3                    100      0 i

*> [1][10.100.1.5]/40 0.0.0.0                                0 i

*>i[3][32][10.2.1.8][32][203.0.113.1][10.100.1.3]/120

10.100.1.3                    100      0 i

*> [7][0:0:0][1][32][10.2.1.8][32][203.0.113.1]/184

0.0.0.0                                0 i

Processed 4 prefixes, 4 paths

유형 1 경로:

RP/0/0/CPU0:C-PE2#show bgp ipv4 mvpn rd all-zero-rd [1][10.100.1.3]/40

BGP routing table entry for [1][10.100.1.3]/40, Route Distinguisher: 0:0:0

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 43          43

Last Modified: Sep  8 07:42:43.786 for 1d17h

Paths: (1 available, best #1, not advertised to EBGP peer)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.3 (metric 30) from 10.100.1.3 (10.100.1.3)

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported

Received Path ID 0, Local Path ID 1, version 43

Community: no-export

Extended community: RT:1:1

PMSI: flags 0x00, type 2, label 0, ID 0x060001040a640103000701000400000001

Source AFI: IPv4 MVPN, Source VRF: default, Source Route Distinguisher: 0:0:0

PMSI가 디코딩되었습니다.

PMSI: 플래그 0x00, 유형 2, 레이블 0, ID 0x060001040a640103000701000400000001

이전 명령의 디코딩된 PMSI는 다음과 같습니다.

The PMSI Tunnel Type is : 2 : mLDP P2MP LSP

The PMSI Tunnel ID is : 0x060001040a640103000701000400000001

FEC Element

FEC Element Type : 6 : P2MP

AF Type : 1

Address Length : 4

Root Node Address : 10.100.1.3

MP Opaque Length : 7

MP Opaque Value Element

Opaque Type : 1 : LSP ID Global

Opaque Length : 4

Global ID (Generic LSP Identifier) : 1

상기 데이터 MDT는 C-PE1로부터 route-type 3 AD 경로에 의해 시그널링된다.

RP/0/0/CPU0:C-PE2#show bgp ipv4 mvpn rd all-zero-rd [3][32][10.2.1.8] [32][203.0.113.1][10.100.1.3]/120

BGP routing table entry for [3][32][10.2.1.8][32][203.0.113.1][10.100.1.3]/120, Route Distinguisher: 0:0:0

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 56          56

Last Modified: Sep 10 00:51:52.786 for 00:04:57

Paths: (1 available, best #1, not advertised to EBGP peer)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.3 (metric 30) from 10.100.1.3 (10.100.1.3)

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported

Received Path ID 0, Local Path ID 1, version 56

Community: no-export

Extended community: RT:1:1

PMSI: flags 0x00, type 2, label 0, ID 0x060001040a640103000701000400000007

Source AFI: IPv4 MVPN, Source VRF: default, Source Route Distinguisher: 0:0:0

디코딩된 PMSI는 Global LSP Identifier(전역 LSP 식별자)가 7임을 보여줍니다. 그런 다음 이 데이터 MDT의 mLDP 데이터베이스 항목에 사용됩니다.

PMSI: 플래그 0x00, 유형 2, 레이블 0, ID 0x060001040a640103000701000400000007

이전 명령의 디코딩된 PMSI는 다음과 같습니다.

The PMSI Tunnel Type is : 2 : mLDP P2MP LSP

The PMSI Tunnel ID is : 0x060001040a640103000701000400000007

FEC Element

FEC Element Type : 6 : P2MP

AF Type : 1

Address Length : 4

Root Node Address : 10.100.1.3

MP Opaque Length : 7

MP Opaque Value Element

Opaque Type : 1 : LSP ID Global

Opaque Length : 4

Global ID (Generic LSP Identifier) : 7

다음 명령을 사용하여 인그레스 PE가 Data MDT에 대해 광고하는 내용을 확인할 수 있습니다. 이 명령은 GTM이므로 다음 명령에는 VRF가 없습니다.

RP/0/0/CPU0:C-PE2#show pim mdt mldp remote

Core                   MDT              Cache Max DIP Local VRF Routes

Identifier             Source           Count Agg     Entry Using Cache

[global-id 7]          10.100.1.3       1     255 N   N     1

RP/0/0/CPU0:C-PE2#show pim mdt mldp cache

Core Source      Cust (Source, Group)                Core Data        Expires

10.100.1.3       (10.2.1.8, 203.0.113.1)               [global-id 7]    never

Route-type 7에 PMSI가 연결되어 있지 않습니다.

RP/0/0/CPU0:C-PE2#show bgp ipv4 mvpn rd all-zero-rd [7][0:0:0][1][32][10.2.1.8][32][203.0.113.1]/184

BGP routing table entry for [7][0:0:0][1][32][10.2.1.8][32][203.0.113.1]/184, Route Distinguisher: 0:0:0

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 52          52

Last Modified: Sep 10 00:51:51.786 for 00:07:37

Paths: (1 available, best #1)

Advertised to peers (in unique update groups):

10.100.1.3

Path #1: Received by speaker 0

Advertised to peers (in unique update groups):

10.100.1.3

Local

0.0.0.0 from 0.0.0.0 (10.100.1.5)

Origin IGP, localpref 100, valid, redistributed, best, group-best, import-candidate

Received Path ID 0, Local Path ID 1, version 52

Extended community: RT:10.100.1.3:0

RT는 업스트림 PE 라우터를 식별합니다. 전역 관리자 필드는 업스트림 PE의 IP 주소입니다. GTM의 경우 로컬 관리자 필드가 0으로 설정됩니다.

RP/0/0/CPU0:C-PE2#show mrib route 203.0.113.1 10.2.1.8

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.1.8,203.0.113.1) RPF nbr: 10.100.1.3 Flags: RPF

Up: 00:52:34

Incoming Interface List

Lmdtdefault Flags: A LMI, Up: 00:52:34

Outgoing Interface List

GigabitEthernet0/0/0/0 Flags: F NS, Up: 00:52:34

수신 인터페이스는 Lmdt 인터페이스여야 합니다.

RP/0/0/CPU0:C-PE2#show mfib route 203.0.113.1 10.2.1.8

IP Multicast Forwarding Information Base

Entry flags: C - Directly-Connected Check, S - Signal, D - Drop,

IA - Inherit Accept, IF - Inherit From, EID - Encap ID,

ME - MDT Encap, MD - MDT Decap, MT - MDT Threshold Crossed,

MH - MDT interface handle, CD - Conditional Decap,

DT - MDT Decap True, EX - Extranet, RPFID - RPF ID Set,

MoFE - MoFRR Enabled, MoFS - MoFRR State, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

EG - Egress, EI - Encapsulation Interface, MI - MDT Interface,

EX - Extranet, A2 - Secondary Accept

Forwarding/Replication Counts: Packets in/Packets out/Bytes out

Failure Counts: RPF / TTL / Empty Olist / Encap RL / Other

(10.2.1.8,203.0.113.1),   Flags:

Up: 02:31:00

Last Used: never

SW Forwarding Counts: 0/2037/407400

SW Replication Counts: 0/2037/407400

SW Failure Counts: 0/0/0/0/0

Lmdtdefault Flags:  A LMI, Up:02:31:00

GigabitEthernet0/0/0/0 Flags:  NS EG, Up:02:31:00

SAFI 2 경로를 확인합니다.

RP/0/0/CPU0:C-PE2#show route ipv4 multicast

Codes: C - connected, S - static, R - RIP, B - BGP, (>) - Diversion path

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP

i - ISIS, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, su - IS-IS summary null, * - candidate default

U - per-user static route, o - ODR, L - local, G  - DAGR, l - LISP

A - access/subscriber, a - Application route

M - mobile route, r - RPL, (!) - FRR Backup path

Gateway of last resort is not set

i L1 10.1.2.0/24 [115/30] via 10.1.4.4, 3d12h, GigabitEthernet0/0/0/1

i L1 10.1.3.0/24 [115/20] via 10.1.4.4, 3d12h, GigabitEthernet0/0/0/1

C    10.1.4.0/24 is directly connected, 1d21h, GigabitEthernet0/0/0/1

L    10.1.4.5/32 is directly connected, 3d12h, GigabitEthernet0/0/0/1

C    10.1.5.0/24 is directly connected, 1d21h, GigabitEthernet0/0/0/0

L    10.1.5.5/32 is directly connected, 3d12h, GigabitEthernet0/0/0/0

B    10.2.1.0/24 [200/30] via 10.100.1.3, 1d17h

i L1 10.100.1.3/32 [115/30] via 10.1.4.4, 3d12h, GigabitEthernet0/0/0/1

i L1 10.100.1.4/32 [115/20] via 10.1.4.4, 3d12h, GigabitEthernet0/0/0/1

L    10.100.1.5/32 is directly connected, 1d21h, Loopback0

소스의 경로는 SAFI 2(AF IPv4 멀티캐스트)입니다. RIB AF IPv4 멀티캐스트에 있기 때문입니다.

Next-hop은 C-PE1의 루프백인 10.100.1.3입니다. 해당 라우터는 라우터 BGP의 AF ipv4 멀티캐스트 아래에 next-hop-self가 있기 때문입니다.

RP/0/0/CPU0:C-PE2#show bgp ipv4 multicast 10.2.1.0/24

BGP routing table entry for 10.2.1.0/24

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 34          34

Last Modified: Sep  8 07:42:18.786 for 1d17h

Paths: (1 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.3 (metric 30) from 10.100.1.3 (10.100.1.3)

Origin incomplete, metric 30, localpref 100, valid, internal, best, group-best

Received Path ID 0, Local Path ID 1, version 34

Extended community: VRF Route Import:10.100.1.3:0 Source AS:1:0

소스에 대한 RPF는 Lmdt 인터페이스 및 이 인터페이스의 PIM 네이버를 가리킵니다. RPF는 IPv4 멀티캐스트 테이블에서 수행됩니다.

RP/0/0/CPU0:C-PE2#show pim rpf 10.2.1.8

Table: IPv4-Multicast-default

* 10.2.1.8/32 [200/30]

via Lmdtdefault with rpf neighbor 10.100.1.3

인그레스 보더 라우터가 PE 라우터로 인식되는지 확인합니다.

RP/0/0/CPU0:C-PE2#show pim pe

MVPN Provider Edge Router information

PE Address : 10.100.1.3 (0x1071da64)

RD: 0:0:0 (valid), RIB_HLI 0, RPF-ID 3, Remote RPF-ID 0, State: 1, S-PMSI: 2

PPMP_LABEL: 0, MS_PMSI_HLI: 0x00000, Bidir_PMSI_HLI: 0x00000, MLDP-added: [RD 0, ID 0, Bidir ID 0, Remote Bidir ID 0], Counts(SHR/SRC/DM/DEF-MD): 0, 1, 0, 0, Bidir: GRE RP Count 0, MPLS RP Count 0RSVP-TE added: [Leg 0, Ctrl Leg 0, Part tail 0 Def Tail 0, IR added: [Def Leg 0, Ctrl Leg 0, Part Leg 0, Part tail 0, Part IR Tail Label 0

bgp_i_pmsi: 1,0/0 , bgp_ms_pmsi/Leaf-ad: 0/0, bgp_bidir_pmsi: 0, remote_bgp_bidir_pmsi: 0, PMSIs: I 0x106a2d50, 0x0, MS 0x0, Bidir Local: 0x0, Remote: 0x0, BSR/Leaf-ad 0x0/0, Autorp-disc/Leaf-ad 0x0/0, Autorp-ann/Leaf-ad 0x0/0

IIDs: I/6: 0x1/0x0, B/R: 0x0/0x0, MS: 0x0, B/A/A: 0x0/0x0/0x0

Bidir RPF-ID: 4, Remote Bidir RPF-ID: 0

I-PMSI:   MLDP-P2MP, Opaque: [global-id 1] (0x106a2d50)

I-PMSI rem:  (0x0)

MS-PMSI:  (0x0)

Bidir-PMSI:  (0x0)

Remote Bidir-PMSI:  (0x0)

BSR-PMSI:  (0x0)

A-Disc-PMSI:  (0x0)

A-Ann-PMSI:  (0x0)

RIB Dependency List: 0x1016446c

Bidir RIB Dependency List: 0x0

Sources: 1, RPs: 0, Bidir RPs: 0

Inclusive PMSI(I-PMSI)가 있습니다.

mLDP 데이터베이스의 두 보더 라우터 간에 기본 MDT를 형성하는 두 개의 P2MP mLDP 항목이 표시됩니다. 또한 C-PE1을 데이터 MDT의 루트로 사용하는 P2MP mLDP 항목이 하나 있습니다.

RP/0/0/CPU0:C-PE2#show mpls mldp database brief

LSM ID   Type    Root              Up Down Decoded Opaque Value

0x00007  P2MP    10.100.1.3        1  1    [global-id 1]

0x00008  P2MP    10.100.1.5        0  2    [global-id 1]

0x0000B  P2MP    10.100.1.3        1  1    [global-id 7]

예 2: Profile 20 Default MDT - P2MP-TE - BGP-AD - PIM - C-mcast Signaling

이는 예 1과 매우 유사합니다. 이제 코어에 P2MP TE가 있습니다. 터널은 자동 터널로 설정됩니다. 테일 엔드 라우터는 BGP AD를 통해 검색됩니다. 예 1의 또 다른 차이점은 오버레이 프로토콜이 이제 PIM이라는 것입니다. 이미지 5를 보십시오.

이미지 5

설정

보더 라우터의 컨피그레이션입니다.

hostname C-PE1

logging console debugging

router rib

address-family ipv4

rump always-replicate

!

!

line default

timestamp disable

exec-timeout 0 0

!

ipv4 unnumbered mpls traffic-eng Loopback0

interface Loopback0

ipv4 address 10.100.1.3 255.255.255.255

!

interface MgmtEth0/0/CPU0/0

shutdown

!

interface GigabitEthernet0/0/0/0

ipv4 address 10.1.3.3 255.255.255.0

load-interval 30

!

interface GigabitEthernet0/0/0/1

ipv4 address 10.1.2.3 255.255.255.0

!

interface GigabitEthernet0/0/0/2

shutdown

!

interface GigabitEthernet0/0/0/3

shutdown

!

interface GigabitEthernet0/0/0/4

shutdown

!

interface GigabitEthernet0/0/0/5

shutdown

!

interface GigabitEthernet0/0/0/6

shutdown

!

interface GigabitEthernet0/0/0/7

shutdown

!

interface GigabitEthernet0/0/0/8

shutdown

!

route-policy loopback

if destination in (10.100.1.3/32) then

pass

endif

end-policy

!

route-policy global-one

set core-tree p2mp-te-default

end-policy

!

route-policy sources-in-ISIS

if destination in (10.2.1.0/24) then

pass

endif

end-policy

!

router isis 1

is-type level-1

net 49.0001.0000.0000.0003.00

address-family ipv4 unicast

metric-style wide

mpls traffic-eng level-1

mpls traffic-eng router-id Loopback0

!

interface Loopback0

address-family ipv4 unicast

!

address-family ipv4 multicast

!

!

interface GigabitEthernet0/0/0/0

address-family ipv4 unicast

!

address-family ipv4 multicast

!

!

interface GigabitEthernet0/0/0/1

address-family ipv4 unicast

!

address-family ipv4 multicast

!

!

!

router bgp 1

address-family ipv4 unicast

!

address-family ipv4 multicast

redistribute connected route-policy loopback

redistribute ospf 1

redistribute isis 1 route-policy sources-in-ISIS

!

address-family ipv4 mvpn

global-table-multicast

!

neighbor 10.100.1.5

remote-as 1

update-source Loopback0

address-family ipv4 multicast

next-hop-self

!

address-family ipv4 mvpn

!

!

!

mpls oam

!

rsvp

interface GigabitEthernet0/0/0/0

bandwidth 1000000

!

interface GigabitEthernet0/0/0/1

bandwidth 1000000

!

!

mpls traffic-eng

interface GigabitEthernet0/0/0/0

auto-tunnel backup

!

!

interface GigabitEthernet0/0/0/1

auto-tunnel backup

!

!

auto-tunnel p2mp

tunnel-id min 1000 max 2000

!

!

mpls ldp

log

neighbor

!

mldp

logging notifications

address-family ipv4

rib unicast-always

!

!

router-id 10.100.1.3

address-family ipv4

!

interface GigabitEthernet0/0/0/0

address-family ipv4

!

!

interface GigabitEthernet0/0/0/1

address-family ipv4

!

!

!

multicast-routing

address-family ipv4

interface Loopback0

enable

!

interface GigabitEthernet0/0/0/1

enable

!

mdt source Loopback0

export-rt 1:1

import-rt 1:1

bgp auto-discovery p2mp-te

!

mdt default p2mp-te

mdt data p2mp-te 100 immediate-switch

!

!

router pim

address-family ipv4

rpf topology route-policy global-one

interface Loopback0

enable

!

interface GigabitEthernet0/0/0/1

!

!

!

문제 해결

인그레스 보더 라우터

RD all-zero가 있는지 확인합니다. P2MP TE 터널을 기반으로 P2MP TE를 구축하려면 route-type 1 경로가 있어야 합니다.

RP/0/0/CPU0:C-PE1#show bgp ipv4 mvpn rd all-zero-rd

BGP router identifier 10.100.1.3, local AS number 1

BGP generic scan interval 60 secs

Non-stop routing is enabled

BGP table state: Active

Table ID: 0x0   RD version: 0

BGP main routing table version 140

BGP NSR Initial initsync version 4 (Reached)

BGP NSR/ISSU Sync-Group versions 0/0

Global table multicast is enabled

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 0:0:0

*> [1][10.100.1.3]/40 0.0.0.0                                0 i

*>i[1][10.100.1.5]/40 10.100.1.5                    100      0 i

Processed 2 prefixes, 2 paths

자세한 내용은 route-type 1 경로를 확인하십시오.

RP/0/0/CPU0:C-PE1#show bgp ipv4 mvpn rd all-zero-rd [1][10.100.1.5]/40

BGP routing table entry for [1][10.100.1.5]/40, Route Distinguisher: 0:0:0

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                135         135

Last Modified: Sep 12 08:21:42.207 for 00:20:14

Paths: (1 available, best #1, not advertised to EBGP peer)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.5 (metric 30) from 10.100.1.5 (10.100.1.5)

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported

Received Path ID 0, Local Path ID 1, version 135

Community: no-export

Extended community: RT:1:1

PMSI: flags 0x00, type 1, label 0, ID 0x000003e8000003e80a640105

Source AFI: IPv4 MVPN, Source VRF: default, Source Route Distinguisher: 0:0:0

MDT Default(MDT 기본값)에서 PIM 인접 디바이스를 확인합니다.

RP/0/0/CPU0:C-PE1#show pim neighbor

PIM neighbors in VRF default

Flag: B - Bidir capable, P - Proxy capable, DR - Designated Router,

E - ECMP Redirect capable

* indicates the neighbor created for this router

Neighbor Address             Interface              Uptime    Expires  DR pri   Flags

10.1.2.2                     GigabitEthernet0/0/0/1 6d02h     00:01:16 1      B

10.1.2.3*                    GigabitEthernet0/0/0/1 6d02h     00:01:15 1 (DR) B E

10.100.1.3*                  Loopback0              6d02h     00:01:32 1 (DR) B E

10.100.1.3*                  Tmdtdefault            00:36:21  00:01:40 1

10.100.1.5                   Tmdtdefault            00:17:37  00:01:26 1 (DR)

MRIB 경로를 확인합니다. 발신 인터페이스는 Tmdt여야 합니다.

RP/0/0/CPU0:C-PE1#show mrib route 203.0.113.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.1.8,203.0.113.1) RPF nbr: 10.1.2.2 Flags: RPF

Up: 00:09:10

Incoming Interface List

GigabitEthernet0/0/0/1 Flags: A, Up: 00:09:10

Outgoing Interface List

Tmdtdefault Flags: F NS TMI, Up: 00:09:10

헤드 엔드 라우터로 보더 라우터당 하나의 P2MP TE 터널이 있는지 확인합니다.

RP/0/0/CPU0:C-PE1#show mpls traffic-eng tunnels tabular

Tunnel   LSP     Destination          Source           FRR  LSP  Path

Name    ID         Address         Address  State  State Role  Prot

----------------- ----- --------------- --------------- ------ ------ ---- -----

^tunnel-mte1001 10004      10.100.1.5      10.100.1.3     up  Inact Head

auto_C-PE2_mt1000 10005      10.100.1.3      10.100.1.5     up  Inact Tail

^ = automatically created P2MP tunnel

Data MDT가 트리거되면 경로 유형 3 및 4 경로가 제공됩니다.

RP/0/0/CPU0:C-PE1#show bgp ipv4 mvpn rd all-zero-rd

BGP router identifier 10.100.1.3, local AS number 1

BGP generic scan interval 60 secs

Non-stop routing is enabled

BGP table state: Active

Table ID: 0x0   RD version: 0

BGP main routing table version 143

BGP NSR Initial initsync version 4 (Reached)

BGP NSR/ISSU Sync-Group versions 0/0

Global table multicast is enabled

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 0:0:0

*> [1][10.100.1.3]/40 0.0.0.0                                0 i

*>i[1][10.100.1.5]/40 10.100.1.5                    100      0 i

*> [3][32][10.2.1.8][32][203.0.113.1][10.100.1.3]/120

0.0.0.0                                0 i

*>i[4][3][0:0:0][32][10.2.1.8][32][203.0.113.1][10.100.1.3][10.100.1.5]/224

10.100.1.5                    100      0 i

Processed 4 prefixes, 4 paths

route-type 3는 모든 테일 엔드 라우터에 데이터 MDT가 다음과 같이 신호를 받음을 알립니다.

RP/0/0/CPU0:C-PE1#show bgp ipv4 mvpn rd all-zero-rd [3][32][10.2.1.8][32][203.0.113.1][10.100.1.3]/120

BGP routing table entry for [3][32][10.2.1.8][32][203.0.113.1][10.100.1.3]/120, Route Distinguisher: 0:0:0

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                141         141

Last Modified: Sep 12 08:46:17.207 for 00:00:41

Paths: (1 available, best #1, not advertised to EBGP peer)

Advertised to peers (in unique update groups):

10.100.1.5

Path #1: Received by speaker 0

Advertised to peers (in unique update groups):

10.100.1.5

Local

0.0.0.0 from 0.0.0.0 (10.100.1.3)

Origin IGP, localpref 100, valid, redistributed, best, group-best, import-candidate

Received Path ID 0, Local Path ID 1, version 141

Community: no-export

Extended community: RT:1:1

PMSI: flags 0x01, type 1, label 0, ID 0x000003ed000003ed0a640103

PMSI가 디코딩되었습니다.

PMSI: 플래그 0x01, 유형 1, 레이블 0, ID 0x000003ed000003ed0a640103

이전 명령의 디코딩된 PMSI는 다음과 같습니다.

The PMSI Tunnel Type is : 1 : RSVP-TE P2MP LSP

The PMSI Tunnel ID is : 0x000003ed000003ed0a640103

Extended Tunnel ID : 1005

Reserved part (should be zero): 0X0000

Tunnel ID : 1005

P2MP ID : 10.100.1.3

또한 다음 항목에서도 확인할 수 있습니다.

RP/0/0/CPU0:C-PE1#show pim mdt cache

Core Source      Cust (Source, Group)                Core Data        Expires

10.100.1.3       (10.2.1.8, 203.0.113.1)               [p2mp 6]         never

Leaf AD:   10.100.1.5

route-type 4는 어떤 라우터가 종단(tail end)인지 헤드 엔드 라우터에 알립니다.

RP/0/0/CPU0:C-PE1#show bgp ipv4 mvpn rd all-zero-rd [4][3][0:0:0][32][10.2.1.8][32][203.0.113.1][10.100.1.3][10.100.1.5]/224

BGP routing table entry for [4][3][0:0:0][32][10.2.1.8][32][203.0.113.1][10.100.1.3][10.100.1.5]/224, Route Distinguisher: 0:0:0

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                143         143

Last Modified: Sep 12 08:46:17.207 for 00:01:25

Paths: (1 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.100.1.5 (metric 30) from 10.100.1.5 (10.100.1.5)

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported

Received Path ID 0, Local Path ID 1, version 143

Extended community: SEG-NH:10.100.1.5:0 RT:10.100.1.3:0

Source AFI: IPv4 MVPN, Source VRF: default, Source Route Distinguisher: 0:0:0

P2MP TE 터널의 데이터 MDT가 설정되어 있는지 확인합니다.

RP/0/0/CPU0:C-PE1#show mpls traffic-eng tunnels tabular

Tunnel   LSP     Destination          Source           FRR  LSP  Path

Name    ID         Address         Address  State  State Role  Prot

----------------- ----- --------------- --------------- ------ ------ ---- -----

^tunnel-mte1001 10004      10.100.1.5      10.100.1.3     up  Inact Head

^tunnel-mte1005 10002      10.100.1.5      10.100.1.3     up  Inact Head

auto_C-PE2_mt1000 10005      10.100.1.3      10.100.1.5     up  Inact Tail

^ = automatically created P2MP tunnel

이그레스 보더 라우터

수신 인터페이스가 Tmdt 인터페이스인지 확인합니다.

RP/0/0/CPU0:C-PE2#show mrib route 203.0.113.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.1.8,203.0.113.1) RPF nbr: 10.100.1.3 Flags: RPF

Up: 00:18:03

Incoming Interface List

Tmdtdefault Flags: A TMI, Up: 00:18:00

Outgoing Interface List

GigabitEthernet0/0/0/0 Flags: F NS, Up: 00:18:03

이그레스 보더 라우터의 RPF는 인그레스 보더 라우터를 가리킵니다. 인그레스 인터페이스는 Tmdtdefault입니다. TE 터널의 T:

RP/0/0/CPU0:C-PE2#show pim rpf 10.2.1.8

Table: IPv4-Multicast-default

* 10.2.1.8/32 [200/30]

via Tmdtdefault with rpf neighbor 10.100.1.3

예 3: 예 1과 같이 PE와 보더 라우터 간에 iBGP가 있습니다.

이미지 6을 보십시오.

이미지 6

한쪽에는 mLDP가 있고 다른 한쪽에는 PIM이 있으며 GTM이 있는 하나의 코어 네트워크가 있는 비대칭 설정이 표시됩니다. 이는 코어 트리의 마이그레이션 중에 발생할 수 있습니다. C-PE1 라우터는 BGP IPv4 멀티캐스트 및 BGP IPv4 mVPN에 대한 RR이어야 합니다. 이제 예 1의 C-PE1에서 사용했던 PIM 및 멀티캐스트 라우팅에 대한 컨피그레이션이 PE1에서 필요합니다.

예 4: 원활한 MPLS

원활한 MPLS(Unified MPLS)를 통해 GTM을 구축합니다. PE 라우터는 Cisco IOS XR 라우터만 수행할 수 있는 GTM을 이해해야 하며, PE 라우터는 PIM 도메인에서 PIM RPF-Proxy 벡터를 시작해야 합니다. P 라우터가 프록시 IP 주소(ABR)로 RPF를 수행하려면 이 PIM RPF-Proxy 벡터가 필요합니다. Cisco IOS XR 5.3.2부터 Cisco IOS XR은 전역 컨텍스트에서 RPF-Proxy Vector를 시작할 수 있습니다. 따라서 GTM은 RPF-Proxy Vector를 가질 수 있습니다.

PIM RPF-Proxy Vector를 시작하려면 PE 라우터에 다음과 같은 컨피그레이션이 있어야 합니다.

router pim

address-family [ipv4|ipv6]

rpf-vector

!

!

참고: PIM RPF-Proxy Vector(P 라우터가 반드시 해야 하는 작업)를 해석하기 위한 지원이 Cisco IOS XR 이전 릴리스에 도입되었습니다.

이를 통해 원활한 MPLS를 통해 GTM을 구축할 수 있습니다.