<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <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/">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" href="mailto:bird-support@network.cz">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>
  </body>
</html>