El propósito de este documento es proporcionar una mejor comprensión del atributo de discriminador de salidas múltiples (MED) del protocolo de gateway fronterizo (BGP) al cruzar un límite del sistema autónomo (AS) implementándolo en diferentes escenarios.
El MED proporciona una manera dinámica de influir en otro AS en el modo de alcanzar una ruta determinada cuando hay varios puntos de entrada para ese AS. BGP sigue un procedimiento sistemático para elegir la mejor trayectoria. Hay otros atributos importantes como peso, preferencia local, ruta de origen y trayectoria AS que se toman en cuenta antes de considerar el atributo MED. Por lo tanto, si alguno de estos criterios coincide, el atributo MED no se considerará.
Nota: Cuando todos los demás factores son iguales, se prefiere el punto de salida con el MED más bajo.
Cisco recomienda que tenga conocimiento básico de BGP.
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware. Las situaciones descritas en este documento utilizan estas versiones de hardware y software:
Escenario 1: Routers Cisco 2600 en Cisco IOS® Software Release 12.4 o posterior
Escenario 2: Routers Cisco 2600 en Cisco IOS Software Release 12.4 o posterior
Cuando un altavoz BGP aprende una ruta de un par, el MED de la ruta se pasa a otros peers BGP interiores (iBGP), pero no a peers BGP exteriores (eBGP).
Considere esta configuración de red:
Aquí, el router R1 y el router R2 se consideran en el mismo AS, por ejemplo AS#100, y el router R3 pertenece a AS#101. Para una convención sencilla, se utilizan las direcciones IP del bloque /24.
Los routers R1 y R2 se configuran de la siguiente manera:
Router 1 |
---|
(Config)#interface Loopback10 (Config-if)#ip address 10.10.10.10 255.255.255.255 (Config-if)#interface FastEthernet0/0 (Config-if)#ip address 192.1.12.1 255.255.255.0 (Config)#router bgp 100 (Config-router)#no synchronization (Config-router)#bgp router-id 10.10.10.10 (Config-router)#bgp log-neighbor-changes (Config-router)#network 10.10.10.10 mask 255.255.255.255 route-map ATTACH_MED (Config-router)#neighbor 192.1.12.2 remote-as 100 (Config-router)#no auto-summary (Config)#access-list 10 permit 10.10.10.10 (Config)#route-map ATTACH_MED permit 10 (Config)#match ip address 10 (Config)#set metric 100 |
Router 2 |
---|
(Config)#interface FastEthernet0/0 (Config-if)#ip address 192.1.12.2 255.255.255.0 (Config-if)#interface Serial1/0 (Config-if)#ip address 192.1.23.2 255.255.255.0 (Config-if)#encapsulation frame-relay IETF (Config-if)#no fair-queue (Config-if)#frame-relay map ip 192.1.23.3 203 broadcast (Config-if)#no frame-relay inverse-arp (Config-if)#frame-relay lmi-type ansi (Config)#router bgp 100 (Config-router)#no synchronization (Config-router)#bgp router-id 22.22.22.22 (Config-router)#bgp log-neighbor-changes (Config-router)#neighbor 192.1.12.1 remote-as 100 (Config-router)#neighbor 192.1.23.3 remote-as 101 (Config-router)#neighbor 192.1.23.3 ebgp-multihop 3 (Config-router)#no auto-summary |
La configuración del router R3 se proporciona aquí:
Router 3 |
---|
(Config)#interface Serial1/0 (Config-if)#ip address 192.1.23.3 255.255.255.0 (Config-if)#encapsulation frame-relay IETF (Config-if)#no fair-queue (Config-if)#frame-relay map ip 192.1.23.2 302 broadcast (Config-if)#no frame-relay inverse-arp (Config-if)#frame-relay lmi-type ansi (Config)#router bgp 101 (Config-router)#no synchronization (Config-router)#bgp log-neighbor-changes (Config-router)#neighbor 192.1.23.2 remote-as 100 (Config-router)#neighbor 192.1.23.2 ebgp-multihop 3 (Config-router)#no auto-summary |
En esta configuración, R1 y R2 tienen iBGP en ejecución. Por lo tanto, cuando una actualización ingresa al AS con una métrica determinada, esa métrica se utiliza para tomar decisiones dentro del AS. El comando show ip bgp cuando se verifica desde R2 muestra el valor métrico para 10.10.10.10, que se inclina a través del vecino iBGP 192.1.12.1 y tendrá un valor MED de 100.
Aquí se muestra el resultado de R2:
eBGP se ejecuta entre R2 y R3 porque se encuentran en un AS diferente. Cuando la misma actualización pasa a un tercer AS, por ejemplo AS#101, esa métrica regresa a 0. El comando show ip bgp cuando se verifica desde R3 tendrá su métrica eliminada, porque 10.10.10.10 cruza el límite AS(101).
Aquí se muestra el resultado de R3:
A partir de este escenario es evidente que el atributo MED puede influir en el tráfico entrante de los sistemas autónomos vecinos. El atributo MED no puede influir en las decisiones de ruteo de los sistemas autónomos más remotos. Cuando un altavoz BGP aprende una ruta de un peer, puede pasar el MED de la ruta a cualquier par iBGP, pero no a peers eBGP. Como resultado, el MED sólo tiene relevancia entre los sistemas autónomos vecinos.
Si la ruta inyectada en el BGP (usando el comando network o redistribute) proviene de un IGP (RIP o EIGRP o OSPF), el MED se deriva de la métrica IGP y la ruta se anuncia a un vecino eBGP con este MED.
Este escenario utiliza esta configuración de red:
En esta red, R1 se configura para ejecutarse en una red RIP. Los routers R2 y R3 ejecutan BGP, donde R2 se configura con AS 100 mientras que R3 se configura con AS 101.
El router R1 se configura de la siguiente manera:
Router R1 |
---|
(Config)#interface Loopback10 (Config-if)#ip address 10.10.10.10 255.255.255.255 (Config-if)#interface FastEthernet0/0 (Config-if)#ip address 192.1.12.1 255.255.255.0 (Config)#router rip (Config-router)#network 10.0.0.0 (Config-router)#network 192.1.12.0 (Config-router)#no auto-summary |
Los routers R2 y R3 se configuran para BGP, donde la redistribución se realiza en R2 para inyectar las redes RIP a un BGP.
Router R2 |
---|
(Config)#interface FastEthernet0/0 (Config-if)#ip address 192.1.12.2 255.255.255.0 (Config-if)#interface Serial1/0 (Config-if)#ip address 192.1.23.2 255.255.255.0 (Config-if)#encapsulation frame-relay IETF (Config-if)#no fair-queue (Config-if)#frame-relay map ip 192.1.23.3 203 broadcast (Config-if)#no frame-relay inverse-arp (Config-if)#frame-relay lmi-type ansi (Config)#router rip (Config-router)# network 192.1.12.0 (Config-router)#no auto-summary (Config-router)#router bgp 100 (Config-router)#no synchronization (Config-router)#bgp router-id 22.22.22.22 (Config-router)#bgp log-neighbor-changes (Config-router)#neighbor 192.1.23.3 remote-as 101 (Config-router)#neighbor 192.1.23.3 ebgp-multihop 3 (Config-router)#redistribute rip metric 1 Config-router)#no auto-summary |
Router R3 |
---|
(Config)#interface Serial1/0 (Config-if)#ip address 192.1.23.3 255.255.255.0 (Config-if)#encapsulation frame-relay IETF (Config-if)#no fair-queue (Config-if)#frame-relay map ip 192.1.23.2 302 broadcast (Config-if)#no frame-relay inverse-arp (Config-if)#frame-relay lmi-type ansi (Config)#router bgp 101 (Config-router)# no synchronization (Config-router)#bgp router-id 33.33.33.33 (Config-router)#bgp log-neighbor-changes (Config-router)#neighbor 192.1.23.2 remote-as 100 (Config-router)#neighbor 192.1.23.2 ebgp-multihop 3 (Config-router)#no auto-summary |
Tanto RIP como BGP se ejecutan en R2. Si verifica usando el comando show ip bgp, puede ver que la red prefix 10.0.0.0 se muestra con una métrica de 1, que se deriva del RIP.
Aquí se muestra el resultado de R2:
Sin embargo, en R3 que se ejecuta en eBGP, la red se anuncia considerando el valor MED derivado del IGP. En este caso es RIP. El prefijo 10.0.0.0 se anuncia con el valor IGP MED, que es la métrica 1 de RIP.
Esto se puede ver en este resultado:
A partir de este escenario, el comportamiento del MED, en el caso de las redes que se inyectan al router BGP a través del comando network o redistribute, se ve claramente dónde se reemplaza el valor MED real por el de la métrica IGP. Ahora, dado que este atributo es una pista para los vecinos externos acerca de la preferencia de trayectoria en un AS. Como se indicó anteriormente, no siempre se considera si hay otros atributos más importantes para determinar la mejor ruta. Para tener el mismo efecto con un atributo más determinista, utilice el comando set as-path prepend bajo el route map. Si antepone el trayecto AS para ciertas rutas, otros AS seguirán viendo el trayecto. Para obtener más información sobre el uso de As-path prepend, refiérase a Uso del Comando Set-aspath prepend.