<div dir="auto">You mean exporting to the kernel? You can alter the routes in input filters. Or pipe routes to another table, altering them in the pipe export filter, and then export to the kernel from that other table.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 11, 2024, 09:08 Eugene M. Zheganin <<a href="mailto:emz@norma.perm.ru">emz@norma.perm.ru</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>

  
    
  
  <div>
    <div>Hello,<br>
    </div>
    <div><br>
    </div>
    <div>On 11.01.2024 03:44, Alexander Zubkov
      wrote:<span style="white-space:pre-wrap">
</span></div>
    <blockquote type="cite">
      <pre>
As far as I remember, if you set the interface in a filter, than the gw is
undefined automatically.

Yep, checked the documentation, and here it is:

<a href="https://bird.network.cz/?get_doc&v=20&f=bird-5.html#ss5.5" target="_blank" rel="noreferrer">https://bird.network.cz/?get_doc&v=20&f=bird-5.html#ss5.5</a>

 string ifname

    Name of the outgoing interface. Sink routes (like blackhole,
unreachable or prohibit) and multipath routes have no interface associated
with them, so ifname returns an empty string for such routes. **Setting it
would also change route to a direct one (remove gateway).**
</pre>
    </blockquote>
    <p>Thanks, that did it; but unfortunately, further debugging
      revealed that bird seems to completely ignore such routes and they
      don't make it to the export filters, being discarded earlier.</p>
    <p>Still the only option is to redeclare these as static.<br>
    </p>
    <p><br>
    </p>
    <p>Eugene.<br>
    </p>
  </div>

</blockquote></div>