<HTML><BODY><br><br><br>Пятница,  6 декабря 2013, 23:37 +01:00 от Ondrej Zajicek <santiago@crfreenet.org>:<br>
<blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;"><div id=""><div class="js-helper js-readmsg-msg"><div id="style_13863673880000000987" class="mr_read__body"><div id="style_13863673880000000987_BODY">On Fri, Dec 06, 2013 at 12:34:44PM +0200, Sergey Popovich wrote:<br>
> ?? ???????????? ???? 6 ?????????????? 2013 02:28:32 ???????????????????????? Sargun Dhillon ??????????????:<br>
> > So, from my understanding, routes in the Linux kernel have can have a<br>
> > source associated with them.This is RTA_SRC attribute in netlink ( I<br>
> > think ).<br>
> <br>
> Maybe you mean RTA_PREFSRC attr? This is implemented and could be set/get<br>
> withing BIRD filters using krt_prefsrc attribute without any problem.<br><br>
Yes, krt_prefsrc should do the thing, but communication with directly<br>
connected hosts would be handled by implicit device routes from kernel,<br>
which wouldn't be changed by BIRD.</div></div></div></div></blockquote><br>And this creates major problem with PBR deployments with thousands of /30 routes,<br>where we need prefsrc attribute on route when importing route from ipt_main<br>and reinstalling it into different KRT. Using "direct" protocol don't help too much,<br>as it creates new routes based on addresses on interface, not imports them from<br>KRT with attributes attached by kernel.<br><br>BIRD could not change prefsrc of such routes, as it could not learn such routes from kernel.<br>Even with "learn" and "device routes" options on, due hard coded check for such route types.<br><br>Some time ago I submit first version of patch, to address this by entirely special<br>handling for KRT_SRC_KERNEL from "kernel" protocol core. Now I submit v2 of such<br>change which targets only Linux and not removes special handling for KRT_SRC_KERNEL<br>routes. Attached patch enable BIRD to  learn routes with RTPROT_KERNEL (ipp_kernel).<br><br id="style_13863673880000000987_BODY"><blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;"><div id=""><div class="js-helper js-readmsg-msg"><div id="style_13863673880000000987" class="mr_read__body"><div id="style_13863673880000000987_BODY"><br>
-- <br>
Elen sila lumenn' omentielvo<br><br>
Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org)<br>
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)<br>
"To err is human -- to blame it on a computer is even more so."<br><br></div></div></div></div></blockquote>
<br>
<br>--
<br>SP5474-RIPE
<br>Sergey Popovich<br></BODY></HTML>