2011年12月14日 星期三

cisco - troubleshooting - crs-1 - turbo boot

cisco - troubleshooting - crs-1 - turbo boot - downgrade from 4.0.3 to 3.8.4

It is my first time to re-install crs-1. Actually I have to downgrade IOS-XR from 4.0.3 to 3.8.4 on crs-1. I tried to downgrade it by using install add/activate command, but not success. & Then I use turbo boot function to re-install the system from the beginning. There are several things worth to mention:

1. Downgrade 4.0.3 to 3.8.4 by using install add/activate does not work.

I can successfully added 3.8.4 to the router. However I am not able to activate it. I got lots of alarm:

Install operation 43 '(admin) install activate disk0:comp-hfr-mini-3.8.4
disk0:hfr-mpls-3.8.4 disk0:hfr-mcast-3.8.4 disk0:hfr-mgbl-3.8.4
disk0:hfr-diags-3.8.4 disk0:hfr-fpd-3.8.4 disk0:hfr-doc-3.8.4 synchronous'
started by user 'labuser' via CLI at 14:49:17 HKT Wed Dec 14 2011.
Error:    Cannot proceed with the activation because of the following package
Error:    incompatibilities:
Error:      iosxr-service-4.0.3 needs iosxr-fwding-4.0.3, or equivalent, to be
Error:    active on the same nodes.
Error:      iosxr-service-4.0.3 needs iosxr-infra-4.0.3, or equivalent, to be
Error:    active on the same nodes.
Error:      iosxr-service-4.0.3 needs iosxr-os-4.0.3, or equivalent, to be
Error:    active on the same nodes.
Error:      hfr-service-supp-4.0.3 needs hfr-base-4.0.3, or equivalent, to be
Error:    active on the same nodes.
Error:      hfr-service-supp-4.0.3 needs hfr-os-support-4.0.3, or equivalent,
Error:    to be active on the same nodes.

... skipped...


2. To read a flash disk in the rommon of CRS-1, the disk have to be format in CRS-1. DO NOT format the flash disk in GSR & use it in CRS-1. I got the following message when I tried to read a GSR disk from CRS-1:

rommon B11 > dir disk1:
open: file "hfr-atafslib-m" not found
loadprog: error - on file open
cannot load the monitor library "disk1:%hfr-atafslib-m" from device: PCMCIA slot 1dir: cannot open device "disk1:"
rommon B12 >

Then, I tried to reseat the card. The alarm is a little bit different compare with the previous one:

rommon B10 > dir disk1:
open: read error...requested 0x4 bytes, got 0xffffffff
trouble reading device magic number
dir: cannot open device "disk1:"
rommon B11 >


It is about device magic number. I remember someone got this problem before.

Problem solved after I use the disk which is format in CRS-1:

rommon B1 > dir disk0:
Directory of disk0:

2      0         drw-     LOST.DIR
3      119093695 -rw-     comp-hfr-mini.vm-3.8.4
rommon B2 >

rommon B3 > dir disk1:
Directory of disk1:

2      0         drw-     LOST.DIR
3      119093695 -rw-     comp-hfr-mini.vm-3.8.4
rommon B4 >




3. The turbo boot process is time consuming. & The crs1 just not mentioning that it is running turbo boot. So, don't break the process.

rommon config:

rommon B4 > set
PS1=rommon
IOX_ADMIN_CONFIG_FILE=
BSI=0
MEDIA_FORMAT=
BOOT_DEV_SEQ_CONF=
BOOT_DEV_SEQ_OPER=
ReloadReason=1
?=0
rommon B5 > confreg 0x102
rommon B6 > TURBOBOOT=on,disk0,format
rommon B7 > sync


command to boot the correct vm file:

rommon B8 > boot disk1:comp-hfr-mini.vm-3.8.4

And then the turbo boot process start:

..
Fail to open file name disk1/comp-hfr-mini.vm-3.8.4
boot: booting from disk1:comp-hfr-mini.vm-3.8.4

    CARD_RACK_NUMBER: 0
    CARD_SLOT_NUMBER: 0
        CPU_INSTANCE: 1
  RACK_SERIAL_NUMBER: SMA15180K04

MBI Validation starts ...Our MAC address is 0024.c4d8.cd4a
Interface link changed state to UP.
Interface link state up.

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

MBI validation sending request.
HIT CTRL-C to abort

No MBI confirmation received from dSC

................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
telnet> quit
Connection closed.
lab-bsd-01: ~> telnet x.x.x.x
Trying 10.102.1.1...
Connected to xxxx.
Escape character is '^]'.

 This (D)RP Node is not ready or active for login /configuration
RP/0/RP0/CPU0:Dec 14 10:13:06.057 : cfgmgr-rp[140]: %MGBL-CONFIG-3-STARTUP : Configuration Manager could not find any admin configuration to apply from '/disk0:/config/admin/admin.cfg'.
TURBOBOOT: Formatting disk0:


ios con0/RP0/CPU0 is now available



2011年12月13日 星期二

cisco - multicast - control the multicast path by mbgp

cisco - multicast - control the multicast path by mbgp:

Pls note that auto-rp multicast filtering should be applied on the boundary of the AS. But it is not being applied in this lab. I use static rp here.


topology:


lab setup:

1. Configure AS1, AS2 & AS3. Make sure the ipv4 unicast connectivity is ok.
2. Configure AS prepend over the BGP sessions between AS1 & AS2. Make sure ipv4 unicast traffic is transit via AS3.
3. Enable multicast on AS1 & AS2. RP are R5 & R15.
4. Disable multicast on AS3.
5. Enable msdp between R5 & R15.
6. Enable msdp cache-sa-state on R5 & R15.

Check the ipv4 connectivity between R1 (AS1) & R11 (AS2):

Both forward & return path are routed via AS3.

R1#ping 192.168.1.11 source 192.168.0.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.11, timeout is 2 seconds:
Packet sent with a source address of 192.168.0.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 92/104/112 ms
R1#


R1#traceroute 192.168.1.11 source 192.168.0.1

Type escape sequence to abort.
Tracing the route to 192.168.1.11

  1 1.0.0.2 8 msec
    1.0.0.14 20 msec
    1.0.0.2 12 msec
  2 1.0.0.18 16 msec
    1.0.0.6 8 msec
    1.0.0.18 16 msec
  3 1.0.0.10 32 msec
    1.0.0.22 20 msec
    1.0.0.10 12 msec
  4 1.0.0.26 52 msec 12 msec 36 msec
  5 1.0.0.50 28 msec 32 msec 40 msec
  6 1.2.2.14 [AS 3] 64 msec 32 msec 16 msec
  7 1.2.2.18 [AS 3] 68 msec 48 msec 44 msec
  8 1.2.2.30 [AS 3] 60 msec 64 msec 72 msec
  9 1.2.2.34 [AS 3] 56 msec 68 msec 56 msec
 10 1.1.1.41 [AS 2] 88 msec 104 msec 88 msec
 11 1.1.1.25 [AS 2] 84 msec 124 msec 48 msec
 12 1.1.1.21 [AS 2] 80 msec 120 msec 80 msec
 13 1.1.1.17 [AS 2] 80 msec 60 msec 92 msec
 14 1.1.1.13 [AS 2] 108 msec *  92 msec
R1#


R11#ping 192.168.0.1 source 192.168.1.11

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.1, timeout is 2 seconds:
Packet sent with a source address of 192.168.1.11
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 84/111/148 ms
R11#


R11#traceroute 192.168.0.1 source 192.168.1.11

Type escape sequence to abort.
Tracing the route to 192.168.0.1

  1 1.1.1.2 12 msec
    1.1.1.14 12 msec
    1.1.1.2 12 msec
  2 1.1.1.18 16 msec
    1.1.1.6 12 msec
    1.1.1.18 16 msec
  3 1.1.1.10 24 msec
    1.1.1.22 20 msec
    1.1.1.10 24 msec
  4 1.1.1.26 20 msec 44 msec 40 msec
  5 1.1.1.42 32 msec 24 msec 24 msec
  6 1.2.2.33 [AS 3] 52 msec 24 msec 64 msec
  7 1.2.2.29 [AS 3] 24 msec 88 msec 56 msec
  8 1.2.2.17 [AS 3] 56 msec 60 msec 44 msec
  9 1.2.2.13 [AS 3] 56 msec 48 msec 48 msec
 10 1.0.0.49 [AS 1] 72 msec 56 msec 108 msec
 11 1.0.0.25 [AS 1] 84 msec 76 msec 52 msec
 12 1.0.0.21 [AS 1] 108 msec 80 msec 72 msec
 13 1.0.0.17 [AS 1] 104 msec 100 msec 92 msec
 14 1.0.0.13 [AS 1] 88 msec *  108 msec
R11#


Confirm mutlicast is working fine within AS1 & AS2:

R8 - igmp join 225.0.0.1
R1 - ping 225.0.0.1

R1#ping 225.0.0.1

Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.8, 236 ms
Reply to request 0 from 192.168.0.8, 304 ms
Reply to request 0 from 192.168.0.8, 236 ms
R1#


R18 - igmp join 226.0.0.1
R11 - ping 226.0.0.1

R11#ping 226.0.0.1

Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 226.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.1.18, 44 ms
R11#


Check the msdp session on R5 & R15:

R5#show ip msdp summary
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.1.15     2     Up       00:11:11 0     3     ?
R5#


R5#show ip msdp sa-cache
MSDP Source-Active Cache - 3 entries
(1.1.1.1, 226.0.0.1), RP 192.168.1.15, BGP/AS 2, 00:01:22/00:05:32, Peer 192.168.1.15
(1.1.1.13, 226.0.0.1), RP 192.168.1.15, BGP/AS 2, 00:01:22/00:05:32, Peer 192.168.1.15
(192.168.1.11, 226.0.0.1), RP 192.168.1.15, BGP/AS 2, 00:02:01/00:05:32, Peer 192.168.1.15
R5#


R15#show ip msdp summary
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.0.5      1     Up       00:12:05 0     3     ?
R15#


R15#show ip msdp sa-cache
MSDP Source-Active Cache - 3 entries
(1.0.0.1, 225.0.0.1), RP 192.168.0.5, BGP/AS 1, 00:06:48/00:05:45, Peer 192.168.0.5
(1.0.0.13, 225.0.0.1), RP 192.168.0.5, BGP/AS 1, 00:06:48/00:05:45, Peer 192.168.0.5
(192.168.0.1, 225.0.0.1), RP 192.168.0.5, BGP/AS 1, 00:06:48/00:05:45, Peer 192.168.0.5
R15#


Now configure igmp join group 225.0.0.1 & 226.0.0.1 on both R8 & R18:

R8#show run int lo0 | in igmp
 ip igmp join-group 226.0.0.1
 ip igmp join-group 225.0.0.1
R8#


R18#show run int lo0 | in igmp
 ip igmp join-group 226.0.0.1
 ip igmp join-group 225.0.0.1
R18#


Ping multicast group 225.0.0.1 from R1 - only R8 receive the multicast packet & reply it:

R1#ping 225.0.0.1

Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.8, 28 ms
Reply to request 0 from 192.168.0.8, 68 ms
Reply to request 0 from 192.168.0.8, 48 ms
R1#


Ping multicast group 226.0.0.1 from R11 - only R18 receive the multicast packet & reply it:

R11#ping 226.0.0.1

Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 226.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.1.18, 56 ms
Reply to request 0 from 192.168.1.18, 56 ms
R11#


Check the mroute status of 225.0.0.1 on R18 - RP is R15:

R18#show ip mroute 225.0.0.1 | b 225.0.0.1
(*, 225.0.0.1), 00:08:32/00:02:38, RP 192.168.1.15, flags: SJCL
  Incoming interface: Serial3/0, RPF nbr 1.1.1.29
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:08:32/00:02:38

R18#


Check the mroute status of 225.0.0.1 on R15 - RPF neighbor is 1.1.1.22:

R15#show ip mroute 225.0.0.1 | b 225.0.0.1
(*, 225.0.0.1), 00:09:26/00:02:58, RP 192.168.1.15, flags: S
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Serial3/2, Forward/Sparse, 00:09:26/00:02:58

(1.0.0.13, 225.0.0.1), 00:01:57/00:01:02, flags: M
  Incoming interface: Serial3/1, RPF nbr 1.1.1.22
  Outgoing interface list:
    Serial3/2, Forward/Sparse, 00:01:57/00:02:58

(1.0.0.1, 225.0.0.1), 00:01:57/00:01:02, flags: M
  Incoming interface: Serial3/1, RPF nbr 1.1.1.22
  Outgoing interface list:
    Serial3/2, Forward/Sparse, 00:01:57/00:02:58

R15#


mtrace 1.0.0.13 & 1.0.0.1 from R15 - stuck at R17 (1.1.1.26):

R15#mtrace 1.0.0.13
Type escape sequence to abort.
Mtrace from 1.0.0.13 to 1.1.1.21 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.1.1.21
-1  1.1.1.21 PIM/MBGP  [1.0.0.0/24]
-2  1.1.1.22 PIM/MBGP  [1.0.0.0/24]
-3  1.1.1.26 PIM/MBGP  [1.0.0.0/24]
-4  1.0.0.13
R15#


R15#mtrace 1.0.0.1
Type escape sequence to abort.
Mtrace from 1.0.0.1 to 1.1.1.21 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.1.1.21
-1  1.1.1.21 PIM/MBGP  [1.0.0.0/24]
-2  1.1.1.22 PIM/MBGP  [1.0.0.0/24]
-3  1.1.1.26 PIM/MBGP  [1.0.0.0/24]
-4  1.0.0.1
R15#


R17#show ip int brief | in 1.1.1.26
Serial3/0              1.1.1.26        YES NVRAM  up                    up     
Tunnel0                1.1.1.26        YES unset  up                    up     
R17#

Check the rpf neighbor of 1.0.0.13 & 1.0.0.1 on R17 - null (0.0.0.0):

R17#show ip rpf 1.0.0.13
RPF information for ? (1.0.0.13)
  RPF interface: Serial3/1
  RPF neighbor: ? (0.0.0.0)
  RPF route/mask: 1.0.0.0/24
  RPF type: unicast (bgp 2)
  Doing distance-preferred lookups across tables
  RPF topology: ipv4 multicast base, originated from ipv4 unicast base
R17#

R17#show ip rpf 1.0.0.1
RPF information for ? (1.0.0.1)
  RPF interface: Serial3/1
  RPF neighbor: ? (0.0.0.0)
  RPF route/mask: 1.0.0.0/24
  RPF type: unicast (bgp 2)
  Doing distance-preferred lookups across tables
  RPF topology: ipv4 multicast base, originated from ipv4 unicast base
R17#


It is because ip multicast traffic is routed via ipv4 unicast path, which is transit via AS3. However, multicast is not supported in AS3.

Enable ipv4 multicast support on the BGP session between AS1 & AS2. Configure local preference 400 at both ends (still cannot solve the problem):

R9:

R9#show run | b router bgp
router bgp 1
 bgp log-neighbor-changes
 neighbor 1.0.0.42 remote-as 2
 neighbor 192.168.0.5 remote-as 1
 neighbor 192.168.0.5 update-source Loopback0
 !
 address-family ipv4
  no synchronization
  neighbor 1.0.0.42 activate
  neighbor 1.0.0.42 route-map asprepend out
  neighbor 192.168.0.5 activate
  neighbor 192.168.0.5 next-hop-self
  no auto-summary
 exit-address-family
 !
 address-family ipv4 multicast
  neighbor 1.0.0.42 activate
  neighbor 1.0.0.42 route-map setlp in
  no auto-summary
 exit-address-family
!


R10:

R10#show run | b router bgp
router bgp 1
 bgp log-neighbor-changes
 neighbor 1.0.0.46 remote-as 2
 neighbor 192.168.0.5 remote-as 1
 neighbor 192.168.0.5 update-source Loopback0
 !
 address-family ipv4
  no synchronization
  neighbor 1.0.0.46 activate
  neighbor 1.0.0.46 route-map asprepend out
  neighbor 192.168.0.5 activate
  neighbor 192.168.0.5 next-hop-self
  no auto-summary
 exit-address-family
 !
 address-family ipv4 multicast
  neighbor 1.0.0.46 activate
  neighbor 1.0.0.46 route-map setlp in
  no auto-summary
 exit-address-family
!


R12:

R12#show run | b router bgp
router bgp 2
 bgp log-neighbor-changes
 neighbor 1.0.0.41 remote-as 1
 neighbor 192.168.1.15 remote-as 2
 neighbor 192.168.1.15 update-source Loopback0
 !
 address-family ipv4
  no synchronization
  neighbor 1.0.0.41 activate
  neighbor 1.0.0.41 route-map asprepend out
  neighbor 192.168.1.15 activate
  neighbor 192.168.1.15 next-hop-self
  no auto-summary
 exit-address-family
 !
 address-family ipv4 multicast
  neighbor 1.0.0.41 activate
  neighbor 1.0.0.41 route-map setlp in
  no auto-summary
 exit-address-family
!


R13:

R13#show run | b router bgp
router bgp 2
 bgp log-neighbor-changes
 neighbor 1.0.0.45 remote-as 1
 neighbor 192.168.1.15 remote-as 2
 neighbor 192.168.1.15 update-source Loopback0
 !
 address-family ipv4
  no synchronization
  neighbor 1.0.0.45 activate
  neighbor 1.0.0.45 route-map asprepend out
  neighbor 192.168.1.15 activate
  neighbor 192.168.1.15 next-hop-self
  no auto-summary
 exit-address-family
 !
 address-family ipv4 multicast
  neighbor 1.0.0.45 activate
  neighbor 1.0.0.45 route-map setlp in
  no auto-summary
 exit-address-family
!


R1 - ping 225.0.0.1 again - only the first packet can be delieved to R18:

R1#ping 225.0.0.1 repeat 5

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.8, 28 ms
Reply to request 0 from 192.168.1.18, 372 ms
Reply to request 0 from 192.168.1.18, 300 ms
Reply to request 0 from 192.168.1.18, 300 ms
Reply to request 0 from 192.168.0.8, 140 ms
Reply to request 0 from 192.168.0.8, 28 ms
Reply to request 1 from 192.168.0.8, 40 ms
Reply to request 1 from 192.168.0.8, 68 ms
Reply to request 1 from 192.168.0.8, 64 ms
Reply to request 1 from 192.168.0.8, 56 ms
Reply to request 1 from 192.168.0.8, 40 ms
Reply to request 2 from 192.168.0.8, 40 ms
Reply to request 2 from 192.168.0.8, 72 ms
Reply to request 2 from 192.168.0.8, 72 ms
Reply to request 3 from 192.168.0.8, 16 ms
Reply to request 3 from 192.168.0.8, 64 ms
Reply to request 3 from 192.168.0.8, 16 ms
Reply to request 4 from 192.168.0.8, 32 ms
Reply to request 4 from 192.168.0.8, 60 ms
Reply to request 4 from 192.168.0.8, 36 ms
R1#


There are 2 issues to make the mbgp failed to work here:

1. Similar to the BGP advertisement in ipv4 unicast, we have to explicitly announce the mbgp via network command in address-family ipv4 multicast. & redistribution or static route to intf null0 is needed.

2. Address-family ipv4 multicast is configured on R9, R10, R12 & R13 only. For the other routers in AS1 & AS2, multicast path is still setup by ipv4 unicast route. The path is routed via AS3, which multicast is not supported.

From the result of the ping test, we can see 3 reply from R18. For the first multicast packet (225.0.0.1), it is encapsulated & delivered from R5 to R15 by MSDP. The packet is then forwarded to R18. After R18 switched to shortest path tree STP, it no longer receives multicast packet as the SPT is routed via AS3.

Ping 225.0.0.1 from R1 again & check the debug messages on R15:

MSDP Detail debugging is on
R15#
*Dec 13 20:09:42.238: MSDP(0): Received 120-byte TCP segment from 192.168.0.5
*Dec 13 20:09:42.242: MSDP(0): Append 120 bytes to 0-byte msg 176 from 192.168.0.5, qs 1
*Dec 13 20:09:42.246: MSDP(0): WAVL Insert SA Source 1.0.0.1 Group 225.0.0.1 RP 192.168.0.5 Successful
*Dec 13 20:09:42.250: MSDP(0): Forward decapsulated SA data for (1.0.0.1, 225.0.0.1) on Serial3/2
*Dec 13 20:09:42.374: MSDP(0): Received 120-byte TCP segment from 192.168.0.5
*Dec 13 20:09:42.378: MSDP(0): Append 120 bytes to 0-byte msg 177 from 192.168.0.5, qs 1
*Dec 13 20:09:42.382: MSDP(0): WAVL Insert SA Source 1.0.0.13 Group 225.0.0.1 RP 192.168.0.5 Successful
*Dec 13 20:09:42.386: MSDP(0): Forward decapsulated SA data for (1.0.0.13, 225.0.0.1) on Serial3/2
*Dec 13 20:09:42.438: MSDP(0): Received 120-byte TCP segment from 192.168.0.5
*Dec 13 20:09:42.442: MSDP(0): Append 120 bytes to 0-byte msg 178 from 192.168.0.5, qs 1
*Dec 13 20:09:42.446: MSDP(0): WAVL Insert SA Source 192.168.0.1 Group 225.0.0.1 RP 192.168.0.5 Successful
*Dec 13 20:09:42.450: MSDP(0): Forward decapsulated SA data for (192.168.0.1, 225.0.0.1) on Serial3/2
R15#
R15#no debug all
All possible debugging has been turned off
R15#    
R15#show int desc | in 3/2
Se3/2                          up             up       BI~R15-s3_2~T1~R18-s3_0 ~
R15#


Reference:

Interdomain multicast routing - practical juniper networks & cisco systems solution
page 213

It can be confusing that the show ip mroute command shows the PIM Join state instead of the contents of the ip mroute table. There is no way to show the contents of the mroute table, but it can be infereed from the configuration file and the output of show ip rpf.

Check the mbgp announcement on R9:

R9#show bgp ipv4 multicast nei 1.0.0.42 advertised-routes

Total number of prefixes 0
R9#


Fix the bgp announcement issue on R9:

R9#show run | b address-family ipv4 multicast
 address-family ipv4 multicast
  network 1.0.0.0 mask 255.255.255.0
  network 192.168.0.0
  neighbor 1.0.0.42 activate
  neighbor 1.0.0.42 route-map setlp in
  no auto-summary
 exit-address-family
!

R9#show run | in ip route
ip route 1.0.0.0 255.255.255.0 Null0
ip route 192.168.0.0 255.255.255.0 Null0
R9#

Check the mbgp announcement again on R9:

R9#show bgp ipv4 multicast nei 1.0.0.42 adv
BGP table version is 11, local router ID is 192.168.0.9
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, x best-external
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 1.0.0.0/24       0.0.0.0                  0         32768 i
*> 192.168.0.0      0.0.0.0                  0         32768 i

Total number of prefixes 2
R9#


Check the mbgp route received on R12 - note the local preference & the AS path attribute:

R12#show bgp ipv4 multicast neighbor 1.0.0.41 route
BGP table version is 11, local router ID is 192.168.1.12
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, x best-external
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 1.0.0.0/24       1.0.0.41                 0    400      0 1 i
*> 192.168.0.0      1.0.0.41                 0    400      0 1 i

Total number of prefixes 2
R12#



To fix the problem:

Enable bgp address-family ipv4 multicast on all routers in AS1 & AS2. & Announce the necessary routes into address-family ipv4 multicast explicitly on R5 & R15 (both are RR server).

After configuration done, ping 225.0.0.1 from R1:

R1#ping 225.0.0.1 repeat 5

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.8, 40 ms
Reply to request 0 from 192.168.1.18, 216 ms
Reply to request 0 from 192.168.1.18, 216 ms
Reply to request 0 from 192.168.1.18, 208 ms
Reply to request 0 from 192.168.0.8, 68 ms
Reply to request 0 from 192.168.0.8, 44 ms
Reply to request 1 from 192.168.0.8, 28 ms
Reply to request 1 from 192.168.1.18, 112 ms
Reply to request 1 from 192.168.1.18, 108 ms
Reply to request 1 from 192.168.1.18, 88 ms
Reply to request 1 from 192.168.0.8, 32 ms
Reply to request 1 from 192.168.0.8, 28 ms
Reply to request 2 from 192.168.0.8, 24 ms
Reply to request 2 from 192.168.1.18, 132 ms
Reply to request 2 from 192.168.1.18, 132 ms
Reply to request 2 from 192.168.1.18, 52 ms
Reply to request 2 from 192.168.0.8, 52 ms
Reply to request 2 from 192.168.0.8, 48 ms
Reply to request 3 from 192.168.0.8, 4 ms
Reply to request 3 from 192.168.1.18, 144 ms
Reply to request 3 from 192.168.1.18, 140 ms
Reply to request 3 from 192.168.0.8, 96 ms
Reply to request 3 from 192.168.0.8, 64 ms
Reply to request 3 from 192.168.1.18, 64 ms
Reply to request 4 from 192.168.0.8, 52 ms
Reply to request 4 from 192.168.1.18, 120 ms
Reply to request 4 from 192.168.1.18, 120 ms
Reply to request 4 from 192.168.1.18, 72 ms
Reply to request 4 from 192.168.0.8, 72 ms
Reply to request 4 from 192.168.0.8, 52 ms
R1#


mroute status from R18:

R18#show ip mroute 225.0.0.1 | b 225
(*, 225.0.0.1), 05:43:29/stopped, RP 192.168.1.15, flags: SJCL
  Incoming interface: Serial3/0, RPF nbr 1.1.1.29
  Outgoing interface list:
    Loopback0, Forward/Sparse, 05:43:29/00:02:31

(1.0.0.1, 225.0.0.1), 00:00:43/00:02:16, flags: LJT
  Incoming interface: Serial3/0, RPF nbr 1.1.1.29, Mbgp
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:00:43/00:02:31

(192.168.0.1, 225.0.0.1), 00:00:43/00:02:16, flags: LJT
  Incoming interface: Serial3/0, RPF nbr 1.1.1.29, Mbgp
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:00:43/00:02:31

(1.0.0.13, 225.0.0.1), 00:00:43/00:02:16, flags: LJT
  Incoming interface: Serial3/0, RPF nbr 1.1.1.29, Mbgp
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:00:43/00:02:31

R18#


mtrace 1.0.0.1 from R18:

R18#mtrace 1.0.0.1
Type escape sequence to abort.
Mtrace from 1.0.0.1 to 1.1.1.30 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.1.1.30
-1  1.1.1.30 PIM  [1.0.0.0/24]
-2  1.1.1.29 PIM  [1.0.0.0/24]
-3  1.1.1.22 PIM  [1.0.0.0/24]
-4  1.1.1.9 PIM  [1.0.0.0/24]
-5  1.0.0.45 [AS 1] None  [1.0.0.0/30]
-6  1.0.0.37 [AS 1] None  [1.0.0.0/30]
-7  1.0.0.29 [AS 1] None  [1.0.0.0/30]
-8  1.0.0.17 [AS 1] None  [1.0.0.0/30]
-9  1.0.0.13 [AS 1] PIM  [1.0.0.1/32]
-10 1.0.0.1
R18#


traceroute 1.0.0.1 from R18 (ipv4 unicast - path is still routed via AS3):

R18#traceroute 1.0.0.1

Type escape sequence to abort.
Tracing the route to 1.0.0.1

  1 1.1.1.29 20 msec 40 msec 4 msec
  2 1.1.1.22 20 msec 12 msec 12 msec
  3 1.1.1.26 88 msec 12 msec 20 msec
  4 1.1.1.42 72 msec 52 msec 20 msec
  5 1.2.2.33 [AS 3] 44 msec 60 msec 48 msec
  6 1.2.2.29 [AS 3] 48 msec 56 msec 68 msec
  7 1.2.2.17 [AS 3] 48 msec 84 msec 44 msec
  8 1.2.2.13 [AS 3] 116 msec 80 msec 92 msec
  9 1.0.0.49 [AS 1] 48 msec 100 msec 60 msec
 10 1.0.0.25 [AS 1] 84 msec 80 msec 96 msec
 11 1.0.0.9 [AS 1] 128 msec 116 msec 80 msec
 12 1.0.0.5 [AS 1] 116 msec 88 msec 124 msec
 13 1.0.0.1 [AS 1] 156 msec *  108 msec
R18#


bgp ipv4 multicast table on R18:

R18#show bgp ipv4 multicast
BGP table version is 17, local router ID is 192.168.1.18
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, x best-external
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i1.0.0.0/24       1.0.0.45                 0    400      0 1 i
*>i1.1.1.0/24       192.168.1.15             0    100      0 i
*>i192.168.0.0      1.0.0.45                 0    400      0 1 i
*>i192.168.1.0      192.168.1.15             0    100      0 i
R18#


bgp ipv4 unicast table on R18:

R18#show bgp ipv4 unicast
BGP table version is 43, local router ID is 192.168.1.18
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, x best-external
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i1.0.0.0/24       192.168.1.17             0    100      0 3 1 i
*>i1.1.1.0/24       192.168.1.15             0    100      0 i
*>i1.2.2.0/24       192.168.1.17             0    100      0 3 i
*>i192.168.0.0      192.168.1.17             0    100      0 3 1 i
*>i192.168.1.0      192.168.1.15             0    100      0 i
*>i192.168.2.0      192.168.1.17             0    100      0 3 i
R18#



Configuration on R5

R5#show run
Building configuration...

Current configuration : 4148 bytes
!
! Last configuration change at 23:34:32 UTC Tue Dec 13 2011
!
version 12.2
service timestamps debug datetime msec
service timestamps log datetime msec
!
hostname R5
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
ip source-route
ip cef
!
!
!
!
no ip domain lookup
ip multicast-routing
no ipv6 cef
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 192.168.0.5 255.255.255.255
 ip pim sparse-mode
 ip ospf cost 255
!
interface FastEthernet0/0
 no ip address
 shutdown
 duplex half
!
interface FastEthernet1/0
 no ip address
 shutdown
 speed auto
 duplex auto
!
interface FastEthernet1/1
 no ip address
 shutdown
 speed auto
 duplex auto
!
interface FastEthernet2/0
 no ip address
 shutdown
 speed auto
 duplex auto
!
interface FastEthernet2/1
 no ip address
 shutdown
 speed auto
 duplex auto
!
interface Serial3/0
 description BI~R5-s3_0~T1~R4-s3_1 ~
 ip address 1.0.0.18 255.255.255.252
 ip pim sparse-mode
 ip ospf cost 2
 serial restart-delay 0
!
interface Serial3/1
 description BI~R5-s3_1~T1~R6-s3_1 ~
 ip address 1.0.0.21 255.255.255.252
 ip pim sparse-mode
 ip ospf cost 2
 serial restart-delay 0
!
interface Serial3/2
 description BI~R5-s3_2~T1~R8-s3_1 ~
 ip address 1.0.0.29 255.255.255.252
 ip pim sparse-mode
 ip ospf cost 2
 serial restart-delay 0
!
interface Serial3/3
 no ip address
 ip pim sparse-mode
 ip ospf cost 2
 shutdown
 serial restart-delay 0
!
interface Serial3/4
 no ip address
 ip pim sparse-mode
 ip ospf cost 2
 shutdown
 serial restart-delay 0
!
interface Serial3/5
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial3/6
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial3/7
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/0
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/1
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/2
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/3
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/4
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/5
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/6
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial4/7
 no ip address
 shutdown
 serial restart-delay 0
!
router ospf 1
 log-adjacency-changes
 network 0.0.0.0 255.255.255.255 area 0
!
router bgp 1
 bgp log-neighbor-changes
 neighbor ibgp peer-group
 neighbor ibgp remote-as 1
 neighbor ibgp update-source Loopback0
 neighbor 192.168.0.1 peer-group ibgp
 neighbor 192.168.0.2 peer-group ibgp
 neighbor 192.168.0.3 peer-group ibgp
 neighbor 192.168.0.4 peer-group ibgp
 neighbor 192.168.0.6 peer-group ibgp
 neighbor 192.168.0.7 peer-group ibgp
 neighbor 192.168.0.8 peer-group ibgp
 neighbor 192.168.0.9 peer-group ibgp
 neighbor 192.168.0.10 peer-group ibgp
 !
 address-family ipv4
  no synchronization
  network 1.0.0.0 mask 255.255.255.0
  network 192.168.0.0
  neighbor ibgp route-reflector-client
  neighbor 192.168.0.1 activate
  neighbor 192.168.0.2 activate
  neighbor 192.168.0.3 activate
  neighbor 192.168.0.4 activate
  neighbor 192.168.0.6 activate
  neighbor 192.168.0.7 activate
  neighbor 192.168.0.8 activate
  neighbor 192.168.0.9 activate
  neighbor 192.168.0.10 activate
  no auto-summary
 exit-address-family
 !
 address-family ipv4 multicast
  network 1.0.0.0 mask 255.255.255.0
  network 192.168.0.0
  neighbor ibgp route-reflector-client
  neighbor 192.168.0.1 activate
  neighbor 192.168.0.2 activate
  neighbor 192.168.0.3 activate
  neighbor 192.168.0.4 activate
  neighbor 192.168.0.6 activate
  neighbor 192.168.0.7 activate
  neighbor 192.168.0.8 activate

2011年12月9日 星期五

cisco - multicast - pim - path control

cisco - multicast - pim - path control

Test item:

1. control the multicast traffic by:
a. ip address of an interface
b. ospf cost
c. mroute
d. mbgp

2. multicast traffic load sharing via tunnel interface

Topology:






Reference:

http://www.cisco.com/en/US/tech/tk828/technologies_tech_note09186a0080094b55.shtml

Cisco IOS® calculates the RPF interface in this way. Possible sources of RPF information are Unicast Routing Table, MBGP routing table, DVMRP routing table and Static Mroute table. When you calculate the RPF interface, primarily administrative distance is used to determine exactly which source of information the RPF calculation is based on. The specific rules are:

1. All preceding sources of RPF data are searched for a match on the source IP address. When using Shared Trees, the RP address is used instead of the source address.

2. If more than one matching route is found, the route with the lowest administrative distance is used.

3. If the admin distances are equal, then this order of preference is used:

a. Static mroutes
b. DVMRP routes
c. MBGP routes
d. Unicast routes

4. If multiple entries for a route occur within the same route table, the longest match route is used.



Test item #1a - control the multicast path by changing the IP address of an interface:

Configuration:
1. Configure R8 as RP & mapping agent
2. R6 join the group 225.0.0.1 on lo0
3. R1 ping the group 225.0.0.1

R1 ping result:

R1#ping 225.0.0.1 repeat 2

Type escape sequence to abort.
Sending 2, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.6, 12 ms
Reply to request 0 from 192.168.0.6, 16 ms
Reply to request 0 from 192.168.0.6, 16 ms
Reply to request 1 from 192.168.0.6, 12 ms
Reply to request 1 from 192.168.0.6, 36 ms
Reply to request 1 from 192.168.0.6, 32 ms
R1#

R6 have 2 paths to R1 & they have the same ospf cost. According to the rule of reverse path forwarding, the next hop with highest ip address wins:

R6#show ip route 192.168.0.1
Routing entry for 192.168.0.1/32
  Known via "ospf 1", distance 110, metric 261, type intra area
  Last update from 1.0.0.21 on Serial3/1, 00:14:39 ago
  Routing Descriptor Blocks:
    1.0.0.21, from 192.168.0.1, 00:14:39 ago, via Serial3/1
      Route metric is 261, traffic share count is 1
  * 1.0.0.9, from 192.168.0.1, 00:14:39 ago, via Serial3/0
      Route metric is 261, traffic share count is 1
R6#


R6#show ip rpf 192.168.0.1
RPF information for ? (192.168.0.1)
  RPF interface: Serial3/1
  RPF neighbor: ? (1.0.0.21)
  RPF route/mask: 192.168.0.1/32
  RPF type: unicast (ospf 1)
  Doing distance-preferred lookups across tables
  RPF topology: ipv4 multicast base, originated from ipv4 unicast base
R6#


R6#mtrace 192.168.0.1 225.0.0.1
Type escape sequence to abort.
Mtrace from 192.168.0.1 to 1.0.0.10 via group 225.0.0.1
From source (?) to destination (?)
Querying full reverse path...
 0  1.0.0.10
-1  1.0.0.10 None  [192.168.0.1/32]
-2  1.0.0.21 None  [192.168.0.1/32]
-3  1.0.0.17 None  [192.168.0.1/32]
-4  1.0.0.13 PIM  [192.168.0.1/32]
-5  192.168.0.1
R6#


R6#show ip mroute 225.0.0.1 | b 225.0.0.1
(*, 225.0.0.1), 00:23:09/stopped, RP 192.168.0.8, flags: SJCL
  Incoming interface: Serial3/1, RPF nbr 1.0.0.21
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:23:08/00:02:43

(1.0.0.1, 225.0.0.1), 00:21:22/00:01:14, flags: LJT
  Incoming interface: Serial3/0, RPF nbr 1.0.0.9
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:21:22/00:02:43

(192.168.0.1, 225.0.0.1), 00:21:22/00:01:19, flags: LJT
  Incoming interface: Serial3/1, RPF nbr 1.0.0.21
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:21:22/00:02:43

(1.0.0.13, 225.0.0.1), 00:21:22/00:01:16, flags: LJT
  Incoming interface: Serial3/1, RPF nbr 1.0.0.21
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:21:22/00:02:43

R6#



Change the ip address on the link between R3 & R6 as below:

R3 intf S3/1: 1.0.0.101/30
R6 intf S3/0: 1.0.0.102/30

Check the route 192.168.0.1 from R6 again:

R6#show ip route 192.168.0.1
Routing entry for 192.168.0.1/32
  Known via "ospf 1", distance 110, metric 261, type intra area
  Last update from 1.0.0.101 on Serial3/0, 00:02:35 ago
  Routing Descriptor Blocks:
    1.0.0.101, from 192.168.0.1, 00:02:35 ago, via Serial3/0
      Route metric is 261, traffic share count is 1
  * 1.0.0.21, from 192.168.0.1, 00:03:10 ago, via Serial3/1
      Route metric is 261, traffic share count is 1
R6#


R6#show ip rpf 192.168.0.1
RPF information for ? (192.168.0.1)
  RPF interface: Serial3/0
  RPF neighbor: ? (1.0.0.101)
  RPF route/mask: 192.168.0.1/32
  RPF type: unicast (ospf 1)
  Doing distance-preferred lookups across tables
  RPF topology: ipv4 multicast base, originated from ipv4 unicast base
R6#


R6#mtrace 192.168.0.1 225.0.0.1
Type escape sequence to abort.
Mtrace from 192.168.0.1 to 1.0.0.22 via group 225.0.0.1
From source (?) to destination (?)
Querying full reverse path...
 0  1.0.0.22
-1  1.0.0.22 None  [192.168.0.1/32]
-2  1.0.0.101 None  [192.168.0.1/32]
-3  1.0.0.5 None  [192.168.0.1/32]
-4  1.0.0.1 PIM  [192.168.0.1/32]
-5  192.168.0.1
R6#


R6#show ip mroute 225.0.0.1 | b 225.0.0.1
(*, 225.0.0.1), 00:20:24/stopped, RP 192.168.0.8, flags: SJCL
  Incoming interface: Serial3/1, RPF nbr 1.0.0.21
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:20:24/00:02:28

(1.0.0.1, 225.0.0.1), 00:18:38/00:01:18, flags: LJT
  Incoming interface: Serial3/0, RPF nbr 1.0.0.101
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:18:38/00:02:28

(192.168.0.1, 225.0.0.1), 00:18:38/00:00:41, flags: LJT
  Incoming interface: Serial3/0, RPF nbr 1.0.0.101
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:18:38/00:02:28

(1.0.0.13, 225.0.0.1), 00:18:38/00:00:39, flags: LJT
  Incoming interface: Serial3/1, RPF nbr 1.0.0.21
  Outgoing interface list:
    Loopback0, Forward/Sparse, 00:18:38/00:02:28

R6#




Test item #1b - control the multicast path by changing the ospf cost of an interface:

R6 has two eqaul cost paths to R1:

path 1: R6 - R5 - R4 - R1
path 2: R6 - R3 - R2 - R1

Currently multicast traffic is taking path 1 as the ip address on R6 (facing R5) is higher.

R6#mtrace 192.168.0.1    
Type escape sequence to abort.
Mtrace from 192.168.0.1 to 1.0.0.10 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.0.0.10
-1  1.0.0.10 None  [192.168.0.1/32]
-2  1.0.0.21 None  [192.168.0.1/32]
-3  1.0.0.17 None  [192.168.0.1/32]
-4  1.0.0.13 PIM  [192.168.0.1/32]
-5  192.168.0.1
R6#


To force the multicast traffic switch to path 2, increase the ospf cost on R5 (facing R4) to 9999:

R5#show run int s3/0
Building configuration...

Current configuration : 164 bytes
!
interface Serial3/0
 description BI~R5-s3_0~T1~R4-s3_1 ~
 ip address 1.0.0.18 255.255.255.252
 ip pim sparse-mode
 ip ospf cost 9999
 serial restart-delay 0
end


perform mtrace again on R6:

R6#mtrace 192.168.0.1
Type escape sequence to abort.
Mtrace from 192.168.0.1 to 1.0.0.10 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.0.0.10
-1  1.0.0.10 None  [192.168.0.1/32]
-2  1.0.0.9 None  [192.168.0.1/32]
-3  1.0.0.5 None  [192.168.0.1/32]
-4  1.0.0.1 PIM  [192.168.0.1/32]
-5  192.168.0.1
R6#


Both multicast & unicast traffic are affected by this method.



Test item #1c - control the multicast path by multicast static route:

Fallback the configuration so that mutlicast traffic is routed via R1 > R4 > R5 > R6:

R6#mtrace 192.168.0.1
Type escape sequence to abort.
Mtrace from 192.168.0.1 to 1.0.0.10 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.0.0.10
-1  1.0.0.10 None  [192.168.0.1/32]
-2  1.0.0.21 None  [192.168.0.1/32]
-3  1.0.0.17 None  [192.168.0.1/32]
-4  1.0.0.13 PIM  [192.168.0.1/32]
-5  192.168.0.1
R6#

R6#show ip rpf 192.168.0.1
RPF information for ? (192.168.0.1)
  RPF interface: Serial3/1
  RPF neighbor: ? (1.0.0.21)
  RPF route/mask: 192.168.0.1/32
  RPF type: unicast (ospf 1)
  Doing distance-preferred lookups across tables
  RPF topology: ipv4 multicast base, originated from ipv4 unicast base
R6#


Check the ipv4 unicast path from R6 to R1. Traceroute is load balanced via:

path 1: R6 > R5 > R4 > R1
path 2: R6 > R3 > R2 > R1

R6#traceroute 192.168.0.1

Type escape sequence to abort.
Tracing the route to 192.168.0.1

  1 1.0.0.9 16 msec
    1.0.0.21 4 msec
    1.0.0.9 4 msec
  2 1.0.0.17 12 msec
    1.0.0.5 8 msec
    1.0.0.17 12 msec
  3 1.0.0.1 20 msec
    1.0.0.13 20 msec *
R6#


On R6, join the group 225.0.0.1 on loopback0. Perform ping test to this group on R1. & check the traffic rate on R3 & R5. Multicast traffic is routed from R1 to R6 via R5.

R5#show int desc | in R6
Se3/1                          up             up       BI~R5-s3_1~T1~R6-s3_1 ~
R5#show int s3/1 | in rate
  Queueing strategy: weighted fair
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 11000 bits/sec, 3 packets/sec
R5#


R3#show int desc | in R6
Se3/1                          up             up       BI~R3-s3_1~T1~R6-s3_0 ~
R3#show int s3/1 | in rate
  Queueing strategy: weighted fair
  5 minute input rate 9000 bits/sec, 2 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
R3#


Apply multicast static route on R6 to point the rpf next hop of 192.168.0.1 to R3:

R6#show run | in mroute
ip mroute 192.168.0.1 255.255.255.255 Serial3/0
ip mroute 1.0.0.1 255.255.255.255 Serial3/0
ip mroute 1.0.0.13 255.255.255.255 Serial3/0
R6#


Multicast traffic from R1 to R6 is now routed via R3:

R6#mtrace 192.168.0.1 
Type escape sequence to abort.
Mtrace from 192.168.0.1 to 1.0.0.10 via RPF
From source (?) to destination (?)
Querying full reverse path...
 0  1.0.0.10
-1  1.0.0.10 PIM  [192.168.0.1/32]
-2  1.0.0.9 None  [192.168.0.1/32]
-3  1.0.0.5 None  [192.168.0.1/32]
-4  1.0.0.1 PIM  [192.168.0.1/32]
-5  192.168.0.1
R6#



IPv4 unicast traffic is not affected & still load balanced via both paths:

R6#traceroute 192.168.0.1

Type escape sequence to abort.
Tracing the route to 192.168.0.1

  1 1.0.0.21 4 msec
    1.0.0.9 4 msec
    1.0.0.21 4 msec
  2 1.0.0.5 12 msec
    1.0.0.17 12 msec
    1.0.0.5 12 msec
  3 1.0.0.13 20 msec
    1.0.0.1 12 msec *
R6#


Perform multicast ping test again. Check the traffic rate on R3 & R5. Traffic is routed via R3 now:

R5#show int desc | in R6
Se3/1                          up             up       BI~R5-s3_1~T1~R6-s3_1 ~
R5#show int s3/1 | in rate
  Queueing strategy: weighted fair
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
R5#


R3#show int desc | in R6
Se3/1                          up             up       BI~R3-s3_1~T1~R6-s3_0 ~
R3#show int s3/1 | in rate
  Queueing strategy: weighted fair
  5 minute input rate 10000 bits/sec, 2 packets/sec
  5 minute output rate 10000 bits/sec, 1 packets/sec
R3#




Test item #3d -

2011年12月8日 星期四

cisco - multicast - pim - msdp - anycast rp - intra-as

cisco - multicast - pim - msdp - anycast rp - intra-as

Test item:

1. anycast rp

Topology:




On all routers (R1-R30), config static rp as 172.16.1.1:

ip pim rp-address 172.16.1.1



On RP (R4, R14 & R24):
1. configure loopback99 as 172.16.1.1/32
2. configure fully mesh msdp peering

R4:

enable
config term
interface lo99
ip address 172.16.1.1 255.255.255.255
exit
ip msdp peer 192.168.1.14 connect-source loopback0
ip msdp peer 192.168.2.24 connect-source loopback0
ip msdp originator-id lo0
end


R14:

enable
config term
interface lo99
ip address 172.16.1.1 255.255.255.255
exit
ip msdp peer 192.168.0.4 connect-source loopback0
ip msdp peer 192.168.2.24 connect-source loopback0
ip msdp originator-id lo0
end


R24:

enable
config term
interface lo99
ip address 172.16.1.1 255.255.255.255
exit
ip msdp peer 192.168.0.4 connect-source loopback0
ip msdp peer 192.168.1.14 connect-source loopback0
ip msdp originator-id lo0
end




On R10, R20 & R30, configure igmp join group on loopback0:

ip igmp join-group 225.0.0.1




ping 225.0.0.1 from R1:

R1#ping 225.0.0.1 repeat 2

Type escape sequence to abort.
Sending 2, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.10, 72 ms
Reply to request 0 from 192.168.2.30, 328 ms
Reply to request 0 from 192.168.2.30, 308 ms
Reply to request 0 from 192.168.2.30, 276 ms
Reply to request 0 from 192.168.1.20, 164 ms
Reply to request 0 from 192.168.1.20, 132 ms
Reply to request 0 from 192.168.1.20, 132 ms
Reply to request 0 from 192.168.1.20, 120 ms
Reply to request 0 from 192.168.0.10, 76 ms
Reply to request 0 from 192.168.0.10, 76 ms
Reply to request 1 from 192.168.0.10, 8 ms
Reply to request 1 from 192.168.1.20, 160 ms
Reply to request 1 from 192.168.2.30, 128 ms
Reply to request 1 from 192.168.0.10, 120 ms
Reply to request 1 from 192.168.1.20, 120 ms
Reply to request 1 from 192.168.2.30, 104 ms
Reply to request 1 from 192.168.2.30, 104 ms
Reply to request 1 from 192.168.1.20, 80 ms
Reply to request 1 from 192.168.0.10, 48 ms
R1#




check rp group-mapping on R1, R10, R20 & R30:

R1#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R1#

R10#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R10#

R20#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R20#

R30#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R30#




Traceroute 172.16.1.1 from R1, R10, R20 & R30:

R1#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.0.0.14 8 msec *  8 msec
R1#

R10#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.0.0.37 12 msec 20 msec 12 msec
  2 1.0.0.29 20 msec 20 msec 12 msec
  3 1.0.0.17 16 msec *  24 msec
R10#

R20#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.1.1.37 12 msec 8 msec 8 msec
  2 1.1.1.29 24 msec 16 msec 12 msec
  3 1.1.1.17 16 msec *  4 msec
R20#

R30#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.2.2.37 20 msec 4 msec 8 msec
  2 1.2.2.29 8 msec 8 msec 8 msec
  3 1.2.2.17 20 msec *  12 msec
R30#




Shutdown all the BI link on R24:

R24#show int desc | in BI
Se3/0                          admin down     down     BI~R24-s3_0~T1~R21-s3_2 ~
Se3/1                          admin down     down     BI~R24-s3_1~T1~R25-s3_0 ~
R24#




ping 225.0.0.1 from R1:

R1#ping 225.0.0.1 repeat 2

Type escape sequence to abort.
Sending 2, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.10, 12 ms
Reply to request 0 from 192.168.1.20, 272 ms
Reply to request 0 from 192.168.1.20, 272 ms
Reply to request 0 from 192.168.2.30, 260 ms
Reply to request 0 from 192.168.1.20, 252 ms
Reply to request 0 from 192.168.2.30, 224 ms
Reply to request 0 from 192.168.2.30, 192 ms
Reply to request 0 from 192.168.0.10, 164 ms
Reply to request 0 from 192.168.0.10, 140 ms
Reply to request 1 from 192.168.0.10, 64 ms
Reply to request 1 from 192.168.2.30, 156 ms
Reply to request 1 from 192.168.1.20, 156 ms
Reply to request 1 from 192.168.2.30, 144 ms
Reply to request 1 from 192.168.1.20, 144 ms
Reply to request 1 from 192.168.0.10, 104 ms
Reply to request 1 from 192.168.1.20, 104 ms
Reply to request 1 from 192.168.2.30, 84 ms
Reply to request 1 from 192.168.0.10, 64 ms
R1#




check rp group-mapping on R1, R10, R20 & R30:

R1#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R1#

R10#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R10#

R20#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R20#

R30#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R30#




Traceroute 172.16.1.1 from R1, R10, R20 & R30:

R1#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.0.0.14 36 msec *  12 msec
R1#

R10#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.0.0.37 36 msec 8 msec 8 msec
  2 1.0.0.29 16 msec 20 msec 12 msec
  3 1.0.0.17 16 msec *  40 msec
R10#

R20#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.1.1.37 24 msec 8 msec 4 msec
  2 1.1.1.29 8 msec 12 msec 8 msec
  3 1.1.1.17 12 msec *  52 msec
R20#

R30#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.2.2.37 36 msec 4 msec 8 msec
  2 1.2.2.34 16 msec 8 msec 20 msec
  3 1.1.1.41 8 msec 28 msec 8 msec
  4 1.1.1.25 16 msec 24 msec 36 msec
  5 1.1.1.21 12 msec 20 msec 48 msec
  6 1.1.1.17 20 msec *  32 msec
R30#




Shutdown all BI link on R14:

R14#show int desc | in BI
Se3/0                          admin down     down     BI~R14-s3_0~T1~R11-s3_1 ~
Se3/1                          admin down     down     BI~R14-s3_1~T1~R15-s3_0 ~
R14#




ping 225.0.0.1 from R1:

R1#ping 225.0.0.1 repeat 2

Type escape sequence to abort.
Sending 2, 100-byte ICMP Echos to 225.0.0.1, timeout is 2 seconds:

Reply to request 0 from 192.168.0.10, 100 ms
Reply to request 0 from 192.168.2.30, 308 ms
Reply to request 0 from 192.168.1.20, 304 ms
Reply to request 0 from 192.168.1.20, 304 ms
Reply to request 0 from 192.168.1.20, 284 ms
Reply to request 0 from 192.168.1.20, 284 ms
Reply to request 0 from 192.168.2.30, 248 ms
Reply to request 0 from 192.168.2.30, 240 ms
Reply to request 0 from 192.168.2.30, 204 ms
Reply to request 0 from 192.168.0.10, 164 ms
Reply to request 0 from 192.168.0.10, 152 ms
Reply to request 0 from 192.168.0.10, 100 ms
Reply to request 1 from 192.168.0.10, 28 ms
Reply to request 1 from 192.168.2.30, 144 ms
Reply to request 1 from 192.168.1.20, 144 ms
Reply to request 1 from 192.168.1.20, 124 ms
Reply to request 1 from 192.168.1.20, 120 ms
Reply to request 1 from 192.168.2.30, 108 ms
Reply to request 1 from 192.168.2.30, 104 ms
Reply to request 1 from 192.168.0.10, 32 ms
Reply to request 1 from 192.168.0.10, 28 ms
R1#




check rp group-mapping on R1, R10, R20 & R30:

R1#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R1#

R10#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R10#

R20#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R20#

R30#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s): 224.0.0.0/4, Static
    RP: 172.16.1.1 (?)
R30#




Traceroute 172.16.1.1 from R1, R10, R20 & R30:

R1#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.0.0.14 20 msec *  8 msec
R1#

R10#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.0.0.37 40 msec 8 msec 8 msec
  2 1.0.0.29 12 msec 12 msec 20 msec
  3 1.0.0.17 16 msec *  24 msec
R10#

R20#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.1.1.37 20 msec 16 msec 8 msec
  2 1.1.1.29 20 msec 16 msec 24 msec
  3 1.1.1.22 12 msec 24 msec 12 msec
  4 1.1.1.9 40 msec 24 msec 32 msec
  5 1.0.0.45 16 msec 56 msec 12 msec
  6 1.0.0.37 44 msec 40 msec 16 msec
  7 1.0.0.29 88 msec 44 msec 24 msec
  8 1.0.0.17 92 msec *  52 msec
R20#

R30#tr 172.16.1.1

Type escape sequence to abort.
Tracing the route to 172.16.1.1

  1 1.2.2.37 32 msec 12 msec 8 msec
  2 1.2.2.34 32 msec 12 msec 24 msec
  3 1.1.1.41 12 msec 16 msec 4 msec
  4 1.1.1.25 28 msec 20 msec 16 msec
  5 1.1.1.9 44 msec 12 msec 56 msec
  6 1.0.0.45 40 msec 40 msec 72 msec
  7 1.0.0.37 44 msec 44 msec 40 msec
  8 1.0.0.29 60 msec 60 msec 44 msec
  9 1.0.0.17 52 msec *  80 msec
R30#

  


Check ip msdp status on R4:

R4#show ip msdp count
SA State per Peer Counters, <Peer>: <# SA learned>
    192.168.1.14: 0
    192.168.2.24: 0

SA State per ASN Counters, <asn>: <# sources>/<# groups>
    Total entries: 0
R4#

R4#show ip msdp peer
MSDP Peer 192.168.1.14 (?), AS ?
  Connection status:
    State: Up, Resets: 1, Connection source: Loopback0 (192.168.0.4)
    Uptime(Downtime): 00:12:46, Messages sent/received: 17/13
    Output messages discarded: 0
    Connection and counters cleared 01:21:19 ago
  SA Filtering:
    Input (S,G) filter: none, route-map: none
    Input RP filter: none, route-map: none
    Output (S,G) filter: none, route-map: none
    Output RP filter: none, route-map: none
  SA-Requests:
    Input filter: none
  Peer ttl threshold: 0
  SAs learned from this peer: 0
  Number of connection transitions to Established state: 2
    Input queue size: 0, Output queue size: 0
  MD5 signature protection on MSDP TCP connection: not enabled
  Message counters:
    RPF Failure count: 0
    SA Messages in/out: 0/1
    SA Requests in: 0
    SA Responses out: 0
    Data Packets in/out: 0/3
MSDP Peer 192.168.2.24 (?), AS ?
  Connection status:
    State: Up, Resets: 1, Connection source: Loopback0 (192.168.0.4)
    Uptime(Downtime): 00:11:48, Messages sent/received: 16/12
    Output messages discarded: 0
    Connection and counters cleared 01:21:18 ago
  SA Filtering:
    Input (S,G) filter: none, route-map: none
    Input RP filter: none, route-map: none
    Output (S,G) filter: none, route-map: none
    Output RP filter: none, route-map: none
  SA-Requests:
    Input filter: none
  Peer ttl threshold: 0
  SAs learned from this peer: 0
  Number of connection transitions to Established state: 2
    Input queue size: 0, Output queue size: 0
  MD5 signature protection on MSDP TCP connection: not enabled
  Message counters:
    RPF Failure count: 0
    SA Messages in/out: 0/1
    SA Requests in: 0
    SA Responses out: 0
    Data Packets in/out: 0/3
R4#

R4#show ip msdp rpf-peer 192.168.1.14
This command requires "ip msdp rpf rfc3618" to be configured.
R4#

R4#show ip msdp sa-cache
MSDP Source-Active Cache - 0 entries
R4#

R4#show ip msdp summary
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.1.14     ?     Up       00:14:01 1     0     ?
192.168.2.24     ?     Up       00:13:03 1     0     ?
R4#



Check ip msdp status on R14:

R14#show ip msdp count
SA State per Peer Counters, <Peer>: <# SA learned>
    192.168.0.4: 3
    192.168.2.24: 0

SA State per ASN Counters, <asn>: <# sources>/<# groups>
    Total entries: 3
    ?: 3/1
R14#

R14#show ip msdp peer
MSDP Peer 192.168.0.4 (?), AS ?
  Connection status:
    State: Up, Resets: 1, Connection source: Loopback0 (192.168.1.14)
    Uptime(Downtime): 00:15:58, Messages sent/received: 16/21
    Output messages discarded: 0
    Connection and counters cleared 01:23:15 ago
  SA Filtering:
    Input (S,G) filter: none, route-map: none
    Input RP filter: none, route-map: none
    Output (S,G) filter: none, route-map: none
    Output RP filter: none, route-map: none
  SA-Requests:
    Input filter: none
  Peer ttl threshold: 0
  SAs learned from this peer: 3
  Number of connection transitions to Established state: 2
    Input queue size: 0, Output queue size: 0
  MD5 signature protection on MSDP TCP connection: not enabled
  Message counters:
    RPF Failure count: 0
    SA Messages in/out: 8/0
    SA Requests in: 0
    SA Responses out: 0
    Data Packets in/out: 2/0
MSDP Peer 192.168.2.24 (?), AS ?
  Connection status:
    State: Up, Resets: 1, Connection source: Loopback0 (192.168.1.14)
    Uptime(Downtime): 00:15:14, Messages sent/received: 20/20
    Output messages discarded: 0
    Connection and counters cleared 01:23:15 ago
  SA Filtering:
    Input (S,G) filter: none, route-map: none
    Input RP filter: none, route-map: none
    Output (S,G) filter: none, route-map: none
    Output RP filter: none, route-map: none
  SA-Requests:
    Input filter: none
  Peer ttl threshold: 0
  SAs learned from this peer: 0
  Number of connection transitions to Established state: 2
    Input queue size: 0, Output queue size: 0
  MD5 signature protection on MSDP TCP connection: not enabled
  Message counters:
    RPF Failure count: 8
    SA Messages in/out: 8/6
    SA Requests in: 0
    SA Responses out: 0
    Data Packets in/out: 2/0
R14# 

R14#show ip msdp sa-cache
MSDP Source-Active Cache - 3 entries
(1.0.0.1, 225.0.0.1), RP 192.168.0.4, AS ?,00:04:46/00:04:26, Peer 192.168.0.4
(1.0.0.13, 225.0.0.1), RP 192.168.0.4, AS ?,00:04:46/00:05:20, Peer 192.168.0.4
(192.168.0.1, 225.0.0.1), RP 192.168.0.4, AS ?,00:04:46/00:03:33, Peer 192.168.0.4
R14#

R14#show ip msdp summary
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.0.4      ?     Up       00:16:47 1     3     ?
192.168.2.24     ?     Up       00:16:03 1     0     ?
R14#



Check ip msdp status on R24:

R24#show ip msdp count
SA State per Peer Counters, <Peer>: <# SA learned>
    192.168.0.4: 3
    192.168.1.14: 0

SA State per ASN Counters, <asn>: <# sources>/<# groups>
    Total entries: 3
    ?: 3/1
R24#

R24#show ip msdp peer
MSDP Peer 192.168.0.4 (?), AS ?
  Connection status:
    State: Up, Resets: 1, Connection source: Loopback0 (192.168.2.24)
    Uptime(Downtime): 00:17:14, Messages sent/received: 18/22
    Output messages discarded: 0
    Connection and counters cleared 01:25:04 ago
  SA Filtering:
    Input (S,G) filter: none, route-map: none
    Input RP filter: none, route-map: none
    Output (S,G) filter: none, route-map: none
    Output RP filter: none, route-map: none
  SA-Requests:
    Input filter: none
  Peer ttl threshold: 0
  SAs learned from this peer: 3
  Number of connection transitions to Established state: 2
    Input queue size: 0, Output queue size: 0
  MD5 signature protection on MSDP TCP connection: not enabled
  Message counters:
    RPF Failure count: 0
    SA Messages in/out: 8/0
    SA Requests in: 0
    SA Responses out: 0
    Data Packets in/out: 2/0
MSDP Peer 192.168.1.14 (?), AS ?
  Connection status:
    State: Up, Resets: 1, Connection source: Loopback0 (192.168.2.24)
    Uptime(Downtime): 00:17:28, Messages sent/received: 22/22
    Output messages discarded: 0
    Connection and counters cleared 01:25:04 ago
  SA Filtering:
    Input (S,G) filter: none, route-map: none
    Input RP filter: none, route-map: none
    Output (S,G) filter: none, route-map: none
    Output RP filter: none, route-map: none
  SA-Requests:
    Input filter: none
  Peer ttl threshold: 0
  SAs learned from this peer: 0
  Number of connection transitions to Established state: 2
    Input queue size: 0, Output queue size: 0
  MD5 signature protection on MSDP TCP connection: not enabled
  Message counters:
    RPF Failure count: 9
    SA Messages in/out: 9/7
    SA Requests in: 0
    SA Responses out: 0
    Data Packets in/out: 2/0
R24#         

R24#show ip msdp sa-cache
MSDP Source-Active Cache - 3 entries
(1.0.0.1, 225.0.0.1), RP 192.168.0.4, AS ?,00:06:58/00:02:05, Peer 192.168.0.4
(1.0.0.13, 225.0.0.1), RP 192.168.0.4, AS ?,00:06:58/00:02:59, Peer 192.168.0.4
(192.168.0.1, 225.0.0.1), RP 192.168.0.4, AS ?,00:06:58/00:02:05, Peer 192.168.0.4
R24#

R24#show ip msdp summary
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.0.4      ?     Up       00:19:45 1     3     ?
192.168.1.14     ?     Up       00:19:59 1     0     ?
R24#



Enable ip msdp rpf rfc3618 on R4, R14 & R24:

R4#show ip msdp summary 
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.1.14     ?     Up       00:23:12 1     0     ?
192.168.2.24     ?     Up       00:22:14 1     0     ?
R4#
R4#show ip msdp rpf-peer 192.168.1.14
RPF peer information for ? (192.168.1.14)
  RPF peer: ? (192.168.1.14)
  RPF route/mask: 192.168.1.14/32
  RPF rule: Peer is RP
  RPF type: unicast (ospf 1)
R4#
R4#show ip msdp rpf-peer 192.168.2.24
RPF peer information for ? (192.168.2.24)
  RPF peer: ? (192.168.2.24)
  RPF route/mask: 192.168.2.24/32
  RPF rule: Peer is RP
  RPF type: unicast (ospf 1)
R4#

R14#show ip msdp summary        
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.0.4      ?     Up       00:24:06 1     0     ?
192.168.2.24     ?     Up       00:23:22 1     0     ?
R14#show ip msdp rpf-peer 192.168.0.4
RPF peer information for ? (192.168.0.4)
  RPF peer: ? (192.168.0.4)
  RPF route/mask: 192.168.0.4/32
  RPF rule: Peer is RP
  RPF type: unicast (ospf 1)
R14#
R14#show ip msdp rpf-peer 192.168.2.24
RPF peer information for ? (192.168.2.24)
  RPF peer: ? (192.168.2.24)
  RPF route/mask: 192.168.2.24/32
  RPF rule: Peer is RP
  RPF type: unicast (ospf 1)
R14#

R24#show ip msdp sum
MSDP Peer Status Summary
Peer Address     AS    State    Uptime/  Reset SA    Peer Name
                                Downtime Count Count
192.168.0.4      ?     Up       00:24:03 1     0     ?
192.168.1.14     ?     Up       00:24:16 1     0     ?
R24#
R24#show ip msdp rpf-peer 192.168.0.4
RPF peer information for ? (192.168.0.4)
  RPF peer: ? (192.168.0.4)
  RPF route/mask: 192.168.0.4/32
  RPF rule: Peer is RP
  RPF type: unicast (ospf 1)
R24#
R24#show ip msdp rpf-peer 192.168.1.14
RPF peer information for ? (192.168.1.14)
  RPF peer: ? (192.168.1.14)
  RPF route/mask: 192.168.1.14/32
  RPF rule: Peer is RP
  RPF type: unicast (ospf 1)
R24#