Saturday, July 12, 2008

BGP - set clauses are ignored on reflected routes


R4,R5,R6 have serial interfaces connected to Frame cloud
R3,R4,R5 have LAN interfaces connected to

R6 has EBGP peering with R5 and R4, however R5 has R6 neighbor shutdown for now.
R4 is connected to R5 via IBGP.
R5 then connects to R3 via IBGP.
R5 has R3 configured as a route-reflector client.
R5 reflects routes learned from R4 to R3.
R5 has the following config:

router bgp 345
bgp cluster-id 5
neighbor remote-as 345
neighbor update-source Loopback0
address-family ipv4
neighbor activate
neighbor send-community
neighbor route-reflector-client
neighbor route-map SET out
ip prefix-list SIX seq 5 permit
route-map LOOPBACK permit 10
match ip address 5
route-map SET permit 10
match ip address prefix-list SIX
set community 500
route-map SET permit 20

The community does not show up on R3:

R3#show ip bgp
BGP routing table entry for, version 9
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Not advertised to any peer
65000 (metric 2) from (
Origin IGP, metric 0, localpref 100, valid, internal, best
Originator:, Cluster list:

Now let's peer R5 directly with R6 and see what happens:

R5(config)#router bgp 345
R5(config-router)#neighbor shutdown
R5(config-router)#no neighbor shutdown

Immediately the community shows up on R3:

R3#show ip bgp
BGP routing table entry for, version 13
Paths: (1 available, no best path)
Flag: 0x820
Not advertised to any peer
65000 (inaccessible) from (
Origin IGP, metric 200, localpref 100, valid, internal
Community: 500

I got this info while browsing the DocCD:

Configuring a Route Reflector

"The use of set clauses in outbound route maps can modify attributes and possibly create routing loops. To avoid this behavior, set clauses of outbound route maps are ignored for routes reflected to iBGP peers."

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.