BGP

Para que funcione internet hacen falta unas cuantas cosas, entre ellas hace falta la forma de saber como ir de un sitio a otro, como ir desde un ordenador o un telefono por internet a mi servidor para descargar este podcast por ejemplo, pues eso sin BGP no podría ser, sin BGP no podríamos tener Internet, o al menos no podríamos tener el intenret que ahora tenemos y como ahora lo conocemos.

Atributos de BGP:

  • well-known: Atributos que su utilización es obligatoria
    • Mandatory: Estos atributos son requeridos y deben ser reconocidos por todas las implementaciones de BGP.
    • Discretionary: Estos atributos no son requeridos, pero en el caso de estar presentes todos los routers que ejecuten BGP tiene que reconocerlos y actuar en la información que contienen.
  • Optional: Atributos opcionales.
    • Transitive: El router no debe de reconocer estos atributos, pero si este es el caso, marcará la actualización como parcial y enviará la actualización completa con los atributos, al siguiente router. Los atributos atraviesan el router sin ser cambiados, si no son reconocidos.
    • Nontransitive: Estos atributos son eliminados si caen en un router que no entiende o reconoce los atributos. Estos atributos no serán propagados al peer BGP.

Los atributos en concreto son:

  • Well Known:
    • AS-PAth (mandatory):
    • Next-Hop (mandatory):
    • Local PReference (Discretionary): Preferimos > LP. Solo iBGP
    • Origin (mandatory): i iBGP < e eBGP < ? incompleto (redistribuida)
    • Atomic Aggregate (discretionary): indica el router que ha hecho la agregación (ahçí se ha perdido información)
  • Optional
    • MED – Multi-exit discriminator (nontransitive): métrica coo entrar, se elige el menor
    • Community (transitivo) – Etiqueta
    • Weigh (Valor mayor propietario de Csico y no transtivo)
    • Aggregator (nontransitive): Router ID y el número de AS del router responsable de la agregación de la ruta
    • Originator ID (nontransitive): Lo genera el RR, para evitar bucles
    • Cluster ID (nontransitive): Identifica a los routers envueltos en la route reflection.

Proceso de selección de ruta en BGP:

  1. Se prefiere el weight mayor (local del router y propietario de Cisco)
  2. Se prefiere la local preference mayor (global del AS)
  3. Se prefiere la ruta originada por el router local
  4. Se Prefiere el AS_Path más corto
  5. Se prefiere el Origin más pequeño (IGP < EGP < incomplete)
  6. Se prefiere el MED más pequeño (desde otro AS)
  7. Se prefiere el path eBGP sobre el path iBGP
  8. Se prefiere el path a través del vecino IGP más cercano
  9. Se prefiere la ruta más antigua de los paths eBGP
  10. Se prefiere el path con el vecino BGP que tenga el Router ID más bajo
  11. Se prefiere el camino con el vecino BGP que tenga la dirección IP más baja

Regla de Sincronización: No utilizar, o anunciar a un vecino externo, una ruta aprendida por iBGP, hasta que no se haya aprendido de IGP. Para Asegura consistencia de la información a través del AS.

Pensar que configurar BGP es fácil, al menos que levante, ahora … optimizar esto … eso ya es otra película.

Alex Knight

One comment

  1. Buscaba la entrada en la que hablabas de la ruta null0 pero no la encuentro, así que te pegunto aquí. Si yo uso n BGP el comando aggregate addres sumarizaré las rutas mas específicas y empezaré a anunciar la sumarizada (si he usado summary only) a aquellos vecinos que no tengan rutas de esa red que sumarizo. Pero me surgen dudas. ¿Puedo enviar además esa red sumarizada hacia los que me han enviado las específicas?

    Si miro en la tabla de rutas:

    R3#sh ip route 172.16.0.0 255.255.240.0
    Routing entry for 172.16.0.0/20
    Known via “bgp 1”, distance 200, metric 0, type locally generated
    Routing Descriptor Blocks:
    * directly connected, via Null0
    Route metric is 0, traffic share count is 1
    AS Hops 0
    Aquí dice que es una ruta localmente generada y directamente conectada a Null 0 ¿Pero puedo redistibuirla hacia otros pares como una directamente conectada? No como ruta estática puesto que no es una ruta estática, supongo que si ya tengo una ruta a Null 0, no tengo que crear otra.
    Es decir ¿Puedo anunciar esta ruta a los que me anunciaron las subredes que estoy “agregando”, sin el comando network, mediante redistribute connected, puesto que es una red localmente generada?
    Puede que así se vea mejor es enviar esta superred (172.16.0.0/20) que se ha creado con aggregate summary a los vecinos 192.168.1.2, 192.168.1.3 y 192.168.1.4

    R3#sh ip route 172.16.0.0
    Routing entry for 172.16.0.0/16, 5 known subnets
    Variably subnetted with 2 masks

    B 172.16.0.0/24 [20/0] via 192.168.1.2, 02:39:36
    B 172.16.1.0/24 [20/0] via 192.168.1.3, 02:39:40
    B 172.16.2.0/24 [20/0] via 192.168.1.4, 02:40:21
    B 172.16.0.0/20 [200/0] via 0.0.0.0, 02:39:36, Null0

    El direccionamiento es de ejemplo no es direcionamiento real. Gracias.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.