I stumbled upon Jobs' response over in https://bird.network.cz/pipermail/bird-users/2018-July/012572.html and adding `rr client;` on router 1 resolved the issue. On Sat, Dec 14, 2019 at 10:18 AM Brooks Swinnerton <bswinnerton@gmail.com> wrote:
Hello,
I'm having trouble understanding why certain routes aren't making it through to an iBGP session on BIRD 2.0.7.
My network layout looks something like below. I have three BIRD instances running, *Router 1* is connected to *Upstream 1*, *Router 2* is connected to *Upstream 2*, and *Router 1* and *Router 2* are connected to each other via iBGP. This all works great.
Upstream 1 Upstream 2 ▲ ▲ | | eBGP eBGP | | Router 1 ◀--iBGP--▶ Router 2 | iBGP | ▼ Router 3
The problem comes with *Router 3* not receiving routes from *Router 2*.
The iBGP export filter on router1 looks like this:
export filter { if is_v4_bogon() then reject; if is_v4_default() then reject; if is_v4_peering_net() then reject; if is_v4_own_net() then accept; if source = RTS_BGP then accept; reject; };
And if I test each of these functions out manually I can see the prefix should be allowed through:
bird> show route filter { if is_v4_bogon() then reject; } 174.202.0.0/16 bird> show route filter { if is_v4_default() then reject; } 174.202.0.0/16 bird> show route filter { if is_v4_peering_net() then reject; } 174.202.0.0/16 bird> show route filter { if is_v4_own_net() then accept; } 174.202.0.0/16 bird> show route filter { if source = RTS_BGP then accept; } 174.202.0.0/16 Table master4: 174.202.0.0/16 unicast [cologuard4 21:17:56.850 from 169.254.3.3] * (100) [AS22394?] dev bdr-cologuard
Unfortunately if I look at the session from *Router 1* to *Router 3* (core_nyiix_14), it is not let through:
bird> show route export core_nyiix_14 174.202.0.0/16 bird>
I've added all of the relevant configuration in this Gist <https://gist.github.com/bswinnerton/6b7527bc9d78215275c1ae75e64d34cd>.
Any help would be much appreciated.