소개
이 문서에서는 VRF(Virtual Routing and Forwarding) 소스의 소스에서 들어오는 멀티캐스트 스트림을 전달할 수 있으며 유니캐스트 간 VRF 경로 누출을 수행하지 않고 VRF 수신기의 사용자로 이동하는 방법에 대해 설명합니다.
사전 요구 사항
요구 사항
Cisco에서는 PIM 기능 및 ASM에 대해 알고 있는 것이 좋습니다.
사용되는 구성 요소
이 문서의 정보는 ASR1000을 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 이해해야 합니다.
네트워크 다이어그램
구성
소스에서 UDP 멀티캐스트 스트림을 생성합니다.
Source#
ip sla 1
udp-echo 239.1.1.1 2000 source-ip 10.1.1.1
ip sla schedule 1 life forever start-time now
수신기는 IGMP로 구성되고 IGMP 멤버십 보고서를 전송합니다.
ASR1000 라우터는 inter-vrf 멀티캐스트 트래픽 포워딩을 수행합니다. VRF 'source'의 루프백 1은 두 VRF의 RP입니다.
ASR1000#
ip vrf source
rd 1:1
!
ip vrf receiver
rd 2:2
!
ip multicast-routing vrf source distributed
ip multicast-routing vrf receiver distributed
ip pim vrf source rp-address 1.1.1.1
ip pim vrf receiver rp-address 1.1.1.1
interface Loopback1
ip vrf forwarding source
ip address 1.1.1.1 255.255.255.255
ip pim sparse-mode
interface GigabitEthernet0/0/0
ip vrf forwarding source
ip address 10.1.1.2 255.255.255.0
ip pim sparse-mode
interface GigabitEthernet0/0/1
ip vrf forwarding receiver
ip address 20.1.1.2 255.255.255.0
ip pim sparse-mode
(S, G) 항목은 현재로서는 vrf 'receive'에서 형성되지 않습니다.
ASR1002-1#show ip mroute vrf source
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
L - Local, P - Pruned, R - RP-bit set, F - Register flag,
T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,
X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
U - URD, I - Received Source Specific Host Report,
Z - Multicast Tunnel, z - MDT-data group sender,
Y - Joined MDT-data group, y - Sending to MDT-data group,
G - Received BGP C-Mroute, g - Sent BGP C-Mroute,
N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,
Q - Received BGP S-A Route, q - Sent BGP S-A Route,
V - RD & Vector, v - Vector, p - PIM Joins on route,
x - VxLAN group, c - PFP-SA cache created entry,
* - determined by Assert
Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode
(*, 239.1.1.1), 00:05:01/stopped, RP 1.1.1.1, flags: SPF
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list: Null
(10.1.1.1, 239.1.1.1), 00:05:01/00:02:26, flags: PFT
Incoming interface: GigabitEthernet0/0/0, RPF nbr 0.0.0.0
Outgoing interface list: Null
(*, 224.0.1.40), 00:07:03/00:02:59, RP 1.1.1.1, flags: SJCL
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Loopback1, Forward/Sparse, 00:07:01/00:02:59
ASR1002-X-1#sh ip mroute vrf receiver
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
L - Local, P - Pruned, R - RP-bit set, F - Register flag,
T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,
X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
U - URD, I - Received Source Specific Host Report,
Z - Multicast Tunnel, z - MDT-data group sender,
Y - Joined MDT-data group, y - Sending to MDT-data group,
G - Received BGP C-Mroute, g - Sent BGP C-Mroute,
N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,
Q - Received BGP S-A Route, q - Sent BGP S-A Route,
V - RD & Vector, v - Vector, p - PIM Joins on route,
x - VxLAN group, c - PFP-SA cache created entry,
* - determined by Assert, # - iif-starg configured on rpf intf,
e - encap-helper tunnel flag
Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode
(*, 239.1.1.1), 00:03:23/00:02:44, RP 1.1.1.1, flags: SJC
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
GigabitEthernet0/0/1, Forward/Sparse, 00:03:23/00:02:44
이 문제를 해결하려면 RPF 검사를 통과하기 위해 VRF 선택을 수행해야 합니다.
ip access-list standard 1
permit 239.1.1.1 log
exit
ip multicast vrf receiver rpf select vrf source group-list 1
다음을 확인합니다.
이 섹션을 사용하여 컨피그레이션이 제대로 작동하는지 확인합니다.
앞서 언급한 단계를 수행한 후 수신기에서 멀티캐스트 피드를 볼 수 있습니다.
Receiver#show flow monitor test cache format table
Cache type: Normal (Platform cache)
Cache size: 200000
Current entries: 1
High Watermark: 3
Flows added: 50
Flows aged: 49
- Inactive timeout ( 15 secs) 49
IPV4 SRC ADDR IPV4 DST ADDR TRNS SRC PORT TRNS DST PORT INTF INPUT FLOW SAMPLER ID IP TOS IP PROT ip src as ip dst as ipv4 next hop addr ipv4 src mask ipv4 dst mask tcp flags intf output bytes pkts time first time last
=============== =============== ============= ============= ==================== =============== ====== ======= ========= ========= ================== ============= ============= ========= ==================== ========== ========== ============ ============
10.1.1.1 239.1.1.1 57314 1967 Gi0/0/3 0 0x00 17 0 0 0.0.0.0 /0 /0 0x00 Null 80 1 11:09:08.082 11:09:08.082
수신기의 패킷 캡처입니다.
(S, G) 항목은 VRF 수신기에서 형성됩니다.
ASR1002-1#show ip mroute vrf receiver 239.1.1.1
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local,
P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT,
M - MSDP created entry, E - Extranet, X - Proxy Join Timer Running,
A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report,
Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group,
y - Sending to MDT-data group, G - Received BGP C-Mroute, g - Sent BGP C-Mroute,
N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,
Q - Received BGP S-A Route, q - Sent BGP S-A Route, V - RD & Vector, v - Vector,
p - PIM Joins on route, x - VxLAN group, c - PFP-SA cache created entry,
* - determined by Assert Outgoing interface flags: H - Hardware switched,
A - Assert winner, p - PIM Join
Timers: Uptime/Expires
Interface state:
Interface, Next-Hop or VCD, State/Mode
(*, 239.1.1.1), 00:21:36/stopped, RP 1.1.1.1, flags: SJC
Incoming interface: Loopback1, RPF nbr 1.1.1.1, using vrf source
Outgoing interface list:
GigabitEthernet0/0/1, Forward/Sparse, 00:21:36/00:02:43
(10.1.1.1, 239.1.1.1), 00:03:55/stopped, flags: T
Incoming interface: GigabitEthernet0/0/0, RPF nbr 0.0.0.0, using vrf source
Outgoing interface list:
GigabitEthernet0/0/1, Forward/Sparse, 00:03:55/00:02:43
ASR1002-1#show ip mroute vrf source 239.1.1.1
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
L - Local, P - Pruned, R - RP-bit set, F - Register flag,
T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,
X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
U - URD, I - Received Source Specific Host Report,
Z - Multicast Tunnel, z - MDT-data group sender,
Y - Joined MDT-data group, y - Sending to MDT-data group,
G - Received BGP C-Mroute, g - Sent BGP C-Mroute,
N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,
Q - Received BGP S-A Route, q - Sent BGP S-A Route,
V - RD & Vector, v - Vector, p - PIM Joins on route,
x - VxLAN group, c - PFP-SA cache created entry,
* - determined by Assert
Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode
(*, 239.1.1.1), 00:22:36/stopped, RP 1.1.1.1, flags: SJCFE
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list: Null
Extranet receivers in vrf receiver:
(*, 239.1.1.1), 00:21:54/stopped, RP 1.1.1.1, OIF count: 1, flags: SJC
(10.1.1.1, 239.1.1.1), 00:04:14/00:02:55, flags: FTE
Incoming interface: GigabitEthernet0/0/0, RPF nbr 0.0.0.0
Outgoing interface list: Null
Extranet receivers in vrf receiver:
(10.1.1.1, 239.1.1.1), 00:04:14/stopped, OIF count: 1, flags: T
ASR1002-1#show ip mfib vrf receiver 239.1.1.1
Entry Flags: C - Directly Connected, S - Signal, IA - Inherit A flag,
ET - Data Rate Exceeds Threshold, K - Keepalive
DDE - Data Driven Event, HW - Hardware Installed
ME - MoFRR ECMP entry, MNE - MoFRR Non-ECMP entry, MP - MFIB
MoFRR Primary, RP - MRIB MoFRR Primary, P - MoFRR Primary
MS - MoFRR Entry in Sync, MC - MoFRR entry in MoFRR Client.
I/O Item Flags: IC - Internal Copy, NP - Not platform switched,
NS - Negate Signalling, SP - Signal Present,
A - Accept, F - Forward, RA - MRIB Accept, RF - MRIB Forward,
MA - MFIB Accept, A2 - Accept backup,
RA2 - MRIB Accept backup, MA2 - MFIB Accept backup
Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kbits per second
Other counts: Total/RPF failed/Other drops
I/O Item Counts: HW Pkt Count/FS Pkt Count/PS Pkt Count Egress Rate in pps
VRF receiver
(*,239.1.1.1) Flags: C HW
SW Forwarding: 0/0/0/0, Other: 0/0/0
HW Forwarding: 0/0/0/0, Other: 1/1/0
GigabitEthernet0/0/1 Flags: NS
(10.1.1.1,239.1.1.1) Flags: HW
SW Forwarding: 0/0/0/0, Other: 0/0/0
HW Forwarding: 15/0/94/0, Other: 0/0/0
GigabitEthernet0/0/1 Flags: NS
또한 RP 및 소스 IP용 VRF 수신기 RIB에는 유니캐스트 항목이 없습니다.
ASR1002-1#show ip route vrf receiver 1.1.1.1
Routing Table: receiver % Network not in table
ASR1002-1#show ip route vrf receiver 10.1.1.1
Routing Table: receiver % Network not in table
따라서 RPF는 실패한 것으로 표시되지만 멀티캐스트 트래픽은 전달됩니다.
ASR1002-1#show ip rpf vrf receiver 1.1.1.1
failed, no route exists
ASR1002-1#show ip rpf vrf receiver 10.1.1.1
failed, no route exists
이를 달성하는 또 다른 방법은 다음과 같습니다.
ip mroute vrf receiver 10.1.1.0 255.255.255.0 fallback-lookup vrf source
ip mroute vrf receiver 1.1.1.1 255.255.255.255 fallback-lookup vrf source
이를 통해 RPF 검사가 성공적으로 수행됩니다.
ASR1002-1#show ip rpf vrf receiver 1.1.1.1
RPF information for ? (1.1.1.1)
RPF interface: Loopback1
RPF neighbor: ? (1.1.1.1) - directly connected
RPF route/mask: 1.1.1.1/32
RPF type: multicast (connected)
Doing distance-preferred lookups across tables
Using Extranet RPF Rule: Static Fallback Lookup, RPF VRF: source
RPF topology: ipv4 multicast base
ASR1002-1#show ip rpf vrf receiver 10.1.1.1
RPF information for ? (10.1.1.1)
RPF interface: GigabitEthernet0/0/0
RPF neighbor: ? (10.1.1.1) - directly connected
RPF route/mask: 10.1.1.0/24
RPF type: multicast (connected)
Doing distance-preferred lookups across tables
Using Extranet RPF Rule: Static Fallback Lookup, RPF VRF: source
RPF topology: ipv4 multicast base
그러나 RPF select 또는 fallback lookup 명령 중 하나를 사용하면 둘 다 목적을 달성할 수 있습니다.
문제 해결
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.