Saturday, 7 October 2017

MVPN Route types

In this blog article, we’re going to look at the various MVPN route types and in particular how they look on a Cisco IOS router.


Introduction

My lab is setup using IOS and MVPN profile 13.  Please see the references section on how to configure profile 13.
With profile 13 the C-Multicast signalling is done within BGP which means we can use standard BGP show commands to troubleshoot our network.  However, at first glance, it doesn’t necessarily make a lot of sense.  An example output from a PE is below and in this blog post we’ll look at interpreting all the different route types.

R2#sh bgp ipv4 mvpn vrf red
BGP table version is 27, local router ID is 33.0.254.2

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 179:2100 (default for vrf red)
 *>  [1][179:2100][33.0.254.2]/12
                       0.0.0.0                            32768 ?
 *>i [1][179:2100][33.0.254.3]/12
                       33.0.254.3               0    100      0 ?
 *>  [5][179:2100][10.0.24.2][239.0.0.1]/18
                       0.0.0.0                            32768 ?
 *>i [6][179:2100][179][10.0.254.2/32][239.0.0.1/32]/22
                       33.0.254.3               0    100      0 ?
 *>i [7][179:2100][179][10.0.24.2/32][239.0.0.1/32]/22
                       33.0.254.3               0    100      0 ?

In the references section, you’ll also find a link to the IANA assignment for all the route types with a link to the relevant RFC.

Also for reference, here is my lab setup:


Route Type 1 - Intra-AS I-PMSI A-D route

Within my lab, I now strip back all PIM config from my CEs and run a BGP show command on my PE for the MVPN address family.

At the moment we only have route type 1, which is basically just used to set up the MPVN tree.  As we’re using BGP to setup the MVPN then it’s classed as A-D (Auto discovery).

R2#sh ip bgp ipv4 mvpn vrf red
BGP table version is 27, local router ID is 33.0.254.2

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 179:2100 (default for vrf red)
 *>  [1][179:2100][33.0.254.2]/12
                       0.0.0.0                            32768 ?
 *>i [1][179:2100][33.0.254.3]/12
                       33.0.254.3               0    100      0 ?

Let’s break down what each of the fields mean for this route type:
[1] – This is the MPVN route type (please see the IANA web link in the references section)
[179:2100] – This is the RD for the VPN
[33.0.254.2] – This is the next-hop IP for the BGP peer.  I have two PEs in my topology, so there is a type 1 route for each PE.

Route Type 6 – Shared Tree Join (*,G)

Next, I will add an RP to R2, configure the rest of the network accordingly and then do an IGMP static join to 239.0.0.1 on one of my CEs.

We now get two new type 6 routes created which is the equivalent of a (*,G) route to the RP.  We’ll ignore the one to 224.0.1.40 and look at the route related to 239.0.0.1.

R2#sh ip bgp ipv4 mvpn vrf red
BGP table version is 29, local router ID is 33.0.254.2

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 179:2100 (default for vrf red)
 *>  [1][179:2100][33.0.254.2]/12
                       0.0.0.0                            32768 ?
 *>i [1][179:2100][33.0.254.3]/12
                       33.0.254.3               0    100      0 ?
 *>i [6][179:2100][179][10.0.254.2/32][224.0.1.40/32]/22
                       33.0.254.3               0    100      0 ?
 *>i [6][179:2100][179][10.0.254.2/32][239.0.0.1/32]/22
                       33.0.254.3               0    100      0 ?

Let’s break down what each of the fields mean for this route type:
[6] – This is the MPVN route type (please see the iana web link in references section)
[179:2100] – This is the RD for the VPN
[179] – This is the BGP AS number I’ve used in this lab
[10.0.254.2/32] – This is the RP address
[239.0.0.1/32] – This is the multicast group that we joined

If I now go onto the CE, the equivalent mroute is shown below for reference:

R5#sh ip mroute vrf red

(*, 239.0.0.1), 00:04:36/00:02:03, RP 10.0.254.2, flags: SJPCL
  Incoming interface: Ethernet0/0.100, RPF nbr 10.0.35.1
  Outgoing interface list: Null

Route Type 5 – Source Active

Next, I will ping from one of my CEs to 239.0.0.1 to simulate a source going active.  This will create a type 5 route.

R2#sh ip bgp ipv4 mvpn vrf red
BGP table version is 34, local router ID is 33.0.254.2

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 179:2100 (default for vrf red)
 *>  [1][179:2100][33.0.254.2]/12
                       0.0.0.0                            32768 ?
 *>i [1][179:2100][33.0.254.3]/12
                       33.0.254.3               0    100      0 ?
 *>  [5][179:2100][10.0.24.2][239.0.0.1]/18
                       0.0.0.0                            32768 ?
 *>i [6][179:2100][179][10.0.254.2/32][224.0.1.40/32]/22
                       33.0.254.3               0    100      0 ?
 *>i [6][179:2100][179][10.0.254.2/32][239.0.0.1/32]/22
                       33.0.254.3               0    100      0 ?
 *>i [7][179:2100][179][10.0.24.2/32][239.0.0.1/32]/22
                       33.0.254.3               0    100      0 ?

Let’s break down what each of the fields mean for this route type:
[5] – This is the MPVN route type (please see the iana web link in references section)
[179:2100] – This is the RD for the VPN
[10.0.24.2] – This is the IP address of the multicast source
[239.0.0.1] – This is the multicast group that we joined

Route Type 7 – Source Tree Join (S,G)

When we did the ping above you may have also noticed a type 7 route was also created.  This is created as the receiver side CE router switched to the source-based tree.  So the type 7 route is an (S,G) route.

Let’s break down what each of the fields mean for this route type:
[7] – This is the MPVN route type (please see the IANA web link in references section)
[179:2100] – This is the RD for the VPN
[179] – This is the BGP AS number I’ve used in this lab
[10.0.24.2] – This is the IP address of the multicast source
[239.0.0.1] – This is the multicast group that we joined

Also for reference please see the equivalent mroutes:

R5#sh ip mroute vrf red

(*, 239.0.0.1), 00:14:40/stopped, RP 10.0.254.2, flags: SJPCL
  Incoming interface: Ethernet0/0.100, RPF nbr 10.0.35.1
  Outgoing interface list: Null

(10.0.24.2, 239.0.0.1), 00:00:05/00:02:54, flags: PLTX
  Incoming interface: Ethernet0/0.100, RPF nbr 10.0.35.1
  Outgoing interface list: Null

Resources


About the Author

The author of this blog works for Vanguard IT who provide a range of professional services and managed services

For more information go to https://vanguard-it.net

No comments:

Post a Comment