BGP Remove-private (Parte 1 - Introducción)

En esta entrada vamos a introducir los conceptos necesarios para entender en qué consiste el el parámetro remove-private en BGP y su funcionamiento básico. En próximas entradas veremos el distinto comportamiento según su implementación en Cisco IOS, IOS-XR y Juniper.

En primer lugar, tenemos que tener algunas nociones de qué es el AS-Path en BGP. Puede ser un tema complejo, pero en el tema que nos ocupa nos sirve con entender lo siguiente:

  • AS-Path es un atributo de las rutas BGP, que consiste en la secuencia de los AS que habría que recorrer para llegar al origen de dicha ruta. 
  • Es uno de los parámetros utilizados en el algoritmo de selección de ruta utilizado en BGP, el 4º en importancia y uno de los más habituales en generar desempates entre rutas siendo mejor la ruta con menor longitud de AS-Path.
  • Se utiliza para prevención de bucles en BGP. Básicamente un router no aceptará anuncios de rutas BGP que contengan su propio AS en el AS-Path. Se puede ver con algo más de detalle aquí



Una vez sabemos esto, también hay que tener en cuenta que IANA reserva el rango 64512-65534 para uso privado. Sin entrar en demasiado detalle, estos AS se utilizan habitualmente en sedes de cliente ya que los públicos, como sucede con las IPs, son asignados por IANA a proveedores y organizaciones de gran entidad y están limitados.

Por fin llegamos al uso de remove-private y su por qué.

  • En la RFC 6996 donde se define el uso de números AS privados, se indica que dichos números no deben ser incluidos en el AS-Path en los anuncios a Internet Global (sección 4). Por lo tanto los proveedores deben utilizar aquí remove-private. 
  • Aunque no anunciemos a Internet, si utilizamos el mismo AS privado en distintas sedes, estas no se van a “ver” al aplicarse el mecanismo de prevención de bucles de BGP que mencionamos anteriormente. En la imagen inferior se entiende con mayor claridad y para que haya visibilidad entre las sedes tendría que configurarse remove-private en PE A y PE B. En este caso también son los proveedores quienes lo deben configurar. 


El funcionamiento fundamental es bastante intuitivo, básicamente aplicando remove-private sobre un vecino eliminaremos los números de AS privados presentes en el AS-Path. Así pues, nuestra el anuncio desde el PE B, con remove-private configurado eliminaría el AS privado y añadiría el suyo, en este caso el público 4637.



En la siguiente entrada veremos en mayor detalle el funcionamiento de BGP remove-private en Cisco IOS, IOS-XR y Juniper y las diferencias más significativas.

Comentarios

Entradas populares