Prefix not making it through two iBGP sessions
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.
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.
participants (1)
-
Brooks Swinnerton