This blog was originally started to better help me understand the technologies in the CCIE R&S blueprint; after completing the R&S track I have decided to transition the blog into a technology blog.

CCIE #29033

This blog will continue to include questions, troubleshooting scenarios, and references to existing and new technologies but will grow to include a variety of different platforms and technologies. Currently I have created over 185 questions/answers in regards to the CCIE R&S track!! Note: answers are in the comment field or within "Read More" section.

You can also follow me on twitter @FE80CC1E


Monday, November 1, 2010

Question 165

What command can be used to validate multicast reverse path forwarding for 10.0.0.1?

Image courtesy of Dongle
This is to further support the comments below

6 comments:

networkdongle said...

i tried to put together a good example without getting too long to demonstrate this command:

'ip mroute 10.0.0.1 255.255.255.255 Serial0/0'

R4 <-f0/1 1.1.1.4-> R1 <-f0/0 and s0/0 unequal paths RP 10.0.0.1-> R2 <-f0/1 3.3.3.3-> R3

R2(config)#do sh ip mroute

(*, 239.1.1.1), 00:06:15/00:02:55, RP 10.0.0.1, flags: SJC
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
FastEthernet0/1, Forward/Sparse, 00:06:15/00:02:55

(*, 239.2.2.2), 00:06:11/00:02:49, RP 10.0.0.1, flags: SJC
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
FastEthernet0/1, Forward/Sparse, 00:06:11/00:02:49


R2#debug ip mpacket
IP multicast packets debugging is on

R2(config)#
*Mar 1 01:30:45.175: IP(0): s=1.1.1.4 (Serial0/0) d=239.1.1.1 id=22, ttl=253, prot=1, len=104(100), RPF lookup failed for source or RP


R2(config)# ip mroute 10.0.0.1 255.255.255.255 Serial0/0

R2(config)#
*Mar 1 01:31:25.695: IP(0): s=1.1.1.4 (Serial0/0) d=239.1.1.1 (FastEthernet0/1) id=24, ttl=253, prot=1, len=100(100), mforward



R2(config)#do sh ip mroute

(*, 239.1.1.1), 00:06:25/00:02:45, RP 10.0.0.1, flags: SJC
Incoming interface: Serial0/0, RPF nbr 21.21.21.1, Mroute
Outgoing interface list:
FastEthernet0/1, Forward/Sparse, 00:06:25/00:02:45

(*, 239.2.2.2), 00:06:20/00:02:39, RP 10.0.0.1, flags: SJC
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
FastEthernet0/1, Forward/Sparse, 00:06:20/00:02:39


R2(config)#do sh ip route 10.0.0.1
Routing entry for 10.0.0.1/32
Known via "eigrp 1", distance 90, metric 409600, type internal
Redistributing via eigrp 1
Last update from 12.12.12.1 on FastEthernet0/0, 00:13:24 ago
Routing Descriptor Blocks:
* 12.12.12.1, from 12.12.12.1, 00:13:24 ago, via FastEthernet0/0
Route metric is 409600, traffic share count is 1
Total delay is 6000 microseconds, minimum bandwidth is 10000 Kbit
Reliability 255/255, minimum MTU 1500 bytes
Loading 1/255, Hops 1


R2(config)#do sh ip pim int

Address Interface Ver/ Nbr Query DR DR
Mode Count Intvl Prior
2.2.2.2 Loopback0 v2/S 0 30 1 2.2.2.2
21.21.21.2 Serial0/0 v2/S 1 30 1 0.0.0.0
3.3.3.2 FastEthernet0/1 v2/S 0 30 1 3.3.3.2

networkdongle said...

another way to do this would be with MBGP and the SAFI of multicast:

R2#sh run | s bgp
router bgp 2
no bgp default ipv4-unicast
bgp log-neighbor-changes
neighbor 1.1.1.1 remote-as 1
neighbor 1.1.1.1 ebgp-multihop 3
neighbor 1.1.1.1 update-source Loopback0
!
address-family ipv4 multicast
neighbor 1.1.1.1 activate
no auto-summary
no synchronization
exit-address-family


take a close look at the origin of the "mroute" is Mbpg:

R2#sh ip mroute
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,
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
Outgoing interface flags: H - Hardware switched, A - Assert winner
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 00:05:32/stopped, RP 10.0.0.1, flags: SJC
Incoming interface: Serial0/0, RPF nbr 21.21.21.1, Mbgp
Outgoing interface list:
FastEthernet0/1, Forward/Sparse, 00:05:32/00:02:32


R2#sh bgp ipv4 multicast
BGP table version is 4, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - intern
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.0.0.1/32 21.21.21.1 0 0 1 i

Packets Analyzed said...

Thanks for putting together a great example!!

BTW: I was trying to follow the diagram and was wondering if you can quickly through something together with some more detail (send me an email) and I will create a Visio diagram based on the additional information and include it in the question.

BTW: There is an easier way to perform RPF checks.

Packets Analyzed said...

The configuration that you provided ensures that RPF checks will pass but what command can you use to check whether RPF exists for 10.0.0.1 and what interfaces it is using?

Hint: I believe it is a hidden command

networkdongle said...

'show ip rpf'

seems like it might of been hidden at one time but i do not believe that is the case anymore 12.4T and on into 15 anyway:

http://www.cisco.com/en/US/docs/ios/ipmulti/command/reference/imc_07.html#wp1139598

Packets Analyzed said...

Thats it, and you are correct it is no longer hidden.

R15#show version
Cisco IOS Software, 3600 Software (C3660-A3JK9S-M), Version 12.4(25b), RELEASE SOFTWARE (fc1)

R15#show ip rp?
rpf

R15#show ip rpf ?
Hostname or A.B.C.D IP name or address of multicast source
events Triggered RPF events
vrf Select VPN Routing/Forwarding instance

Post a Comment