Friday 30 March 2012

IPv6 PIM-SSM Multicast


PIM-SSM in IPv6 is really simply to deploy it almost doesn't need any documentation. This is probably why I couldn't find any examples or labs that show to to configure it. Look at the bottom of this document if you want to enable IPv4 PIM SSM.


IPv6

I'm going to use the network below which I had already setup in IOU from a previous OSPFv3 ABR simulation.


 

The network for this lab is the same except that E0/1 is shut down. I'm going to use R1 and R3 as the sources and R4 as the client. On all routers (R1-R4) configure the following:

ipv6 multicast-routing


As soon as you type in this command PIMv6 is enabled on all interfaces. This can be disabled using the no ipv6 pim interface command. This command also enabled MLD on all interfaces. You can check this as follows:




R2#show ipv6 pim interface
Interface          PIM  Nbr   Hello  DR
                        Count Intvl  Prior

Ethernet0/0        on   2     30     1
    Address: FE80::A8BB:CCFF:FE00:6600
    DR     : FE80::A8BB:CCFF:FE00:6700
Ethernet0/1        on   1     30     1
    Address: FE80::A8BB:CCFF:FE00:6610
    DR     : FE80::A8BB:CCFF:FE00:6810
Ethernet0/2        off  0     30     1
    Address: ::
    DR     : not elected
Serial3/3          off  0     30     1
    Address: ::
    DR     : not elected
Tunnel0            off  0     30     1
    Address: FE80::A8BB:CCFF:FE00:6600
    DR     : not elected


R2# show ipv6 mld interface
VoIP-Null0 is up, line protocol is up
  Internet address is ::/0
  MLD is disabled on interface
Ethernet0/0 is up, line protocol is up
  Internet address is FE80::A8BB:CCFF:FE00:6600/10
  MLD is enabled on interface
  Current MLD version is 2
  MLD query interval is 125 seconds
  MLD querier timeout is 255 seconds
  MLD max query response time is 10 seconds
  Last member query response interval is 1 seconds
  MLD activity: 13 joins, 2 leaves
  MLD querying router is FE80::A8BB:CCFF:FE00:6500
Ethernet0/1 is up, line protocol is up
  Internet address is FE80::A8BB:CCFF:FE00:6610/10
  MLD is enabled on interface
  Current MLD version is 2
  MLD query interval is 125 seconds
  MLD querier timeout is 255 seconds
  MLD max query response time is 10 seconds
  Last member query response interval is 1 seconds
  MLD activity: 12 joins, 3 leaves
  MLD querying router is FE80::A8BB:CCFF:FE00:6610 (this system)



Now configure R4's loopback interface to be the client and join the Source Specific Multicast stream FF33::1 and a source of 2000:2000::1 (ie R1)

interface Loopback0
 no ip address
 ipv6 address 4000:4000::4/128
 ipv6 mld join-group FF33::1 2000:2000::1
 ipv6 ospf 1 area 1
!



Now you can start the sources on R1 and R3:

R1#ping FF33::1  repeat 10000
Output Interface: ethernet0/0
Type escape sequence to abort.
Sending 10000, 100-byte ICMP Echos to FF33::1, timeout is 2 seconds:
Packet sent with a source address of 2000:2000::1

Reply to request 0 received from 4000:4000::4, 0 ms
Reply to request 1 received from 4000:4000::4, 0 ms
Reply to request 2 received from 4000:4000::4, 0 ms
Reply to request 3 received from 4000:4000::4, 0 ms
Reply to request 4 received from 4000:4000::4, 4 ms
Reply to request 5 received from 4000:4000::4, 4 ms
R3#ping FF33::1  repeat 10000
Output Interface: ethernet0/0
Type escape sequence to abort.
Sending 10000, 100-byte ICMP Echos to FF33::1, timeout is 2 seconds:
Packet sent with a source address of 2000:2000::3

Request 0 timed out
Request 1 timed out
Request 2 timed out
Request 3 timed out



Examine the multicast routing table on R2

R2#show ipv6 mroute
Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group,
       C - Connected, L - Local, I - Received Source Specific Host Report,
       P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set,
       J - Join SPT
Timers: Uptime/Expires
Interface state: Interface, State

(2000:2000::1, FF33::1), 00:01:10/00:03:21, flags: sT
  Incoming interface: Ethernet0/0
  RPF nbr: FE80::A8BB:CCFF:FE00:6500
  Immediate Outgoing interface list:
    Ethernet0/1, Forward, 00:01:10/00:03:21


 If you joint another group on R4 (2000:2000::3, FF33::1)

R4 Config
 interface Loopback0
 no ip address
 ipv6 address 4000:4000::4/128
 ipv6 mld join-group FF33::1 2000:2000::1
 ipv6 ospf 1 area 1
!
interface Ethernet0/1
 no ip address
 ipv6 address 2001:2001::4/64
 ipv6 mld join-group FF33::1 2000:2000::3
 ipv6 ospf 1 area 1
!


then the routing table on R2 has two entries:

R2#show ipv6 mroute
Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group,
       C - Connected, L - Local, I - Received Source Specific Host Report,
       P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set,
       J - Join SPT
Timers: Uptime/Expires
Interface state: Interface, State

(2000:2000::1, FF33::1), 00:00:57/00:02:32, flags: sT
  Incoming interface: Ethernet0/0
  RPF nbr: FE80::A8BB:CCFF:FE00:6500
  Immediate Outgoing interface list:
    Ethernet0/1, Forward, 00:00:57/00:02:32

(2000:2000::3, FF33::1), 00:00:48/00:02:42, flags: sTI
  Incoming interface: Ethernet0/0
  RPF nbr: FE80::A8BB:CCFF:FE00:6700
  Immediate Outgoing interface list:
    Ethernet0/1, Forward, 00:00:48/00:02:42


IPv4 PIM-SSM
In this case you just need to remember that all the individual protocols (multicast, pim, igmpv3)  need to be enabled independently.

R1 (Source)
ip multicast-routing
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
 ipv6 address 1000:1000::1/128
!
interface Ethernet0/0
 ip address 2.2.2.1 255.255.255.0
 ip pim sparse-mode
 ip ospf authentication-key ccie
 ipv6 address 2000:2000::1/64
 ipv6 ospf 1 area 0
!
router ospf 1
 log-adjacency-changes
 area 0 authentication
 network 0.0.0.0 255.255.255.255 area 0
!
R1#ping 232.0.0.10 repeat 10000 source 1.1.1.1

Type escape sequence to abort.
Sending 10000, 100-byte ICMP Echos to 232.0.0.10, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1

Reply to request 0 from 3.3.3.4, 8 ms
Reply to request 1 from 3.3.3.4, 1 ms



R2
ip multicast-routing
!
ip pim ssm default
!
interface Ethernet0/0
 ip address 2.2.2.2 255.255.255.0
 ip pim sparse-mode
 ip ospf authentication-key ccie
 ipv6 address 2000:2000::2/64
 ipv6 ospf 1 area 0
!
interface Ethernet0/1
 ip address 3.3.3.2 255.255.255.0
 ip pim sparse-mode
 ip igmp version 3
 ip ospf authentication-key ccie
 ipv6 address 2001:2001::2/64
 ipv6 ospf 1 area 1
!

R3
ip multicast-routing
ip pim ssm default
!
interface Ethernet0/0
 ip address 2.2.2.3 255.255.255.0
 ip pim sparse-mode
 ip ospf authentication-key ccie
 ipv6 address 2000:2000::3/64
 ipv6 ospf 1 area 0
!
interface Ethernet0/1
 ip address 3.3.3.3 255.255.255.0
 ip pim sparse-mode
 ip igmp version 3
 ip ospf authentication-key ccie
 ipv6 address 2001:2001::3/64
 ipv6 ospf 1 area 1

!

R4 (Destination)
ip multicast-routing
!
interface Loopback0
 ip address 4.4.4.4 255.255.255.255
 ipv6 address 4000:4000::4/128
!
interface Ethernet0/1
 ip address 3.3.3.4 255.255.255.0
 ip pim sparse-mode
 ip igmp join-group 232.0.0.10 source 1.1.1.1
 ip igmp version 3

 ip ospf authentication-key ccie
 ipv6 address 2001:2001::4/64
 ipv6 ospf 1 area 1
!




No comments:

Post a Comment