Classification: UNCLASSIFIED
Caveats: NONE
Finally i’ve completed the volume of BGP labs which has taken me about a month to do. Could it have taken longer? Sometimes its really hard to squeeze in the time with work. I’ve also taken the approach by which I don’t watch all the COD videos initially before the labs, but during my lab series. Mostly in an alternating fashion of Mon labs, Tue COD, etc. So let me hit the high points here.
Basic Peering
Straight forward so far. These are things you get down with muscle memory and never forget. I also made it a point to force myself to do certain things by default to prepare myself for more complex scenerios, such as creating loopbacks to update-source to, or using ebgp-multihop between peers. The good thing about this is, I get the habit down, and don’t hurt the lab, or contradict the purpose of the lab.
Passing routes through the AS
scenarios
iBGP Synchronization, Transiting Non-BGP Speaking Devices -
Redistribution Transiting
Non-BGP Speaking Devices - Tunneling
Ok, once you understand how these work, its not a problem. Mainly forgetting to check for these things can be a pain. So thats where my questions to ask yourself for BGP come into play. Is BGP running everywhere? Is there a full mesh of iBGP peerings? Instead of getting caught up repeating the Sync rule or the Split-Horizon rule to yourself, and wondering whether to turn sync off (its off by default anyway in newer IOS’s), just know that these rules don’t matter. Think in terms of BGP routing, if a middle router isn’t running BGP, that router is going to black hole routes unless you do something.
BGP Bestpath Selection - Various attributes
So after fumbling through these scenarios a few times, I noticed that the concept is simple enough, but its not understanding route maps entirely that was hurting me. To sum this up, attributes that work in an outbound direction (e.g. Weight, Local Pref) need a route-map in statement to work properly. The logic? You have to tag the routes from your neighbor with that attribute, and the router sees those attributes in an outbound way. For attributes that work in an inbound way (e.g. AS_PATH, MED) you route-map out. Just think opposite. Thing is, you have to remember what attributes work in which direction, or at least use reasoning to figure it out.
Route Reflectors and Confederations
The Route Reflectors were easy enough, you can’t reflect non-client routes to other non-clients. As for confederations, wow that screwed with me for a little bit. Configuring the confederations and getting it to work wasn’t a problem. Conceptually, nothing too tough. Its how the next-hop processing works for Sub-AS’s . Even now, I keep doubling back on my notes unsure of myself. But I have to conclude you think of next-hop processing in terms of the Sub-AS, not the actual AS.
BGP Communities
This boiled down to correctly using route-maps and knowing the difference between local-as and no-export. Remember, No-Export keeps it inside the real AS, Local-AS keeps it inside the Sub-AS.
Regular Expressions
Yeah, i need lots of practice on this one. Suppose i’ll save a config with loopbacks and use the sh ip bgp regexp command to practice this often during my journey.
Outbound Route Filtering
I read internetworkexpert.com’s tutorial on this subject, then had no problems with this. To sum this up:
With BGP ORF, the downstream CE router dynamically tells the upstream PE router what routes to filter outbound. This means the CE router will only receive updates about prefixes that it wants. To configure, match the routes with a prefix list, then configure the BGP neighbors to negotiate ORF capability as send (CE), or receive (PE) done in ipv4 address-family mode. Then apply on the CE router, e.g. neighbor x.x.x.x prefix-list AS_100_in . The logic here, your tagging routes from the PE router, which points that direction, and the capability send / receive commands acknowledges this.
BGP Aggregation
Seems to be a focus on knowing which aggregation options work globally, and which work on a per neighbor basis. Also key here is knowing that aggregation hides the AS-path, so knowing how to use as-set is essential, and knowing the consequences as well.
BGP Allow AS in
Problem with using the as-set option with aggregate-address is, you might have a router (like one summarized in the summary) seeing its own AS in the as-path. allow-as-in overrides this behavior
All in all, I really enjoyed this workbook. I hope to buy Narbik’s volumes and try his take on it.
Classification: UNCLASSIFIED
Caveats: NONE
Share This