Workbook v5, BGP Conditional Route Injection question

I'm running into a wall trying to understand the output I'm seeing in my lab and the instructions in the workbook.  I'll cut right to the issue:  I'm not seeing the same output in the Verification steps when looking at the "advertised-routes".

In the R&S v5 Workbook, lab "BGP Conditional Route Injection", this is the summary:

R4 AS 100 summarizes into BGP (four /24 Loopbacks); summary-only.

  • Configure BGP Conditional Route Injection on R7 [AS 300] and R8 [AS 200] as follows:
    • Traffic from AS 54 [R9/R10] going to the subnet enters via R7.
    • Traffic to the subnet enters via R8.

 I'm good with this.  The issue I'm having trouble replicating is the last instruction:

  • Do not allow the more specific routes to be advertised to [R5 and R3 from R8] or to R3 and R6 from R7.
  • [R3/R5/R8 = AS 200]  [R6 = AS 100]  [R7 = AS 300]

route-map INJECT_NET1 permit 10

 set ip address prefix-list NET1

  ip prefix-list NET1 seq 5 permit

route-map IF_AGG_EXIST permit 10

 match ip address prefix-list NET_AGG

 match ip route-source prefix-list AGG_SRC

  ip prefix-list NET_AGG seq 5 permit

  ip prefix-list AGG_SRC seq 5 permit

  ip prefix-list AGG_SRC seq 10 permit

route-map DENY_INJECT deny 10

 match ip address prefix-list NET1

route-map DENY_INJECT permit 100

router bgp 200

 bgp inject-map INJECT_NET1 exist-map IF_AGG_EXIST

 aggregate-address summary-only

 neighbor remote-as 200

 neighbor route-map DENY_INJECT out

 neighbor remote-as 200

 neighbor remote-as 54

As I said, I can see the injected path in BGP:

R8#sh ip bgp injected-paths

     Network          Next Hop            Metric LocPrf Weight Path

 *>i                             0        ?

 * i                                          0        ?

R8#sh ip bgp | i 10.0

 * i               0    100      0 100 i

 *>                           0 54 300 ?

 *>i                              0  ?           <--------------**

And it's getting to R10 AS 54:

R10#sh ip bgp

BGP routing table entry for, version 912

Paths: (1 available, best #1, table default)

  Advertised to update-groups:


  Refresh Epoch 6

  200, (aggregated by 100 from (

      Origin incomplete, localpref 100, valid, external, atomic-aggregate, best

      rx pathid: 0, tx pathid: 0x0

However, when I check my R5 neighbor advertisement, I see:

R8#sh ip bgp neighbors advertised-routes | i 10.0

 *>                           0 54 300 ?

I do NOT see the network being advertised.  I also do not see it going to R3, but presumably that's due to the "DENY_INJECT out" on the neighbor statement.  Because I do NOT have the route-map on R5 neighbor statement, shouldn't the prefix be going to R5?  (btw, if you don't have access to the lab, R8 is a RR-Client of R3 and R5)

Because R8 is "originating" the prefix, shouldn't it be sending to its Route-Reflector, R5?  So I should need to apply the DENY_INJECT filter?  If not, then why call the filter in the lab?

EDIT:  Sheesh, I promise the formatting was clear and clean when typing.  No idea what happens after hitting POST.


  • Sheesh.

    I promise the format of this post looked a lot neater when I was typing it out.  I don't know what happened to the formatting after hitting Post.

  • I must be missing a basic rule with Aggregates or Conditional Route Injections.  I'm not seeing the even being processed in the debug of:

    R8#debug ip bgp updates out
    R8#clear ip bgp soft out

    I see (originated from R7).

    I'm missing something simple. I've been looking at the lab too long...
Sign In or Register to comment.