¿OSPF o iBGP para el protocolo de enrutamiento interior?

8

Entonces, el plan es, dos enrutadores centrales cada uno con una sesión eBGP a uno de los dos ISP con rutas completas. Ambos enrutadores publican sus tablas completas entre sí para que puedan controlar el flujo de tráfico de manera más inteligente a través de iBGP.

Por razones de argumento, tres enrutadores de acceso tienen una ruta a cada enrutador central. Iba a configurar iBGP y publicar una ruta predeterminada desde cada enrutador central para que tengan cierta resistencia contra fallas de hardware y usar filtros para controlar qué rutas se envían realmente a los dispositivos de acceso.

He escuchado que las personas usan OSPF para su IGP en general, por supuesto, hay un elemento específico de cada caso.

Mi pregunta es: ¿Cuál sería el beneficio de reemplazar iBGP con OSPF?

OJS
fuente
¿Alguna de las respuestas te ayudó? Si es así, debe aceptar la respuesta para que la pregunta no siga apareciendo para siempre, buscando una respuesta. Alternativamente, puede responder su propia pregunta y aceptar la respuesta.
Ron Maupin

Respuestas:

10

iBGP requiere una malla completa o el uso de mitigación como confederaciones o reflectores de ruta, BGP no converge con nada como la velocidad de OSPF, etc.

Cada enrutador OSPF tendría una comprensión completa de todas las rutas que se encuentran en el área en la que reside sin necesidad de una malla completa, y converge muy, muy rápidamente.

Se recomienda usar un IGP con iBGP. Sin el IGP, iBGP debe ser vecino en las interfaces externas, con un IGP, iBGP puede ser vecino en las interfaces de bucle invertido que nunca fallan, y puede tener múltiples caminos para llegar.

He visto solo iBGP para el enrutamiento local, pero es más difícil y frágil.

Ron Maupin
fuente
7

En primer lugar, cuestionaría la afirmación de que algunos otros han hecho que OSPF converja más rápido que BGP, pero más sobre eso más adelante. Para responder a la pregunta OP primero.

Quieres los dos.

iBGP está diseñado para ejecutarse entre las interfaces de bucle invertido en los enrutadores y no cambia (al menos sin ajustar y girar algunas perillas) ningún atributo (que incluye el siguiente salto) de las rutas que anuncia.

Entonces, ¿cuáles son las implicaciones de eso?

Llamemos a sus enrutadores fronterizos enrutador A, y enrutador B y sus tres enrutadores de acceso en aras de argumento, enrutador 1, enrutador 2 y enrutador 3.

Los enrutadores A y B obtienen alimentaciones completas de Internet de sus canales ascendentes, con el siguiente salto configurado en la dirección de interfaz del canal ascendente en el enlace de interconexión. Cuando esas rutas se transmiten a través de iBGP, nuevamente, a menos que modifique, el siguiente salto de la ruta que reciben los enrutadores 1, 2 y 3 sigue siendo la dirección IP en el otro extremo de ese enlace de interconexión.

Los enrutadores harán una búsqueda recursiva para encontrar la ruta a esa dirección IP y luego usarán el siguiente salto cuando la ruta esté instalada en la tabla de reenvío. "Pero", dices, "usaré el auto del próximo salto". Vea el siguiente párrafo para ver cómo funciona esto.

"Pero", también puede decir: "Solo estoy anunciando los valores predeterminados a los enrutadores 1, 2 y 3." De acuerdo, pero esa ruta predeterminada debe provenir de algún lugar ... si es un valor predeterminado ya existente (digamos estático), tendrá un siguiente salto que se usará. Si es un valor predeterminado generado ... probablemente usará la dirección de bucle invertido en la que se ejecuta la sesión iBGP como el siguiente salto. Nuevamente, esto no se verá como una interfaz o ruta conectada directamente en los enrutadores 1, 2 y 3, por lo que aún tendrán que hacer una búsqueda recursiva para encontrarla.

Por lo tanto, necesita algún tipo de ejecución de IGP, como OSPF, IS-IS o EIGRP, o incluso una gran cantidad de estadísticas dolorosas en la parte posterior para administrar, para que la accesibilidad funcione para las búsquedas recursivas.

"Pero", dice de nuevo, "ejecutaré las sesiones de iBGP en las direcciones de la interfaz en lugar de los bucles. OK, pero ahora su sesión de interconexión BGP depende de que la interfaz esté" activa "para funcionar. Entonces, por ejemplo, Si la interfaz entre el enrutador 1 y el enrutador A se cae, también lo hace la sesión de emparejamiento de iBGP que se ejecuta en esa interfaz. Pero el enrutador 1 todavía tiene la capacidad de enviar tráfico al enrutador A, solo tiene que hacerlo a través del enrutador B. Entonces, usted desea que la sesión de iBGP permanezca activa, incluso cuando esas interfaces se desactivan, porque su próximo salto final aún está más allá y aún se puede acceder a través de otra ruta ... OSPF (uso OSPF, pero puede sub IS- IS y EIGRP en cualquier lugar donde vea OSPF aquí) descubrirán esa otra ruta interna y se encargarán de construir la tabla de reenvío correctamente en esa búsqueda recursiva.

Entonces, sí, probablemente pueda ajustar suficientes botones y obtener una configuración pura de iBGP que funcione sin ninguna configuración de IGP ... pero, por favor, no ... será mucho trabajo, seguramente será flakey.

Hágase un favor y active OSPF, o IS-IS, o incluso EIGRP si es una tienda de Cisco pura (pero considere si realmente quiere aceptar ese bloqueo de proveedor si lo hace ... considere futuras decisiones potenciales usar el equipo de un proveedor diferente ... aunque solo sea para tratar de mantener a Cisco honesto en los precios con usted). Actívelo para todas sus interfaces entre sus enrutadores, y también configúrelo en su conexión aguas arriba con la configuración pasiva, y probablemente también en sus aguas abajo de sus enrutadores de acceso con la configuración pasiva. Luego configure sus pares de iBGP entre sus bucles. Considere los reflectores de ruta (probablemente en los enrutadores A y B) para reducir el esfuerzo de configuración requerido ... tiene sentido en aproximadamente 5 enrutadores comenzar a hacerlo.

Realmente es la forma más sensata de hacer esto.

Ahora, a las velocidades de convergencia de protocolo.

La mayoría de las personas piensan que BGP es lento y OSPF (o lo que sea) es rápido debido a los casos de uso comunes para estos protocolos. Por lo general, las personas acceden a Internet completo, o al menos una fracción significativa del mismo, a BGP, mientras solo manejan rutas internas en OSPF (de 10 a 100, tal vez en los miles de rutas bajas). Entonces, supongamos que está incorporando la mitad de las rutas de Internet a BGP ... intente construir un área OSPF con más de 250,000 rutas y dígame cómo le va. Veamos si eso converge más rápido que BGP ... o alguna vez a menos que tenga un plano de control realmente robusto en sus enrutadores.

BGP, para una situación dada, con frecuencia puede converger, o volver a converger, más rápido que OSPF y otros, al menos dependiendo de cómo lo mida. Si incluye el descubrimiento vecino de OSPF en una red de transmisión, es casi seguro que BGP ganará por una combinación similar de rutas.

La otra diferencia es que BGP comenzará a poner rutas en las tablas de enrutamiento y reenvío antes de que su (re) convergencia haya terminado, lo que puede ser un beneficio, mientras que las implementaciones de OSPF seguramente esperarán hasta el final antes de comenzar a poner rutas en las tablas de enrutamiento y reenvío. . A veces, tener una ruta parcial configurada puede ser útil. A veces no.

Jeff McAdams
fuente
1
Creo que está haciendo esto más complicado de lo necesario. Si bien no cuestiono sus comentarios en general, en este caso no hay nada que ganar agregando un IGP. En este escenario, BGP anuncia una ruta predeterminada a los enrutadores de acceso. Si esa es una ruta interna o externa es irrelevante. O el tráfico va al enrutador A o al enrutador B. Agregar OSPF no hará que eso sea más fácil o más rápido. Utilizando una dirección de bucle invertido para la interconexión ibgp no compra mucho si usted está anunciando una ruta por defecto .-- si el enlace a una baja, no hay razón para enviar tráfico a A.
Ron tronco
Incluso si A es la mejor ruta de salida, el tráfico seguirá llegando a través de B. Eso es cierto si usa iBGP con un loopback, en la interfaz o usa un IGP.
Ron Trunk
1
No está equivocado, pero tendrá que tener algún tipo de "IGP", incluso si ese "IGP" es una estática manual para el loopback del enrutador A (y B). Y, es cierto, me siento bastante cómodo ejecutando BGP y OSPF, por lo que me gustaría configurar esto para algunas pruebas futuras (es decir, hay algunos argumentos bastante buenos para permitir que esas rutas de Internet bajen a los enrutadores 1, 2 y 3) pueden tomar mejores decisiones sobre qué salida usar y, por lo tanto, hacia qué enrutador A o B reenviar). Y sí, eso también se puede hacer sin un IGP completo, pero realmente no agrega mucha complejidad para que sea una configuración más limpia.
Jeff McAdams
No abordó la pregunta del OP: "¿Cuál sería el beneficio de reemplazar iBGP con OSPF?" Ejecutar un IGP con iBGP es el método preferido, pero la pregunta es específica y no es lo que usted respondió.
Ron Maupin
3

Si bien todo lo que dice @RonMaupin es cierto, en su caso particular , con solo cinco enrutadores, no hay mucho que ganar agregando otro protocolo de enrutamiento.

Como no tiene una malla completa, deberá configurar sus enrutadores centrales como reflectores de ruta.

El único inconveniente real es que BGP converge más lentamente que OSPF, pero hay formas de minimizar esa deficiencia.

Ron Trunk
fuente
No estoy seguro de que efectivamente haya una malla completa, a menos que los enrutadores centrales estén configurados como reflectores de ruta. El OP no dijo nada sobre cada uno de los tres enrutadores de acceso que se conectan a cada uno de los otros enrutadores de acceso, solo a los enrutadores centrales. Será necesario implementar una malla completa o una mitigación.
Ron Maupin
Tienes razón. Leí mal eso. Editaré mi respuesta.
Ron Trunk
1
No tengo claras sus intenciones con respecto a sus consejos sobre malla completa, pero para tratar de aclarar ... el requisito de malla completa es para las sesiones de iBGP, no para la conectividad. Incluso si dos enrutadores no tienen un enlace directo entre ellos, deberían tener una sesión de emparejamiento de iBGP entre ellos, porque el IGP resolverá recursivamente el siguiente salto a cualquier enrutador intermedio que necesite para llegar al par de iBGP. Route Reflection es una buena idea en alrededor de 5 rutas solo para reducir el esfuerzo de gestión involucrado, realmente no tiene nada que ver con las rutas de conectividad física.
Jeff McAdams
1
Sin una malla completa (lógica o física) o mitigación, iBGP puede meterse en problemas de enrutamiento porque AS-PATH no se actualiza, por lo que iBGP no anunciará las rutas aprendidas de un par de iBGP. El enrutador de acceso A nunca aprenderá las rutas originadas en los enrutadores de acceso B y C. Los reflectores de ruta mitigan esto. iBGP siempre ha tenido un requisito de malla completa.
Ron Maupin
2
Escenario: enrutador de acceso Una ruta predeterminada activa va al enrutador central 1, y el enlace del enrutador de acceso B al enrutador central 1 está inactivo. Qué sucede cuando un host en el enrutador de acceso A quiere enviar a un host en el enrutador de acceso B. El tráfico nunca llegará al enrutador de acceso B porque el Core 1 ya no tiene una ruta al enrutador de acceso B porque no puede aprender esas rutas del núcleo enrutador 2. iBGP requiere una malla completa o mitigación, que siempre ha sido necesaria.
Ron Maupin