<!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>