<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hi</p>
<p><br>
</p>
<p>I would like to implement a patch, now if to BIRD 2 or BIRD 3 -
depends on how "alpha" is "alpha".</p>
<p>I would like to get some guidance - you will probably want it
configurable right? So the default behavior would be the current
one (ignore) and optionally it can be turned on. Can you suggest
how would would you like it to be done in .conf file? Single flag
like `learn;`? Is so, can you suggest name of such flag?</p>
<p>"and mark them as flags appropriately" - by this you mean to mark
it in `pflags` parameter? Now the source for KRT is not stored
anywhere.</p>
<p><br>
</p>
<p>Sorry for so many questions<br>
</p>
<p><br>
</p>
<p>Thank you</p>
<p>Pavel Sorejs<br>
</p>
<p><br>
</p>
<div class="moz-cite-prefix">On 8/23/23 14:53, Maria Matejka via
Bird-users wrote:<br>
</div>
<blockquote type="cite"
cite="mid:4c5d2a5f-97ff-e6d1-0533-d7e60223523b@nic.cz">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p><font face="Gentium">Hello!</font></p>
<div class="moz-cite-prefix">On 8/23/23 14:12, Pavel Šorejs via
Bird-users wrote:<br>
</div>
<blockquote type="cite"
cite="mid:d3fa382c-66b4-4111-8be0-d413d5c3a0a8@sorejs.eu">i have
following problem - the kernel protocol ignores routes with
RTPROT_KERNEL source. Is there some particular reason why this
is so? <br>
</blockquote>
IIRC it simply was there in the beginning and nobody did any
change. It should be possible to implement it cleanly in BIRD 3
(now in alpha stage), or kinda messily in BIRD 2 (but the current
implementation is messy anyway so who cares).<br>
<blockquote type="cite"
cite="mid:d3fa382c-66b4-4111-8be0-d413d5c3a0a8@sorejs.eu"> <br>
Why am i asking? I use BIRD in linux container orchestration
context (Kubernetes) in conjunction with cilium project (<a
class="moz-txt-link-freetext" href="https://cilium.io/"
moz-do-not-send="true">https://cilium.io/</a>). Lately they
discovered, that systemd likes to mess with their routes and did
a change to insert their routes with RTPROT_KERNEL source flag.
This way, systemd doesn't try to mess with their routes. Side
effect of this is that my installation got broken as BIRD
ignores such routes. Now i don't know where to start - either
they are wrong with using RTPROT_KERNEL flag in the first place,
or BIRD is wrong by ignoring such routes. So i am trying here
first. <br>
</blockquote>
<p>Probably everybody is wrong in some way.<br>
</p>
<p>BIRD should have an option to load also RTPROT_KERNEL routes
and mark them as flags appropriately.</p>
<p>Cilium should use their own flag (and define it in
/etc/iproute2/rt_protos).</p>
<p>SystemD should not mess with routes unless configured so.<br>
</p>
<blockquote type="cite"
cite="mid:d3fa382c-66b4-4111-8be0-d413d5c3a0a8@sorejs.eu">Do
anybody have some suggestions? <br>
</blockquote>
<p>You may, e.g.:</p>
<ul>
<li>send us a messy patch for BIRD 2 (based on branch master)<br>
</li>
<li>send us a nicer patch for BIRD 3 (based on tag v3.0-alpha2)</li>
<li>update Cilium to insert their routes with a custom flag,
like BIRD does – but not RTPROT_BIRD, please<br>
</li>
<li>fork Cilium to use BIRD instead of GoBGP<br>
</li>
<li>open a support request at <a
class="moz-txt-link-abbreviated moz-txt-link-freetext"
href="mailto:bird-support@network.cz" moz-do-not-send="true">bird-support@network.cz</a>
to pay us to do something of the above ;-)</li>
</ul>
<p>Best Regards,<br>
Maria Matejka</p>
<pre class="moz-signature" cols="72">--
Maria Matejka (she/her) | BIRD Team Leader | CZ.NIC, z.s.p.o.</pre>
</blockquote>
</body>
</html>