NMC DOiT Vol.2 Scenario 3 Day 5 – Basic IPv6 BGP


I completed NMC scenario 3 just a few minutes ago, more or less.  By “more or less” I mean that I managed to hang my terminal server at work, so I wrote out the code to do a dual HSRP with dual DHCP in a text editor (Context with the Cisco IOS syntax highlighter).  Work is an hour away, and I’m not driving in to reboot it.  I might be able to call in to have someone who’s there today reboot it for me, but we’ll see.  If I do that, it’s only because I want to get started on scenario 4.

So, let’s wrap this scenario up.  A couple of nights ago, I did come back to complete the IPv6 addressing and routing scheme, like I said I might in my last post.  This morning, I completed the IPv6 section by adding mutual redistribution and IPv6 BGP.

This morning I dealt with QoS, all of which was focused on the Catalyst platform.  The Catalyst is my weakest QoS area, by far.  QoS on the Catalyst wasn’t a big part of my study for the written exam, so I fumbled my way through this section.  I might be making it harder than it is, I guess, but I have to study up to understand the nature of the queues and how the Cat will deal with them.  I know some basics, but I was far enough out of my depth to not even fully understand what the scenario was asking me to do in certain steps, especially dealing with drop thresholds and buffer space reservation.  So I did everything that I could do, including DSCP mapping using a dscp-mutation map, and then kind of drooled on myself for the rest, looking back at the answer key a lot and going “Huh…hmm…yeah…”  I felt a little like a monkey looking at a helicopter.

There was a straightforward section about setting up logging to flash on a Catalyst.  I had not done it before, but it was clearly documented.  The requirement was met with a single statement.

The multicast scenario was actually easy.  It called for “flood and prune”, thus dense mode.   So no rendezvous point, which takes out a configuration element.  All I had to worry about was RPF problems.  I was doing this in my text editor (remember I had a hung terminal server), so I wasn’t sure if I was going to have an RPF problem or not.  If I knew my multicast better, I would have known the answer to the question.  I still haven’t gone back to review my multicast, though, so RPF is still killing me in these scenarios.  Short version, one router did indeed have an RPF issue, and required a static mroute back to the source to resolve the problem.

BGP IPv6, at the level I needed to know it for this scenario, was straightforward.

  1. You don’t configure a separate routing process for IPv6 BGP, like you would for IGPs.  You’ll do your IPv6 BGP configuration right inside of your “router bgp as#” paragraph.
  2. Configure an IPv6 BGP neighbor just like you would an IPv4 BGP neighbor, with a “neighbor xxxx::xxxx remote-as xx” where xxxx::xxxx is the IPv6 address of the BGP neighbor you wish to peer with, and xx is the remote autonoumous system.  This, by itself, will not bring up the neighbor, even assuming that you’ve configured both sides.  You need to activate the IPv6 neighbor as well, which is a difference from IPv4.  To activate a neighbor, you’re going to enter into an address family sub-paragraph.  “address-family ipv6” is appropriate for IPv6 configuration.  Now type “neighbor xxxx::xxxx activate” to bring that neighbor up, where xxxx::xxxx is the IP address of the neighbor.
  3. Inside this IPv6 address family subparagraph inside of your BGP configuration, you can also enter the BGP networks you wish to originate into the BGP domain.  “network xxxx::xxxx/xxx” will do this, just like an IPv4 BGP network statement.  Just pop in your IPv6 network in appropriate IPv6 notation, instead of the xxxx::xxxx/xxx.
  4. Note that IOS may do a lot of this for you.  For example, when I was configuring this, I put in the neighbor statement, and IOS generated the “activate” statement in the address-family sub-paragraph for me.  YMMV.
  5. You can check to see what IPv6 networks are being advertised in your BGP world with “show bgp ipv6 unicast“.  Note that if you try to abbreviate “ipv6” to “ipv”, like I do for most of the time, you can’t in this case.  “ipv4” is also a keyword in this command, so “ipv” is not specific enough for IOS to know what you mean.

Read more about Implementing Multiprotocol BGP (to support IPv6).

My yardwork beckons, so I’m going to cut this post a little short.  But here’s some links from other topics in the scenario.  I may edit this a bit later to add some of this information.

Cat3550 System Message Logging (includes how to log to flash and limit the file size).

Cat3550 AutoQoS.

By Ethan Banks

Ethan Banks is a podcaster and writer with a BSCS and 20+ years in enterprise IT. He's operated data centers with a special focus on infrastructure — especially networking. He's been a CNE, MCSE, CEH, CCNA, CCNP, CCSP, and CCIE R&S #20655. He's the co-founder of Packet Pushers Interactive, LLC where he creates content for humans in the hot aisle.