On Wed, Sep 13, 2023 at 09:35:26AM +0000, Mazur, Dariusz via Bird-users wrote: > Hello Bird Users, > Have a question about bgp best path algorithm in Route Refletector > environment and possible fix: > > > Topology ( we use only iBGP with multiply RR): > r01a.tor ----- r01.leaf.105---r01.spine----r01.leaf108-----r09a.tor > > I announce the same block 172.232.0.0/19 from both tors > > r01.leaf108 receives 172.232.0.0/19 from r01.spine and r09a.tor, and treat > them as equal path (multipath). > > All BGP attributes are equal except of BGP originator id and cluster-list > > r01.leaf108.ord02.fab> show route for 172.232.0.0/19 all > 172.232.0.0/19 > unicast [192.168.226.56__r01.spine101 > 2023-09-06] * (100) [AS4250527481?] > via 192.168.226.56 on vlan.101 > Type: BGP univ > BGP.origin: Incomplete > BGP.as_path: 4250527481 > BGP.next_hop: 192.168.226.56 > BGP.med: 0 > BGP.local_pref: 400 > BGP.atomic_aggr: > BGP.aggregator: 23.192.121.225 AS4250527481 > BGP.community: (63949,1000) (63949,1002) (63949,1004) > (63949,1005) (65110,31107) (65310,31107) (65518,31107) > BGP.originator_id: 23.205.212.134 > BGP.cluster_list: 23.205.212.8 23.205.212.112 > > unicast [192.168.198.35__r09b.tor108 2023-09-06] (100) > [AS4250827489?] > via 192.168.198.35 on vlan.218 > Type: BGP univ > BGP.origin: Incomplete > BGP.as_path: 4250827489 > BGP.next_hop: 192.168.198.35 > BGP.med: 0 > BGP.local_pref: 400 > BGP.atomic_aggr: > BGP.aggregator: 23.213.15.233 AS4250827489 > BGP.community: (63949,1000) (63949,1002) (63949,1004) > (63949,1005) (65110,31107) (65310,31107) (65518,31107) > > Looks like Bird does not check cluster_list length to determine better > route, is it intentional? Can you suggest any possible fix to prefer route > from r09a.tor using cluster-list or anything what is local for router (local > pref is not option because all routers are in the same asn and use iBGP)
Hi BIRD does compare cluster_list, but consistently with RFC 4456 section 9 only after almost all other criteria, including comparison of peer router id / originator id. Unfortunately peer router id is not in the 'show route all' output, but i would guess that the peer router id for the second route is higher than the originator_id of the first route, that is why it is sorted the way it is. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: [email protected]) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
