<div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div><div>Rogerio,<br><br></div>Muchas gracias por el ejemplo. Lo que yo estoy buscando es qué pasa si el grupo tiene una política in y el peer también. ¿Tengo alguna forma aparte del "apply" en heredar la política del grupo? Esto es como lo resolví:<br><br></div>neighbor-group eBGP-peers<br></div> route-policy eBGP-peers in             ! input group policy<br></div><div> remove-private-as<br></div><div>!<br></div>neighbor 1.1.1.1<br></div> use group eBGP-peers<br>!<br></div>neighbor 2.2.2.2<br></div> use group eBGP-peers<br></div> route-policy neigh_2 in                  !input peer policy<br>!<br>route-policy eBGP-peers<br></div> if some_condition then<br></div>    drop<br></div> else<br></div>    pass<br></div> endif<br></div>end-set<br>!<br></div>route-policy neigh_2 in<br></div>  apply eBGP-peers<br></div>  if other_condition then<br></div>    drop<br></div>  else<br></div>    pass<br></div>  endif<br></div>end-set<br><br></div>Con este ejemplo, peer 1.1.1.1 hereda la política eBGP-peers y el remote-private-as sin problemas. Peer 2.2.2.2, hereda sin problemas el comando remove-private-as pero la política eBGP-peers no ya que tiene la política neigh_2 aplicada. Para solucionar esto hago un "apply eBGP-peers" dentro de la policy neigh_2. Esto funciona sin problemas y es simple pero quisiera saber si no hay algo más simple para indicar que herede la política del grupo.<br><br></div>Gracias,<br><br></div>Tomás Lynch<br></div><div class="gmail_extra"><br><div class="gmail_quote">2016-04-22 23:48 GMT-04:00 Rogerio Mariano <span dir="ltr"><<a href="mailto:rogermariano.cala@yahoo.com" target="_blank">rogermariano.cala@yahoo.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">Hola Tomas,<div><br></div><div><br></div><div><br></div><div><div>El route-map en el IOS XR se llama  RPL (Route Policy Language)  y se puede hacer de dos maneras, una por la XR CLI o la otra por Shell el QNX usando python o rest</div><div><br></div><div>En el caso del peer-group que será una sola política, lo que hará que una diferencia es que se puede aplicar esta política por el protocolo concatena su jerarquía de interfaz (por ejemplo, crea un RPL en un peer-group y luego aplicar esta política en la interfaz declarada vecina que dentro de la instancia de OSPF o IS-IS) o en la interfaz física individual. El XR es complejo de entender para aquellos acostumbrados a utilizar estos sistemas monolíticos, pero que ya se utiliza un JunOS o algún sistema BSD no tendrá dificultades para entender su semántica y estructura.</div><div><br></div><div><br></div><div>Hice un ejemplo que debe ayudarle, sigue a continuación ...</div><div><br></div><div><br></div><div><div>Sigue un artículo del Xander Thuijs es el gerente de la IOS XR BU y ASR9K en Cisco</div><div><br></div><div><a href="https://supportforums.cisco.com/document/88676/asr9000xr-understanding-and-using-rpl-route-policy-language" target="_blank">https://supportforums.cisco.com/document/88676/asr9000xr-understanding-and-using-rpl-route-policy-language</a></div><div><br></div></div><div><br></div><div><br></div><div><br></div><div><<<<< Exemplo Tomas 1 >>>>>>>>>>>>></div><div><br></div><div><div>ip prefix-list PERMITESUMARIO seq 5 permit <a href="http://10.0.0.0/8" target="_blank">10.0.0.0/8</a></div><div>ip prefix-list PERMITESUMARIO seq 10 permit <a href="http://172.16.0.0/12" target="_blank">172.16.0.0/12</a></div><div>ip prefix-list PERMITESUMARIO seq 15 permit <a href="http://164.85.0.0/16" target="_blank">164.85.0.0/16</a></div><div>ip prefix-list PERMITESUMARIO seq 20 permit <a href="http://192.168.0.0/16" target="_blank">192.168.0.0/16</a></div><div>ip prefix-list PERMITESUMARIO seq 25 deny <a href="http://10.0.0.0/8" target="_blank">10.0.0.0/8</a> le 32</div><div>ip prefix-list PERMITESUMARIO seq 30 deny <a href="http://172.16.0.0/12" target="_blank">172.16.0.0/12</a> le 32</div><div>ip prefix-list PERMITESUMARIO seq 35 deny <a href="http://164.85.0.0/16" target="_blank">164.85.0.0/16</a> le 32</div><div>ip prefix-list PERMITESUMARIO seq 40 deny <a href="http://192.168.0.0/16" target="_blank">192.168.0.0/16</a> le 32</div><div>ip prefix-list PERMITESUMARIO seq 45 permit <a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a> le 32</div><div>!</div><div>route-map SoO_9999 permit 10</div><div>set local-preference 100</div><div>set extcommunity soo 33333:9999</div><div>!</div><div>router bgp 1234</div><div>address-family ipv4 vrf tomas</div><div>no synchronization</div><div>neighbor CE_tomas_M3_M4 peer-group</div><div>neighbor CE_tomas_M3_M4 timers 10 30</div><div>neighbor CE_tomas_M3_M4 as-override</div><div>neighbor CE_tomas_M3_M4 remote-as 33333</div><div>neighbor CE_tomas_M3_M4 soft-reconfiguration inbound</div><div>neighbor CE_tomas_M3_M4 default-originate</div><div>neighbor CE_tomas_M3_M4 prefix-list PERMITESUMARIO out</div><div>neighbor 1.1.1.2 description peering CE-1</div><div>neighbor 1.1.1.2 peer-group CE_tomas_M3_M4</div><div>neighbor 1.1.1.2 route-map SoO_9999 in</div><div>neighbor 1.1.1.2 activate</div><div>aggregate-address 10.0.0.0 255.0.0.0 </div><div>aggregate-address 172.16.0.0 255.240.0.0</div><div>aggregate-address 164.85.0.0 255.255.0.0</div><div>aggregate-address 192.168.0.0 255.255.0.0</div><div>exit-address-family</div><div><br></div><div><br></div><div>######################################################</div><div><br></div><div><br></div><div>vrf tomas</div><div> address-family ipv4 unicast</div><div>  import route-target</div><div>   1234:100</div><div>  !</div><div>  export route-target</div><div>   1234:100</div><div>  !</div><div> !</div><div>!</div><div>!</div><div>prefix-set PRFX-DENY-SUMARIO</div><div>  <a href="http://10.0.0.0/8" target="_blank">10.0.0.0/8</a> le 32,</div><div>  <a href="http://172.16.0.0/12" target="_blank">172.16.0.0/12</a> le 32,</div><div>  <a href="http://164.85.0.0/16" target="_blank">164.85.0.0/16</a> le 32,</div><div>  <a href="http://192.168.0.0/16" target="_blank">192.168.0.0/16</a> le 32</div><div>end-set</div><div>!</div><div>prefix-set PRFX-PERMIT-SUMARIO</div><div>  <a href="http://10.0.0.0/8" target="_blank">10.0.0.0/8</a>,</div><div>  <a href="http://172.16.0.0/12" target="_blank">172.16.0.0/12</a>,</div><div>  <a href="http://164.85.0.0/16" target="_blank">164.85.0.0/16</a>,</div><div>  <a href="http://192.168.0.0/16" target="_blank">192.168.0.0/16</a></div><div>end-set</div><div>!</div><div>route-policy POL--BGP-M4--OUT</div><div>  if destination in PRFX-PERMIT-SUMARIO then</div><div>    done</div><div>  elseif destination in PRFX-DENY-SUMARIO then</div><div>    drop</div><div>  else</div><div>    done</div><div>  endif</div><div>end-policy</div><div>!</div><div>route-policy POL--BGP-M4-SOO--IN($soo)</div><div>  set local-preference 100</div><div>  set extcommunity soo (33333:$soo)</div><div>  done</div><div>end-policy</div><div>!</div><div>router bgp 1234</div><div> address-family ipv4 unicast</div><div> !</div><div> address-family vpnv4 unicast</div><div> !</div><div> neighbor-group CE_tomas_M4</div><div>  remote-as 33333</div><div>  timers 10 30</div><div>  address-family ipv4 unicast</div><div>   route-policy POL--BGP-M4--OUT out</div><div>   as-override</div><div>   default-originate</div><div>   soft-reconfiguration inbound</div><div>  !</div><div> !</div><div> vrf tomas</div><div>  rd 1234:1</div><div>  address-family ipv4 unicast</div><div>   aggregate-address <a href="http://10.0.0.0/8" target="_blank">10.0.0.0/8</a></div><div>   aggregate-address <a href="http://164.85.0.0/16" target="_blank">164.85.0.0/16</a></div><div>   aggregate-address <a href="http://172.16.0.0/12" target="_blank">172.16.0.0/12</a></div><div>   aggregate-address <a href="http://192.168.0.0/16" target="_blank">192.168.0.0/16</a></div><div>  !</div><div>  neighbor 1.1.1.2</div><div>   use neighbor-group CE_tomas_M4</div><div>   description peering CE-1</div><div>   address-family ipv4 unicast</div><div>    route-policy POL--BGP-M4-SOO--IN(9999) in</div><div>   !</div><div>  !</div><div> !</div><div>!</div></div><div><br></div><div>Saludos,</div><div><br></div><div>Rogerio Mariano</div><div><div class="h5"><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br><div><div><blockquote type="cite"><div>Em 22 de abr de 2016, à(s) 15:39, Tomas Lynch <<a href="mailto:tomas.lynch@gmail.com" target="_blank">tomas.lynch@gmail.com</a>> escreveu:</div><br><div><div dir="ltr"><div><div><div>Excelente Javier, es un AND, es verdad. Muchas gracias.<br><br><br></div>Ahora mi siguiente pregunta es sobre XR. En el caso de que el neighbor pertenezca a un peer group donde ambos tienen un route-policy, el policy del neighbor es el único que se aplica. SI quisiera aplicar ambos policies puedo usar el comando " apply $peer-group-policy" dentro del policy del neighbor. Existe alguna manera más fácil de hacer esto?<br><br></div>Gracias,<br><br></div>Tomas<br></div><div class="gmail_extra"><br><div class="gmail_quote">2016-04-22 14:13 GMT-04:00 Javier Rodriguez <span dir="ltr"><<a href="mailto:rodriguezsotelo@gmail.com" target="_blank">rodriguezsotelo@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Tomas,<div><br></div><div>En ese caso si por ejemplo un anuncio se acepta por el prefix-list del neighbor y el route-map del grupo lo descarta, queda rechazado. En otro caso, si el prefix-list del neighbor descarta y el route-map del grupo acepta,  queda descartado. En conclusión hace un AND entre las dos políticas.</div><div>Hugo en "BGP Design and Implementation" de Cisco difiere de información que hay en internet, antepone el filter-list al route-map. De todos modos en el escenario de Tomas no existe filter-list por lo tanto no hay cambios.<br></div><div>Inbound: filter-list -> Route-Map -> Distribute List/Prefix List<br></div><div>Si mal no recuerdo de practicas en laboratorio este ultimo orden es el acertado.<br></div><div><br></div><div>Saludos,</div><div><br></div><div>Javier I. Rodríguez Sotelo</div><div><br></div></div><div class="gmail_extra"><div><div><br><div class="gmail_quote">El 22 de abril de 2016, 14:55, Nicolas Antoniello <span dir="ltr"><<a href="mailto:nantoniello@gmail.com" target="_blank">nantoniello@gmail.com</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Fe de erratas: debi decir "hereda". <div>:)<div><div><span></span><br><br>El Friday, April 22, 2016, Tomas Lynch <<a href="mailto:tomas.lynch@gmail.com" target="_blank">tomas.lynch@gmail.com</a>> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">2016-04-22 13:32 GMT-04:00 Nicolas Antoniello <span dir="ltr"><<a>nantoniello@gmail.com</a>></span>:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hola Tomas,<div><br></div><div>Mi experiencia si mal no recuerdo es que el peer ereda del peer-group y si hay solapamiento gana el <span></span>peer... Pero supongo que es OS depndiente eso (asumo que hablas de Cisco).</div><div><br></div></blockquote><div><br>Si definitivamente IOS.<br><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></div><div>Saludos,</div><div>Nico</div><div><div><div><br><br>El Friday, April 22, 2016, Tomas Lynch <<a>tomas.lynch@gmail.com</a>> escribió:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><p dir="ltr">Gracias Hugo pero qué pasa cuando el peer group tiene un route map y el peer tiene un prefix list. Se mantiene la misma precedencia?</p>
<div class="gmail_quote">On Apr 22, 2016 12:43 PM, "Zamora López Hugo" <<a>HZAMORA@reduno.com.mx</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">



<u></u>

<div link="blue" vlink="purple" lang="ES">
<div><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy">Tomas,<u></u><u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy">For inbound updates, the order of precedence is route-map, filter-list, prefix-list, distribute-list<u></u><u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy">For outbound updates, the order of precedence is prefix-list, distribute-list, filter-list, route-map<u></u><u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy">Saludos.<u></u><u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy">Hugo Zamora<u></u><u></u></span></font></p><p class="MsoNormal"><font face="Arial" color="navy" size="2"><span style="font-size:10pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>
<div>
<div class="MsoNormal" style="text-align:center" align="center"><font face="Times New Roman" size="3"><span style="font-size:12pt">
<hr size="2" width="100%" align="center">
</span></font></div><p class="MsoNormal"><b><font face="Tahoma" size="2"><span style="font-size:10pt;font-family:Tahoma;font-weight:bold">De:</span></font></b><font face="Tahoma" size="2"><span style="font-size:10pt;font-family:Tahoma"> LACNOG [mailto:<a>lacnog-bounces@lacnic.net</a>]
<b><span style="font-weight:bold">En nombre de </span></b>Tomas Lynch<br>
<b><span style="font-weight:bold">Enviado el:</span></b> Viernes, 22 de Abril de 2016 11:07 a.m.<br>
<b><span style="font-weight:bold">Para:</span></b> <u></u>Latin America and Caribbean Region Network Operators Group<u></u><br>
<b><span style="font-weight:bold">Asunto:</span></b> [lacnog] Cisco route-maps and route-policy</span></font><u></u><u></u></p>
</div><p class="MsoNormal"><font face="Times New Roman" size="3"><span style="font-size:12pt"><u></u> <u></u></span></font></p>
<div>
<div>
<div>
<div>
<div>
<div>
<div><p class="MsoNormal" style="margin-bottom:12pt"><font face="Times New Roman" size="3"><span style="font-size:12pt">Estimados,<u></u><u></u></span></font></p>
</div><p class="MsoNormal" style="margin-bottom:12pt"><font face="Times New Roman" size="3"><span style="font-size:12pt">Heredé, por decirlo de alguna manera, una red que tiene varios peers de BGP.<u></u><u></u></span></font></p>
</div><p class="MsoNormal" style="margin-bottom:12pt"><font face="Times New Roman" size="3"><span style="font-size:12pt">Todos están agrupados en distintos peer groups y estos peer-groups tienen sus políticas de entrada y salida. Algunos neighbors tienen una
 prefix list en particular. Sigue un ejemplo:<u></u><u></u></span></font></p>
</div><p class="MsoNormal"><font face="Times New Roman" size="3"><span style="font-size:12pt">neighbor eBGP-Group route-map OUTPUT out<br>
neighbor eBGP-Group route-map INPUT in<br>
!<u></u><u></u></span></font></p>
</div>
<div><p class="MsoNormal"><font face="Times New Roman" size="3"><span style="font-size:12pt">neighbor 1.1.1.1 peer-group eBGP-Group<u></u><u></u></span></font></p>
</div><p class="MsoNormal" style="margin-bottom:12pt"><font face="Times New Roman" size="3"><span style="font-size:12pt">neighbor 1.1.1.1 prefix-list CUALQUIERA in<u></u><u></u></span></font></p>
</div><p class="MsoNormal" style="margin-bottom:12pt"><font face="Times New Roman" size="3"><span style="font-size:12pt">Mi pregunta es si el neighbor 1.1.1.1 primero analiza la prefix-list y luego el route-map INPUT o si lo hace al revés por la precendencia
 del route-map en los inbound policies o si simplemente no toma en cuenta el route-map.<u></u><u></u></span></font></p>
</div>
<div><p class="MsoNormal" style="margin-bottom:12pt"><font face="Times New Roman" size="3"><span style="font-size:12pt">Muchas gracias,<u></u><u></u></span></font></p>
</div>
<div><p class="MsoNormal"><font face="Times New Roman" size="3"><span style="font-size:12pt">Tomas Lynch<u></u><u></u></span></font></p>
</div>
</div>
</div>
</div>

<br>_______________________________________________<br>
LACNOG mailing list<br>
<a>LACNOG@lacnic.net</a><br>
<a href="https://mail.lacnic.net/mailman/listinfo/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/listinfo/lacnog</a><br>
Cancelar suscripcion: <a href="https://mail.lacnic.net/mailman/options/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/options/lacnog</a><br>
<br></blockquote></div>
</blockquote></div>
</div></div><br>_______________________________________________<br>
LACNOG mailing list<br>
<a>LACNOG@lacnic.net</a><br>
<a href="https://mail.lacnic.net/mailman/listinfo/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/listinfo/lacnog</a><br>
Cancelar suscripcion: <a href="https://mail.lacnic.net/mailman/options/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/options/lacnog</a><br>
<br></blockquote></div><br></div></div>
</blockquote></div></div></div>
<br>_______________________________________________<br>
LACNOG mailing list<br>
<a href="mailto:LACNOG@lacnic.net" target="_blank">LACNOG@lacnic.net</a><br>
<a href="https://mail.lacnic.net/mailman/listinfo/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/listinfo/lacnog</a><br>
Cancelar suscripcion: <a href="https://mail.lacnic.net/mailman/options/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/options/lacnog</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div></div></div><span><font color="#888888">-- <br><div><div>Atte.</div><div><br></div>Javier I. Rodríguez Sotelo<div><br></div></div>
</font></span></div>
<br>_______________________________________________<br>
LACNOG mailing list<br>
<a href="mailto:LACNOG@lacnic.net" target="_blank">LACNOG@lacnic.net</a><br>
<a href="https://mail.lacnic.net/mailman/listinfo/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/listinfo/lacnog</a><br>
Cancelar suscripcion: <a href="https://mail.lacnic.net/mailman/options/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/options/lacnog</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>LACNOG mailing list<br><a href="mailto:LACNOG@lacnic.net" target="_blank">LACNOG@lacnic.net</a><br><a href="https://mail.lacnic.net/mailman/listinfo/lacnog" target="_blank">https://mail.lacnic.net/mailman/listinfo/lacnog</a><br>Cancelar suscripcion: <a href="https://mail.lacnic.net/mailman/options/lacnog" target="_blank">https://mail.lacnic.net/mailman/options/lacnog</a><br></div></blockquote></div><br></div></div></div></div></div></div><br>_______________________________________________<br>
LACNOG mailing list<br>
<a href="mailto:LACNOG@lacnic.net">LACNOG@lacnic.net</a><br>
<a href="https://mail.lacnic.net/mailman/listinfo/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/listinfo/lacnog</a><br>
Cancelar suscripcion: <a href="https://mail.lacnic.net/mailman/options/lacnog" rel="noreferrer" target="_blank">https://mail.lacnic.net/mailman/options/lacnog</a><br>
<br></blockquote></div><br></div>