Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Achtergrondinformatie

Conventies

Het routingbeleid configureren en beheren

Netwerkdiagram

Configuraties

R3

R1

R2

Verificatie

Gerelateerde informatie

Inleiding

Dit document beschrijft hoe de BGP-waarden worden gebruikt om het routingbeleid in netwerken van leveranciers te besturen.

Voorwaarden

Vereisten

Dit document vereist een begrip van het BGP-routingprotocol en de werking ervan.

Gebruikte componenten

Dit document is niet beperkt tot specifieke software- en hardware-versies. De informatie in dit document is echter gebaseerd op deze software- en hardwareversies:

- Cisco IOS® softwarerelease 12.2(27)S

- Cisco 2500 Series routers

De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.

Achtergrondinformatie

Terwijl de gemeenschappen zelf het BGP Best Path-proces niet wijzigen, kunnen gemeenschappen als vlaggen worden gebruikt om een reeks routes te markeren. Upstream service provider-routers kunnen deze vlaggen dan gebruiken om specifieke routingbeleid (bijvoorbeeld de lokale voorkeur) binnen hun netwerk toe te passen.

Providers maken een kaart tussen uw configureerbare gemeenschapswaarden en de overeenkomende lokale voorkeurwaarden binnen het providernetwerk. U kunt specifiek beleid hebben dat de wijziging van LOCAL_PREF in het providernetwerk vereist de overeenkomstige gemeenschapswaarden in hun routingupdates instelt.

Een gemeenschap is een groep prefixes die een deel van gemeenschappelijk bezit delen en kan met de BGP gemeenschapseigenschap worden geconfigureerd. De BGP-community-eigenschap is een optionele transitieve eigenschap van variabele lengte. De eigenschap bestaat uit een verzameling van vier octetwaarden die een gemeenschap specificeren. De waarden van de eigenschap van de gemeenschap worden in de eerste twee octetten gecodeerd met een AS-nummer (Autonomous System), waarbij de andere twee octetten door het AS worden gedefinieerd. Een prefix kan meer dan één community-eigenschap hebben. Een BGP-luidspreker die meerdere gemeenschapskenmerken in een voorvoegsel ziet, kan handelen op basis van één, enkele of alle eigenschappen. Een router heeft de optie om een gemeenschapskenmerk toe te voegen of te wijzigen voordat de router de eigenschap op andere peers doorgeeft. Raadpleeg voor meer informatie over de eigenschap community de BGP-casestudy’s.

De lokale preferentie eigenschap is een indicatie van het AS welke pad de voorkeur heeft om een bepaald netwerk te bereiken. Wanneer er meerdere paden naar dezelfde bestemming zijn, wordt het pad met de hogere voorkeur geselecteerd (de standaardwaarde van de lokale preferentie eigenschap is 100). Verwijs voor meer informatie naar casestudy’s.

Conventies

Raadpleeg Cisco Technical Tips Conventions (Conventies voor technische tips van Cisco) voor meer informatie over documentconventies.

Het routingbeleid configureren en beheren

Opmerking: Wilt u aanvullende informatie vinden over de opdrachten die in dit document worden gebruikt, dan gebruikt u het Opdrachtplanningsgereedschap.

Ter vereenvoudiging wordt verondersteld dat de toeschrijving van de gemeenschap en de locale voorkeurstoewijzing worden vastgesteld tussen de leverancier van de upstreamdienst (AS 100) en uw toestel (AS 30).

Lokale voorkeur

Community-waarden

130

100:300

125

100:250

Indien de prefixes worden aangekondigd met een communautaire toeslag gelijk aan 100:300, dan stelt de upstreamdienstverlener de lokale voorkeur van deze routes in op 130 en 125 als de gemeenschapstoeslag gelijk is aan 100:250.

Dit geeft u controle over het routingbeleid binnen het netwerk van de dienstverlener als u de communautaire waarden van de prefixes verandert die aan de dienstverlener worden aangekondigd.

In het netwerkdiagram wil AS 30 dit routingbeleid met de gemeenschapseigenschappen gebruiken.

- Het verkeer van AS 100 dat bestemd is om 10.0.10.0/24 te netwerk, reist door de R1-R3 verbinding. Als de R1-R3 verbinding mislukt, reist al het verkeer door R2-R3.

- Het verkeer van AS 100 dat bestemd is om 10.1.0.0/24 te netwerk, reist door de R2-R3 verbinding. Als de R2-R3 verbinding mislukt, reist al het verkeer door R1-R3.

Om dit routingbeleid te bereiken, kondigt R3 zijn prefixes als volgt aan:

Aan R1:

- 10.0.10.0/24 met een communautaire eigenschap van 100:300

- 10.1.0.0/24 met een communautaire eigenschap van 100:250

Aan R2:

- 10.0.10.0/24 met een communautaire eigenschap van 100:250

- 10.1.0.0/24 met een communautaire eigenschap van 100:300

Zodra de BGP-buren R1 en R2 de prefixes van R3 ontvangen, passen R1 en R2 het geconfigureerde beleid toe op basis van het in kaart brengen tussen de gemeenschap en de lokale preferentie-eigenschappen (weergegeven in de vorige tabel), en bereiken zij dus het door u gedicteerde routingbeleid (het AS 30). R1 installeert de prefixes in de BGP-tabel.

- 10.0.10.0/24 met een lokale voorkeur van 130

- 10.1.0.0/24 met een lokale voorkeur van 125

R2 installeert het prefix in zijn BGP tabel:

- 10.0.10.0/24 met een lokale voorkeur van 125

- 10.1.0.0/24 met een lokale voorkeur van 130

Aangezien een hogere lokale voorkeur in de BGP-selectiecriteria de voorkeur heeft, wordt het pad met een lokale voorkeur van 130 (130 is groter dan 125) geselecteerd als het beste pad binnen AS 100 en geïnstalleerd in de IP-routingtabel van R1 en R2. Raadpleeg voor meer informatie over de BGP-selectiecriteria het best Path Selection Algm .

Netwerkdiagram

BGP-netwerken

Configuraties

Dit document gebruikt de volgende configuraties:

- R3

- R1

- R2

R3

Current configuration : 2037 bytes

!

version 12.2

!

hostname R3

!

interface Loopback0

ip address 10.0.10.0 255.255.255.0

!

interface Ethernet0/0

ip address 10.1.0.0 255.255.255.1

!

interface Serial8/0

ip address 10.10.13.3 255.255.255.0

!--- Interface connected to R1.

!

interface Serial9/0

ip address 10.10.23.3 255.255.255.0

!--- Interface connected to R2.

!

router bgp 30

network 10.0.10.0 mask 255.255.255.0

network 10.1.0.0 mask 255.255.255.1

!--- Network commands announce prefix 10.0.10.0/24

!--- and 10.1.0.0/24.

neighbor 10.10.13.1 remote-as 100

!--- Establishes peering with R1.

neighbor 10.10.13.1 send-community

- !--- Without this command, the community attributes !--- are not sent to the neighbor.

neighbor 10.10.13.1 route-map Peer-R1 out

!--- Configures outbound policy as defined by

!--- route-map "Peer-R1" when peering with R1.

neighbor 10.10.23.2 remote-as 100

!--- Establishes peering with R2.

neighbor 10.10.23.2 send-community

!--- Configures to send community attribute to R2.

neighbor 10.10.23.2 route-map Peer-R2 out

!--- Configures outbound policy as defined by

!--- route-map "Peer-R2" when peering with R2.

no auto-summary

!

ip classless

ip bgp-community new-format

!--- Allows you to configure the BGP community

!--- attribute in AA:NN format.

!

access-list 101 permit ip host 10.0.10.0 host 255.255.255.0

access-list 102 permit ip host 10.1.0.0 host 255.255.255.1

!

!

route-map Peer-R1 permit 10

match ip address 101

set community 100:300

!--- Sets community 100:300 for routes matching access-list 101.

!

route-map Peer-R1 permit 20

match ip address 102

set community 100:250

!--- Sets community 100:250 for routes matching access-list 102.

!

route-map Peer-R2 permit 10

match ip address 101

set community 100:250

!--- Sets community 100:250 for routes matching access-list 101.

!

route-map Peer-R2 permit 20

match ip address 102

set community 100:300

!--- Sets community 100:300 for routes matching access-list 102.

!

end

R1

Version 12.2

!

hostname R1

!

interface Loopback0

ip address 200.200.10.1 255.255.255.0

!

interface Serial8/0

ip address 10.10.13.1 255.255.255.1

!--- Connected to R3.

!

interface Serial10/0

ip address 10.10.12.1 255.255.255.0

!--- Connected to R2.

!

router bgp 100

no synchronization

bgp log-neighbor-changes

neighbor 10.10.12.2 remote-as 100

!--- Establishes peering with R2.

neighbor 10.10.12.2 next-hop-self

neighbor 10.10.13.3 remote-as 30

!--- Establishes peering with R3.

neighbor 10.10.13.3 route-map Peer-R3 in

!--- Configures the inbound policy as defined by

!--- route-map "Peer-R3" when peering with R3.

no auto-summary

!

ip bgp-community new-format

!--- Allows you to configure the BGP community

!--- attribute in AA:NN format.

ip community-list 1 permit 100:300

ip community-list 2 permit 100:250

!--- Defines community list 1 and 2.

!

route-map Peer-R3 permit 10

match community 1

set local-preference 130

!--- Sets local preference 130 for all routes

!--- matching community list 1.

!

route-map Peer-R3 permit 20

match community 2

set local-preference 125

!--- Sets local preference 125 for all routes

!--- matching community list 2.

!

route-map Peer-R3 permit 30

!--- Without this permit 30 statement, updates that do not

!--- match the permit 10 or permit 20 statements are dropped.

!

end

R2

Version 12.2

!

hostname R2

!

interface Loopback0

ip address 10.0.10.0 255.255.255.0

!

interface Serial9/0

ip address 10.10.23.2 255.255.255.1

!--- Connected to R3.

!

interface Serial10/0

ip address 10.10.12.2 255.255.255.0

!--- Connected to R1.

!

router bgp 100

no synchronization

bgp log-neighbor-changes

neighbor 10.10.12.1 remote-as 100

!--- Establishes iBGP peering with R1.

neighbor 10.10.12.1 next-hop-self

neighbor 10.10.23.3 remote-as 30

!--- Establishes peering with R3.

neighbor 10.10.23.3 route-map Peer-R3 in

!--- Configures inbound policy as defined by

!--- route-map "Peer-R3" when peering with R3.

no auto-summary

!

ip bgp-community new-format

!--- Allows you to configure the BGP community

!--- attribute in AA:NN format.

!

ip community-list 1 permit 100:300

ip community-list 2 permit 100:250

!--- Defines community list 1 and 2.

!

route-map Peer-R3 permit 10

match community 1

set local-preference 130

!--- Sets local preference 130 for all routes

!--- matching community list 1.

!

route-map Peer-R3 permit 20

match community 2

set local-preference 125

!--- Sets local preference 125 for all routes

!--- matching community list 2.

!

route-map Peer-R3 permit 30

!--- Without this permit 30 statement, updates that do not

!--- match the permit 10 or permit 20 statements are dropped.

!

end

Verificatie

R1 ontvangt prefixes 10.0.10.0/24 en 10.1.0.0/24 met communities 100:300 en 100:250, zoals getoond in het volgende show ip bgp comman output resultaat.

Opmerking: Zodra deze routes in de BGP-tabel zijn geïnstalleerd op basis van het geconfigureerde beleid, worden prefixes met gemeenschapsniveau 100:300 toegewezen aan lokale preferentie 130 en worden prefixes met gemeenschapsniveau 100:250 toegewezen aan lokale preferentie 125.

R1# show ip bgp 10.0.10.0

BGP routing table entry for 10.0.10.0/24, version 2

Paths: (1 available, best #1, table Default-IP-Routing-Table)

Advertised to non peer-group peers:

10.10.12.2

30

10.10.13.3 from 10.10.13.3 (10.0.10.0)

Origin IGP, metric 0, localpref 130, valid, external, best

Community: 100:300

!--- Prefix 10.0.10.0/24 with community 100:300 received from

!--- 10.10.13.3 (R3) is assigned local preference 130.

R1# show ip bgp 10.1.0.0

BGP routing table entry for 10.1.0.0/24, version 4

Paths: (2 available, best #1, table Default-IP-Routing-Table)

Advertised to non peer-group peers:

10.10.13.3

30

10.10.12.2 from 10.10.12.2 (10.1.0.0)

Origin IGP, metric 0, localpref 130, valid, internal, best

.0!--- Received prefix 10.1.0.0/24 over iBGP from 10.10.12.2

!--- (R2) with local preference 130.

!--- (R2) with local preference 130.

30

10.10.13.3 from 10.10.13.3 (198.50.100.0)

Origin IGP, metric 0, localpref 125, valid, external

Community: 100:250

!--- Prefix 10.1.0.0/24 with community 100:250 received from

!--- 10.10.13.3 (R3) is assigned local preference 125.

R1# show ip bgp

BGP table version is 4, local router ID is 200.200.10.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

*> 10.0.10.0/24    10.10.13.3            0    130      0 30 i

*>i 10.1.0.0/24    10.10.12.2            0    130      0 30 i

*                   10.10.13.3            0    125      0 30 i

De opdracht Show ip bgp op R1 bevestigt dat het beste pad dat op R1 geselecteerd wordt, met lokale voorkeur (LoclPrf) = 130 is. Evenzo ontvangt R2 prefixes 10.0.10.0/24 en 10.1.0.0/24 met gemeenschappen 100:250 en 100:300, zoals vet weergegeven in dit ip bgp opdrachtoutput:

Opmerking: Zodra deze routes in de BGP-tabel zijn geïnstalleerd, op basis van het geconfigureerd beleid, worden prefixes met gemeenschapsniveau 100:300 toegewezen aan lokale preferentie 130 en prefixes met gemeenschapsniveau 100:250 toegewezen aan lokale preferentie 125.

R2# show ip bgp 10.0.10.0

BGP routing table entry for 10.0.10.0/24, version 2

Paths: (2 available, best #2, table Default-IP-Routing-Table)

Advertised to non peer-group peers:

10.10.23.3

30

10.10.23.3 from 10.10.23.3 (10.0.10.0)

Origin IGP, metric 0, localpref 125, valid, external

Community: 100:250

!--- Prefix 10.0.10.0/24 with community 100:250 received from

!--- 10.10.23.3 (R3) is assigned local preference 125.

30

10.10.12.1 from 10.10.12.1 (200.200.10.1)

Origin IGP, metric 0, localpref 130, valid, internal, best

!--- Received prefix 10.0.10.0/24 over iBGP from 10.10.12.1

!--- (R1) with local preference 130.

R2# show ip bgp 10.0.10.0

BGP routing table entry for 10.0.10.0/24, version 3

Paths: (1 available, best #1, table Default-IP-Routing-Table)

Advertised to non peer-group peers:

10.10.12.1

30

10.10.23.3 from 10.10.23.3 (10.0.10.0)

Origin IGP, metric 0, localpref 130, valid, external, best

Community: 100:300

!--- Prefix 10.1.0.0/24 with community 100:300 received from

!--- 10.10.23.3 (R3) is assigned local preference 130.

R2# show ip bgp

BGP table version is 3, local router ID is 192.168.50.1

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal

Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path

*  10.0.10.0/24      10.10.23.3           0    125      0 30 i

*>i                  10.10.12.1           0    130      0 30 i

*> 10.1.0.0/24       10.10.23.3           0    130      0 30 i

Dit tonen IP bgp opdrachtoutput op R2 bevestigt het beste pad dat geselecteerd is op R2 met lokale voorkeur (loclPrf) = 130. De IP route naar voorvoegsel 10.0.10.0/24 geeft de voorkeur aan de R1-R3 verbinding om weg te gaan uit AS 100 naar AS 30. De tonen ip routeopdracht op R1 en R2 bevestigt deze voorkeur.

R1# show ip route 10.0.10.0

Routing entry for 10.0.10.0/24

Known via "bgp 100", distance 20, metric 0

Tag 30, type external

Last update from 10.10.13.3 3d21h ago

Routing Descriptor Blocks:

* 10.10.13.3, from 10.10.13.3, 3d21h ago

Route metric is 0, traffic share count is 1

AS Hops 1

!--- On R1, the IP route to prefix 10.0.10.0/24 points

!--- to next hop 10.10.13.3 which is R3 serial 8/0

!--- interface on the R1-R3 link.

R2# show ip route 10.1.0.0

Routing entry for 10.1.0.0/24

Known via "bgp 100", distance 200, metric 0

Tag 30, type internal

Last update from 10.10.12.1 3d21h ago

Routing Descriptor Blocks:

* 10.10.12.1, from 10.10.12.1, 3d21h ago

Route metric is 0, traffic share count is 1

AS Hops 1

!--- On R2, IP route to prefix 10.1.0.0/24 points

!--- to next hop R1 (10.10.12.1) on its iBGP link.

!--- Thus traffic to network 10.1.0.0/24 from R2

!--- exits through R2-R1 and then R1-R3 link from

!--- AS 100 towards AS 30.

De IP-route naar voorvoegsel 10.1.0.0/24 geeft de voorkeur aan een R2-R3-verbinding om af te stappen van AS 100 naar AS 30. De opdracht ip-route op R1 en R2 bevestigt deze voorkeur.

R2# show ip route 10.1.0.0

Routing entry for 10.1.0.0/24

Known via "bgp 100", distance 20, metric 0

Tag 30, type external

Last update from 10.10.23.3 3d22h ago

Routing Descriptor Blocks:

* 10.10.23.3, from 10.10.23.3, 3d22h ago

Route metric is 0, traffic share count is 1

AS Hops 1

!--- On R2, IP route to prefix 10.1.0.0/24 points

!--- to next hop 10.10.23.3 which is R3 serial 9/0

!--- interface on R2-R3 link.

R1# show ip route 10.1.0.0

Routing entry for 10.1.0.0/24

Known via "bgp 100", distance 200, metric 0

Tag 30, type internal

Last update from 10.10.12.2 3d22h ago

Routing Descriptor Blocks:

* 10.10.12.2, from 10.10.12.2, 3d22h ago

Route metric is 0, traffic share count is 1

AS Hops 1

!--- On R1, IP route to prefix 10.1.0.0/24 points

!--- to next hop R2 (10.10.12.2) on its iBGP link.

!--- Thus traffic to network 10.1.0.0/24 from R1

!--- exits through R1-R2 and then R2-R3 link

!--- from AS 100 towards AS 30.

Als een link faalt, bijvoorbeeld de R1-R3 verbinding, moet al het verkeer de R2-R3 verbinding volgen. Je kunt dit verkeer simuleren als je de link tussen R1-R3 sluit.

R1# conf t

Enter configuration commands, one per line. End with CNTL/Z.

R1(config)#int s8/0

R1(config-if)#shut

R1(config-if)#

3d22h: %BGP-5-ADJCHANGE: neighbor 10.10.13.3 Down Interface flap

3d22h: %LINK-5-CHANGED: Interface Serial8/0, changed state to

administratively down

3d22h: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial8/0,

changed state to down

Let op de IP-routingtabel voor prefix 10.0.10.0/24 en 10.1.0.0/24 op R1 en R2. Gebruik de R2-R3-link om af te sluiten van AS 100.

R1# show ip route 10.0.10.0

Routing entry for 10.0.10.0/24

Known via "bgp 100", distance 200, metric 0

Tag 30, type internal

Last update from 10.10.12.2 00:01:47 ago

Routing Descriptor Blocks:

* 10.10.12.2, from 10.10.12.2, 00:01:47 ago

Route metric is 0, traffic share count is 1

AS Hops 1

R1# show ip route 10.1.0.0

Routing entry for 10.1.0.0/24

Known via "bgp 100", distance 200, metric 0

Tag 30, type internal

Last update from 10.10.12.2 3d22h ago

Routing Descriptor Blocks:

* 10.10.12.2, from 10.10.12.2, 3d22h ago

Route metric is 0, traffic share count is 1

AS Hops 1

Deze opdrachtoutput toont dat de route naar de voorfixes10.0.10.0/24 en 10.1.0.0/24 punten naar de volgende hop 10.10.12.2, (R2), wat verwacht wordt. Neem nu een kijkje in de IP-routingtabel op R2 om de volgende hop van voorvoegsel 10.0.10.0/24 en 10.1.0.0/24 te controleren. De volgende hop moet R3 voor het geconfigureerde beleid zijn om met succes te werken.

R2# show ip route 10.0.10.0

Routing entry for 10.0.10.0/24

Known via "bgp 100", distance 20, metric 0

Tag 30, type external

Last update from 10.10.23.3 00:04:10 ago

Routing Descriptor Blocks:

* 10.10.23.3, from 10.10.23.3, 00:04:10 ago

Route metric is 0, traffic share count is 1

AS Hops 1

R2# show ip route 10.1.0.0

Routing entry for 10.1.0.0/24

Known via "bgp 100", distance 20, metric 0

Tag 30, type external

Last update from 10.10.23.3 3d22h ago

Routing Descriptor Blocks:

* 10.10.23.3, from 10.10.23.3, 3d22h ago

Route metric is 0, traffic share count is 1

AS Hops 1

De volgende hop 10.10.23.3 is R3 seriële 9/0 interface op de R2-R3 verbinding. Dit bevestigt dat het geconfigureerde beleid werkt zoals verwacht.

Gerelateerde informatie

- RFC 1998

- BGP-probleemoplossing

- BGP: Veelgestelde vragen

- Taakverdeling met BGP

- Technische ondersteuning en documentatie