IPV6 & Multicast Routing

This configuration is based on this link

1.jpg

The requirement is to configure a Loopback0 on R3 and configure the following IPv6 Networks on R3 and R4.

The configuration on R3 is:

Loopback0    3:3:3:33::/64
Fast0/1    3:3:3:30::/64
Serial0/0/1    3:3:3:34::/64

The configuration on R4 is:
Fast0/0        3:3:3:40::/64
Serial0/0/1        3:3:3:34::/64

R3#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)#
R3(config)#ipv6 unicast-routing
R3(config)#interface Loopback0
R3(config-if)#ipv6 address 3:3:3:33::/64 eui-64
R3(config-if)#interface FastEthernet0/1
R3(config-if)#ipv6 address 3:3:3:30::/64 eui-64
R3(config-if)#interface Serial0/0/1
R3(config-if)#ipv6 address 3:3:3:34::/64 eui-64
R3(config-if)#exit
R3(config)#^Z

R4#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R4(config)#
R4(config)#ipv6 unicast-routing
R4(config)#interface FastEthernet0/1
R4(config-if)#ipv6 address 3:3:3:40::/64 eui-64
R4(config-if)#interface Serial0/0/1
R4(config-if)#ipv6 address 3:3:3:34::/64 eui-64
R4(config-if)#

Now we are going to configure RIPng and make sure R3 and R4 can ping all IPv6 networks

R3#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)#ipv6 unicast-routing
R3(config)#interface Loopback0
R3(config-if)#ipv6 rip Lab3 enable
R3(config-if)#interface FastEthernet0/1
R3(config-if)#ipv6 rip Lab3 enable
R3(config-if)#interface Serial0/0/1
R3(config-if)#ipv6 rip Lab3 enable
R3(config-if)#^Z

R4#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R4(config)#
R4(config)#ipv6 unicast-routing
R4(config)#interface FastEthernet0/1
R4(config-if)#ipv6 rip Lab3 enable
R4(config-if)#interface Serial0/0/1
R4(config-if)#ipv6 rip Lab3 enable
R4(config-if)#^Z
R4#

We can check the routing and then perform a test ping from R4’s LAN to R3’s loopback.

R3#sh ipv6 route
IPv6 Routing Table – 9 entries
Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP
U – Per-user Static route
I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
C   3:3:3:30::/64 [0/0]
via ::, FastEthernet0/1
L   3:3:3:30:217:EFF:FE64:5B19/128 [0/0]
via ::, FastEthernet0/1
C   3:3:3:33::/64 [0/0]
via ::, Loopback0
L   3:3:3:33:217:EFF:FE64:5B18/128 [0/0]
via ::, Loopback0
C   3:3:3:34::/64 [0/0]
via ::, Serial0/0/1
L   3:3:3:34:217:EFF:FE64:5B18/128 [0/0]
via ::, Serial0/0/1
R   3:3:3:40::/64 [120/2]
via FE80::216:C7FF:FEBE:6D58, Serial0/0/1
L   FE80::/10 [0/0]
via ::, Null0
L   FF00::/8 [0/0]
via ::, Null0
R3#

R4#sh ipv6 route
IPv6 Routing Table – 8 entries
Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP
U – Per-user Static route
I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
R   3:3:3:30::/64 [120/2]
via FE80::217:EFF:FE64:5B18, Serial0/0/1
R   3:3:3:33::/64 [120/2]
via FE80::217:EFF:FE64:5B18, Serial0/0/1
C   3:3:3:34::/64 [0/0]
via ::, Serial0/0/1
L   3:3:3:34:216:C7FF:FEBE:6D58/128 [0/0]
via ::, Serial0/0/1
C   3:3:3:40::/64 [0/0]
via ::, FastEthernet0/1
L   3:3:3:40:216:C7FF:FEBE:6D59/128 [0/0]
via ::, FastEthernet0/1
L   FE80::/10 [0/0]
via ::, Null0
L   FF00::/8 [0/0]
via ::, Null0

Now we are configuring R3 and R4 for IPv6 multicast-routing. Also, we are going to Configure R4 to join group FF04::40 using its Fast0/0 interface and make sure R3 is the PIM DR on the Serial network.

To configure a router to do IPv6 multicast routing we first need to configure the following command.

R3#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)#ipv6 multicast-routing
R3(config)#^Z

R4#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R4(config)#ipv6 multicast-routing
R4(config)#^Z

The host to router signaling in IPv6 multicast is performed by a protocol called Multicast Lister Discovery (MLD). Cisco IOS supports MLDv1 (similar to IGMPv2) and MLDv2 (similar to IGMPv3). Below command will configure R4’s Fast0/0 to join the requested group.

R4#conf ter
Enter configuration commands, one per line.  End with CNTL/Z.
R4(config)#int f0/0
R4(config-if)#ipv6 mld join-group FF04::40

Note that unlike Ipv4 multicast, as soon as you configure IPv6 multicast routing all interfaces automatically run PIM-SM (IPv6 multicast only supports PIM-SM and PIM-SSM. No PIM-DM).

You can check your configuration using show ipv6 mroute

R4#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

(*, FF04::40), 00:00:06/never, RP ::, flags: SCLJ
Incoming interface: Null
RPF nbr: ::
Immediate Outgoing interface list:
FastEthernet0/1, Forward, 00:00:06/never

Now we need to make sure R3 is the PIM DR. The default DR priority is 1 one so we will configure R3’s Serial0/0/1 interface to have a priority of 2 and then check to make sure it is the DR.

R3(config)#int s0/0/1
R3(config-if)#ipv6 pim dr-priority 2
R3(config-if)#exit
R3(config)#do sh ipv6 pim interface Serial0/0/1
Interface          PIM  Nbr   Hello  DR
Count Intvl  Prior

Serial0/0/1        on   1     30     2
Address: FE80::217:EFF:FE64:5B18
DR     : this system

R3  is going to work as a candidate BSR and candidate RP for groups in the range FF00::/8 using Loopback0 address as an ID.

Cisco IOS doesn’t support Auto-RP or at least not until 12.4T. It only supports BSR routers that look at candidate RP advertisements and send the mapping to the rest of the multicast routers.

The range specified in the question is in fact the whole IPv6 multicast range because an IPv6 Multicast address is identified by the first 8 bits being set (FF).

We will configure the commands below for BSR and RD candidature. Note that we don’t need to configure the Loopback interface for PIM because this happens automatically as soon as we configure IPv6 multicast.

R3(config)#ipv6 pim bsr candidate bsr  3:3:3:33:217:EFF:FE64:5B18 !Lo0
R3(config)#ipv6 pim bsr candidate rp  3:3:3:33:217:EFF:FE64:5B18
R3(config)#

We can confirm the configuration on R3 itself using the commands below.

R3#show ipv6 pim bsr candidate-rp
PIMv2 C-RP information
Candidate RP: 3:3:3:33:217:EFF:FE64:5B18 SM
All Learnt Scoped Zones, Priority 192, Holdtime 150
Advertisement interval 60 seconds
Next advertisement in 00:00:45

R3#show ipv6 pim bsr election
PIMv2 BSR information

BSR Election Information
Scope Range List: ff00::/8
BSR Address: ::
Uptime: 00:00:00, BSR Priority: 0, Hash mask length: 0
RPF: ::,
BS Timer: 00:00:21
This system is candidate BSR
Candidate BSR address: 3:3:3:33:217:EFF:FE64:5B18, priority: 0, hash mask length: 126

R3#sh ipv6 pim group-map info-source bsr

FF00::/8*
SM, RP: 3:3:3:33:217:EFF:FE64:5B18
RPF: Tu2,3:3:3:33:217:EFF:FE64:5B18 (us)
Info source: BSR From: 3:3:3:33:217:EFF:FE64:5B18(00:02:23), Priority: 192
Uptime: 00:00:06, Groups: 1

A Networker Blog

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s