<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Thank you for your reply, I just don't understand it well enought.<br>
<br>
Why is route 10.96.20.0/26 recursive, when it's next hop
(10.30.21.19) is in my directly connected network (10.30.20.0/22) ?<br>
<br>
When I tried to change peers to different ASs (okubedev1m1 AS65102,
okubedev1_lb1 AS65101), it's working well even if I don't see much
difference in routing table. To me it looks like route for
10.96.20.0/16 doesn't change much. Even fiddling AS path in filter
doesn't seem to help.<br>
<br>
<pre>10.96.255.33/32 unicast [okubedev1_lb1 12:06:22.708 from 10.96.20.57] * (100/?) [AS65101?]
via 10.30.21.19 on enp0s4
Type: BGP univ
BGP.origin: Incomplete
BGP.as_path: 65102 65101
BGP.next_hop: 10.96.20.57
BGP.local_pref: 100
10.96.20.0/26 unicast [okubedev1m1 12:04:17.932] * (100) [AS65102i]
via 10.30.21.19 on enp0s4
Type: BGP univ
BGP.origin: IGP
BGP.as_path: 65102
BGP.next_hop: 10.30.21.19
BGP.local_pref: 100
10.30.20.0/22 unicast [direct1 08:32:56.003] * (240)
dev enp0s4
Type: device univ
</pre>
Unfortunately this setup works well in single-node clusters only
(okubedev1) but I got duplicated routes for multi-node clusters,
which I believe I know why is happening (inner iBGP full mesh within
cluster) and I don't want to use it that way.<br>
<br>
<pre>10.96.2.128/26 unicast [okubedev2m1 12:06:04.814] * (100) [AS65102i]
via 10.30.21.4 on enp0s4
Type: BGP univ
BGP.origin: IGP
BGP.as_path: 65102
BGP.next_hop: 10.30.21.4
BGP.local_pref: 100
unicast [okubedev2n1 12:06:09.604] (100) [AS65102i]
via 10.30.21.5 on enp0s4
Type: BGP univ
BGP.origin: IGP
BGP.as_path: 65102
BGP.next_hop: 10.30.21.5
BGP.local_pref: 100
</pre>
Thanks for your time.<br>
<br>
Best regards<br>
<br>
<br>
<div class="moz-cite-prefix">On 2/28/20 4:51 PM, Ondrej Zajicek
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:20200228155109.GN2408@feanor.crfreenet.org">
<pre class="moz-quote-pre" wrap="">On Fri, Feb 28, 2020 at 02:01:40PM +0100, Miroslav Kalina wrote:
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Hello there,
I am currently trying to use BIRD for route propagation from our
baremetal Kubernetes clusters (Calico CNI, iBGP sessions within AS65100)
into infrastructure via eBGP (private AS) and it works well.
The issue I have is when I want also to create BGP peering between BIRD
and (MetalLB) service inside Kubernetes cluster (multihop, no NAT
involved, session established OK) and I receive routes /32 with
BGP.next_hop to IP within Kubernetes cluster (=not directly connected).
These routes are marked as "unreachable" even if I explicitly set
"gateway recursive".
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">
Hello
The issue here is that BIRD does not support resolution of recursive
gateway through another route with recursive next hop. Recursive route
10.96.255.33/32 uses next hop 10.96.20.25, which is resolved through
10.96.20.0/26, which itself has a recursive next hop.
Perhaps you could modify okubedev1m1 / 10.96.20.0/26 to have direct next hop.
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Produces following routing table:
bird> show route all
Table master4:
10.96.255.33/32 unreachable [okubedev1_lb1 10:32:14.973 from 10.96.20.25] * (100) [?]
Type: BGP univ
BGP.origin: Incomplete
BGP.as_path:
BGP.next_hop: 10.96.20.25
BGP.local_pref: 0
10.96.20.0/26 unicast [okubedev1m1 11:15:45.704] * (100) [i]
via 10.30.21.19 on enp0s4
Type: BGP univ
BGP.origin: IGP
BGP.as_path:
BGP.next_hop: 10.30.21.19
BGP.local_pref: 100
10.30.20.0/22 unicast [direct1 13:52:46.301] * (240)
dev enp0s4
Type: device univ
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Miroslav Kalina
Systems developement specialist
<a class="moz-txt-link-abbreviated" href="mailto:miroslav.kalina@livesport.eu">miroslav.kalina@livesport.eu</a>
+420 773 071 848
Livesport s.r.o.
Aspira Business Centre
Bucharova 2928/14a, 158 00 Praha 5
<a class="moz-txt-link-abbreviated" href="http://www.livesport.eu">www.livesport.eu</a></pre>
</body>
</html>