Using IOS-XR as a Sender/Receiver

Load ios-xr.mcast.host.init.cfg

#IOS-XE
config replace flash:ios-xr.mcast.host.init.cfg
 
#IOS-XR
configure
load bootflash:ios-xr.mcast.host.init.cfg
commit replace
y

XR3 is now a host. It does not run multicast or OSPF, and only has a default 0/0 route to R9.

On R2, join SSM group (11.9.13.13, 232.1.1.1) and (200b:11:9:13::13, FF35::1). Ping these groups from XR3 and ensure that it receives replies from R2.

On XR3, join SSM group (9.2.5.2, 232.1.2.3) and (2009:9:2:5::2, FF35::1). Ping this group from R2 and ensure that it receives replies from XR3.

You must enable IPv4 PIM SSM for this task.

Answer

#R2, R5-R10
ip pim ssm default

#R2
ip multicast-routing distributed
ipv6 multicast-routing
!
int Gi2.525
 ip pim sparse-mode
 ip igmp ver 3
 ip igmp join-group 232.1.1.1 source 11.9.13.13
 ipv6 mld join-group FF35::1 200b:11:9:13::13

#XR3
multicast-routing
 address-family ipv4
  interface GigabitEthernet0/0/0/0.593
   enable
 address-family ipv6
  interface GigabitEthernet0/0/0/0.593
   enable
!
router igmp
 interface GigabitEthernet0/0/0/0.593
  join-group 232.1.2.3 9.2.5.2
!
router mld
 interface GigabitEthernet0/0/0/0.593
  join-group ff35::1 2009:9:2:5::2

Explanation

When using IOS-XR as the sender, you must specify the interface. This appears to work as an outgoing interface keyword. On IOS-XE, the router appears to always send traffic out all interfaces, and the source address just specifies what source IP address to use. If you forget the source parameter on IOS-XR, the traffic will not be forwarded out any interface.

When using IOS-XR as the receiver, the router will not send an IGMP Join until you enable multicast on that interface. This is unlike CSR1000v, which will send an IGMP Join with simply the ip igmp join-group command.

#XR3
multicast-routing
 address-family ipv4
  interface GigabitEthernet0/0/0/0.593
   enable
!
router igmp
 interface GigabitEthernet0/0/0/0.593
  join-group 232.1.2.3 9.2.5.2

Pinging this group from R2 should result in replies from XR3.

Similar to CSR1000v, the XRv router will enable PIM and create an entry for the group it has joined.

When using IOS-XR as a sender for IPv6, you must enable multicast on the output interface. (You do not need to do this for IPv4). You also do not need to specify the outgoing interface, although it doesn’t hurt.

#XR3
multicast-routing
 address-family ipv6
  interface GigabitEthernet0/0/0/0.593
   enable

When using IOS-XR as a receiver for IPv6, you enable the interface for multicast address-family IPv6, and join the group under router mld. This is no different than using IOS-XR as a receiver for IPv4.

#XR3
multicast-routing
 address-family ipv6
  interface GigabitEthernet0/0/0/0.593
   enable
!
router mld
 interface GigabitEthernet0/0/0/0.593
  join-group ff35::1 2009:9:2:5::2

We can ping this group from R2 and receive replies from XR3:

Last updated