Page MenuHomeVyOS Platform

BGP received routes not installed to FIB
Closed, ResolvedPublicBUG

Description

There has been a regression somewhere between 1.1.8 and 1.2.0-rc6 where learned routes from an eBGP peer are not installed to the FIB.

With the following configuration:

bgp 397143 {
    neighbor 169.254.169.254 {
        address-family {
            ipv4-unicast {
                nexthop-self
                soft-reconfiguration {
                    inbound
                }
            }
        }
        ebgp-multihop 2
        remote-as 64515
    }
    parameters {
        router-id 23.157.160.2
    }
}

No learned routes are displayed in ip route show.

However in 1.1.8, with the following configuration:

bgp 397143 {
    neighbor 169.254.169.254 {
        ebgp-multihop 2
        nexthop-self
        remote-as 64515
        soft-reconfiguration {
            inbound
        }
    }
    parameters {
        router-id 23.157.160.2
    }
}

All learned routes appear in ip route show.

This ticket may be related to T982.

Details

Difficulty level
Unknown (require assessment)
Version
1.2.0-rc6
Why the issue appeared?
Will be filled on close

Event Timeline

@dmbaturin

pstaszewski [3:13 AM]
i just found some prolem with 6.1-dev
when sequence start is
bgpd -> zebra
fib is not filled with all learned routes from bgpd (edited)
sequence start neeed to be
zebra sleep 1sec bgpd
here is how it looks like when i start first bgpd then zebra (local routes interfaces is 349)
ip r | wc -l
349
after 5 mins
ip r | wc -l
349
and here how it looks like when i start zebra - sleep 1 sec and after bgpd
ip r | wc -l
349
after few swcs
ip r | wc -l
4002
after 10 secs
ip r | wc -l
11401

after 20 secs
ip r | wc -l
25035
after 40 secs
ip r | wc -l
142473

A user in Slack today pointed out that this only happens with V4 prefixes, V6 prefixes are properly installed into the FIB.

I'm not positive, but it seems that this only occurs when ebgp-multihop is enabled on the peer.

I ended up moving away from VyOS but the more that I think this problem, I wonder if it's due to mutihop being on and not having a route to the next hop.

In my example above, it may be worth trying something like set protocols static route 169.254.169.254/32 next-hop 10.0.0.1.

adding a static route towards the vultr gateway fixes this, as @bswinnerton pointed out.

👍 cool. Since we've confirmed that as a solution, I think it's safe to close.

@sebastianm, if you believe that disable-connected-check is not working properly, it may be worth opening another ticket.