Press "Enter" to skip to content

iBGP exchange all routes?

Last updated on March 21, 2024

        <pre><code>1.1.1.0/24              1.1.1.0/24

[community 100:1] [community: 200:1]
[as path 100 300 500] [as path 200 500]
eBGP peer (AS100) eBGP peer (AS200)
\ /
\ /
\ / 9.9.9.0/24 not exported to AS200
\ /
\ /
ROUTER1 (AS 10) —————- ibgp ————— ROUTER2 (AS 10)
|
|
export routes to AS999 with community 100:1 only (only routes from AS 100)
|
|
|
9.9.9.0/24
eBGP peer (AS999)

Purpose: AS999 should only be announced via AS100 and learn AS100 routes.

However I found a problematic scenario:

ROUTER1 has two paths for 1.1.1.0/24 and calculates the best route to 1.1.1.0/24 via AS 200.

Because IBGP exchanges only best routes, ROUTER1 exports only 1.1.1.0/24 via AS200 to ROUTER2.

ROUTER2 exports no routes to AS999 because of a filter in place that accepts only routes tagged 100:1 (routes from AS100).

AS999 won’t have a path for 1.1.1.0/24 at all.

Does it make sense to use bgp add path option for the IBGP connection to exchange all routes (not only the best routes) in this situation between ROUTER1 and ROUTER2, which would allow ROUTER2 to learn a path to 1.1.1.0/24 via AS100 as well?

Or is there some other recommended solution?

Thanks.

Be First to Comment

Leave a Reply