<div dir="ltr"><div>I've also made a quick patch for the kerenel protocol to accept routes of type local. But it might be not well backward-compatible, because somebody might receive some new routes in their kernel protocols. Anyway, with this patch you can use something like that to have your IP route:</div><div><br></div><div>protocol kernel6 {<br> kernel table 255; # table local<br> learn all; # accept kernel routes as well<br> scan time 10;<br> ipv6 {<br> import all;<br> export none;<br> };<br>}</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, Sep 30, 2025 at 8:39 PM Alexander Zubkov <<a href="mailto:green@qrator.net">green@qrator.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Anthony,</div><div><br></div><div>You mean you have for example ip address with mask configured on eth0: 2001:db8::cafe/64. And you want to have route 2001:db8::cafe/128 inside bird without having to specify it manually in a static protocol for example? And now you have to make a dummy interface with 2001:db8::cafe/128 configured on it?</div><div>AFAIK, you cannot do that automatically in bird (i.e. change network mask of prefix). I thought if it would be possible to import single IP route from "table local", Linux has such routes for IPs configured for the system:</div><div><br></div><div>local 2001:db8::cafe dev eth0 table local proto kernel metric 0 pref medium</div><div><br></div><div>But bird ignores routes with type local, so it would need some patching of the source to do that.</div><div>Also IMHO, having IPs with overlapping prefixes should work well on Linux if you know what you do.</div><div>You can also use such config, when you configure for example 2001:db8::cafe/128 on eth0 and add device-route for 2001:db8::/64 on dev eth0. But that might not work for automatic configurations - DHCP, SLAAC.</div><div><br></div><div>Regards,</div><div>Alexander Zubkov</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Sep 30, 2025 at 7:24 PM Anthony Hoppe via Bird-users <<a href="mailto:bird-users@network.cz" target="_blank">bird-users@network.cz</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello List!<br>
<br>
I am working on a project to bring L3 down to the individual host and<br>
am thinking through the transitionary configuration.<br>
<br>
For the purposes of this discussion, the hosts are assigned IPv4<br>
addresses within a /24 and IPv6 addresses within a /64.<br>
<br>
Currently, I'm using a dummy interface and adding the IPs they own as<br>
v4 /32 and v6 /128 and in combination with an export filter to only<br>
export /32 and /128 prefixes, this works great.<br>
<br>
However, I was wondering if there is a way to configure BIRD so that<br>
for the IPs configured on the host it supplants the configured prefix<br>
with /32 and/or /128 allowing me to eliminate the dummy interface?<br>
<br>
The dummy interface is mostly a transitory step as Linux (Debian, at<br>
least) will not let me assign a /32 or /128 to an interface where a<br>
larger overlapping prefix resides (which yes, I understand why you<br>
normally don't want to do this, haha).<br>
<br>
~ Anthony<br>
<br>
-- <br>
This email, including its contents and any attachment(s), may contain <br>
confidential and/or proprietary information and is solely for the review <br>
and use of the intended recipient(s). If you have received this email in <br>
error, please notify the sender and permanently delete this email, its <br>
content, and any attachment(s). Any disclosure, copying, or taking of any <br>
action in reliance on an email received in error is strictly prohibited.<br>
</blockquote></div>
</blockquote></div>