<div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">Hello all,</span><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><div><br>

</div><div>I would like to use ROA filtering on my bird setup to reject invalid prefixes announced by my peers.</div><div><br></div><div>I know there is currently no easy way to bind bird to an RPKI validator, right?</div>

<div><br></div><div>I have to create a table in my conf file with</div><div>"roa table roa_table_name"<br></div><div><br></div><div>I have read (<a href="https://ripe65.ripe.net/presentations/191-BIRD-20120926-OF-RIPE-EIX.pdf" target="_blank">https://ripe65.ripe.net/presentations/191-BIRD-20120926-OF-RIPE-EIX.pdf</a>) there is a way to populate dynamically this table.</div>

<div>How can I do that? "roa add" in cli?</div><div>Is there a way to flush the table?</div><div><br></div><div>I have also read (<a href="https://github.com/BIRD/bird/blob/master/filter/test.conf" target="_blank">https://github.com/BIRD/bird/blob/master/filter/test.conf</a>) I can use <span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">roa_check().</span></div>

<div><br></div><div>Can I do a filter like this?</div><div><br></div><div><div> protocol bgp my_peer {</div><div>        local as 65000;</div><div>        neighbor 192.0.2.1 as 65001;</div><div>        import filter peer_in;</div>

<div>}</div><div><br></div></div><div>filter peer_in {</div><div><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">    if roa_check(roa_table_name, net, </span><font color="#333333" face="Consolas, Liberation Mono, Courier, monospace"><span style="font-size:12px;line-height:16px;white-space:pre-wrap">bgp_path.last</span></font><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">) = </span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">ROA_INVALID</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap"> </span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">then reject;</span></div>

</div><div style="font-family:arial,sans-serif;font-size:13px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">    accept;</span></div>

<div style="font-family:arial,sans-serif;font-size:13px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">}</span></div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;white-space:pre-wrap">Cheers!</span></div>

</div>