<div dir="ltr">Hello there,<div><br></div><div>I am facing an issue with a route reflection setup on BIRD. </div><div>I have the following setup: </div><div><font face="times new roman, serif">external router --(eBGP)--    monitor<br>                                              | (iBGP)<br>                                              |<br>                                              reflector<br>                                              | (iBGP)<br>                                              |<br>                                              client<br></font></div><div><br></div><div>The reflector reflects routes from the monitor (monitoring the external router via BGP) to the client. However, I notice that the originator ID (used for loop detection in a RR setup) is input by the  BIRD RR only in announcements, and not in withdrawals. This means that if the same withdrawal (from the monitor) propagates within the RR cluster there is no way to disambiguate this from another withdrawal. According to RFC4456 (<a href="https://www.rfc-editor.org/rfc/rfc4456">https://www.rfc-editor.org/rfc/rfc4456</a>):</div><div><br><font face="times new roman, serif">ORIGINATOR_ID<br><br>   ORIGINATOR_ID is a new optional, non-transitive BGP attribute of Type<br>   code 9.  This attribute is 4 bytes long and it will be created by an<br>   RR in reflecting a route.  This attribute will carry the BGP<br>   Identifier of the originator of the route in the local AS.  A BGP<br>   speaker SHOULD NOT create an ORIGINATOR_ID attribute if one already<br>   exists.  A router that recognizes the ORIGINATOR_ID attribute SHOULD<br>   ignore a route received with its BGP Identifier as the ORIGINATOR_ID.</font><br></div><div>Also:</div><div><font face="times new roman, serif">If a route carries the ORIGINATOR_ID attribute, then in Step f)<br>      the ORIGINATOR_ID SHOULD be treated as the BGP Identifier of the<br>      BGP speaker that has advertised the route.</font><br></div><div><br></div><div>So, since RFC4456 is fully supported in BIRD, shouldn't this be present both in route announcements and withdrawals?</div><div><br></div><div>This is my simple BIRD configuration (I am running version 2.0.10):</div><div><span style="font-family:"times new roman",serif">log syslog all;</span><br></div><div><font face="times new roman, serif"><br>router id 192.168.55.4;<br><br>protocol device {<br>}<br><br>template bgp rr_clients {<br>  local 192.168.55.4 as 50414;<br>  neighbor as 50414;<br>  rr client;<br>  rr cluster id 1.0.0.1;<br><br>       ipv4 {<br>                import all;<br>           export all;<br>   };<br><br>  ipv6 {<br>                import all;<br>           export all;<br>   };<br>}<br><br>protocol bgp monitor from rr_clients {<br>       neighbor 192.168.55.3;<br>}<br><br>protocol bgp client1 from rr_clients {<br>   neighbor 192.168.55.2;<br>}</font><br clear="all"><div><br></div><div>Thanks in advance!</div><div><br></div><div>Best regards,</div><div>Vasileios</div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><span><div dir="ltr" style="margin-left:0pt" align="left"><span><div dir="ltr" style="margin-left:0pt" align="left"><table style="border:none;border-collapse:collapse"><colgroup><col width="111"><col width="316"></colgroup><tbody><tr style="height:72.08105468750001pt"><td style="border-left:solid #ffffff 1pt;border-right:solid #ffffff 1pt;border-bottom:solid #ffffff 1pt;border-top:solid #ffffff 1pt;vertical-align:top;padding:5pt 5pt 5pt 5pt;overflow:hidden"><p dir="ltr" style="line-height:1.2;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap"><span style="border:none;display:inline-block;overflow:hidden;width:84px;height:84px"><img src="https://lh4.googleusercontent.com/dKy7aF4mqdaJMvpZSZLfMMeiZuvmejLJFA3ebgzpQBq1Yjf70YiVBRNgBD70ATC-YrBI_n1c5rz4HbONHGnx8x8KrLMvRqKTw_O0eVx3jwiKaAA_jAuCdhtB1Fvj-OMIOnxofzGAXsOFgvhbiA" width="84" height="84" style="margin-left:0px;margin-top:0px"></span></span></p></td><td style="border-left:solid #ffffff 1pt;border-right:solid #ffffff 1pt;border-bottom:solid #ffffff 1pt;border-top:solid #ffffff 1pt;vertical-align:top;padding:5pt 5pt 5pt 5pt;overflow:hidden"><p dir="ltr" style="line-height:1.2;margin-top:0pt;margin-bottom:0pt"><span style="font-size:10.5pt;font-family:"Red Hat Display",sans-serif;color:rgb(9,43,80);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Vasileios Kotronis</span></p><p dir="ltr" style="line-height:1.2;margin-top:0pt;margin-bottom:0pt"><span style="font-size:10.5pt;font-family:"Red Hat Display",sans-serif;color:rgb(23,43,77);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">CTO & Co-founder</span><span style="font-size:10pt;font-family:"Red Hat Display",sans-serif;color:rgb(23,43,77);background-color:transparent;vertical-align:baseline;white-space:pre-wrap"><br></span><a href="http://www.codebgp.com" target="_blank"><span style="font-size:10.5pt;font-family:"Red Hat Display",sans-serif;color:rgb(59,98,240);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">www.codebgp.com</span></a></p><p dir="ltr" style="line-height:1.2;margin-top:10pt;margin-bottom:0pt"><span style="font-size:10.5pt;font-family:"Red Hat Display",sans-serif;color:rgb(9,43,80);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Monitor • Detect • Protect</span><span style="font-size:10pt;font-family:"Red Hat Display",sans-serif;color:rgb(9,43,80);background-color:transparent;vertical-align:baseline;white-space:pre-wrap"><br></span></p></td></tr></tbody></table></div></span><table style="border:none;border-collapse:collapse"><colgroup><col width="111"><col width="316"></colgroup><tbody></tbody></table></div></span></div></div></div></div>