Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Achtergrondinformatie

Conventies

Configureren

Netwerkdiagram

De functie voorwaardelijke advertenties configureren

De configuratie verifiëren

Voorbeeld 1

Voorbeeld 2

Voorbeeld 3

Gerelateerde informatie

Inleiding

Dit document beschrijft hoe de voorwaardelijke advertentiefunctie BGP (Border Gateway Protocol) moet worden geconfigureerd en geverifieerd.

Voorwaarden

Vereisten

Cisco raadt u aan bekend te zijn met dit onderwerp:

- Casestudy’s van BGP

Gebruikte componenten

Dit document is niet beperkt tot specifieke software- en hardware-versies.

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

De voorwaardelijke advertentiefunctie BGP (Border Gateway Protocol) biedt extra controle over routeradvertenties, afhankelijk van het bestaan van andere prefixes in de BGP-tabel.

De BGP voorwaardelijke advertentiefunctie die in dit document wordt beschreven, is geïntroduceerd in Cisco IOS®-softwarerelease 11.1 en 11.2 en is beschikbaar in latere releases.

Normaal gesproken worden routes gekweekt ongeacht het bestaan van een ander pad. De BGP voorwaardelijke advertentiefunctie gebruikt de niet-bestaande-kaart en de adverteren-kaart sleutelwoorden van de buur adverteren-kaart opdracht om routes te volgen door de routeprefix. Als een routeprefix niet aanwezig is in de uitvoer van het niet-bestaan-kaart bevel, dan wordt de route die door het adverteren-kaart bevel wordt gespecificeerd aangekondigd. Deze optie is nuttig voor multihomed netwerken, waarin sommige prefixes worden geadverteerd aan een van de providers alleen als er geen informatie van de andere provider aanwezig is (dit duidt op een storing in de doorlopende sessie of gedeeltelijke bereikbaarheid).

De voorwaardelijke BGP-aankondigingen worden verzonden naast de normale aankondigingen die een BGP-router naar zijn peers stuurt.

Conventies

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

Configureren

Deze sectie bevat informatie over het configureren van de functies die in dit document worden beschreven.

Opmerking: om extra informatie te vinden over de opdrachten die in dit document worden gebruikt, gebruikt u het gereedschap Cisco IOS-opzoeken. Alleen geregistreerde Cisco-gebruikers kunnen toegang krijgen tot interne Cisco-tools en -informatie.

Netwerkdiagram

Dit document gebruikt de netwerkinstallatie die in dit diagram wordt getoond.

Hier wordt de loopback-interface van R103 gebruikt om 192.168.50.0/24 naar R102 aan te kondigen. R102 heeft een BGP-netwerk, 172.16.16.0/24, dat standaard wordt aangekondigd op zowel zijn externe BGP (eBGP) peers, R101 en R103.

Netwerkinstelling

Met de BGP voorwaardelijke advertentiefunctie kunt u deze taken nu op R102 uitvoeren:

- Als 192.168.50.0/24 bestaat in de BGP-tabel van R102, adverteer dan niet het 172.16.16.0/24-netwerk naar R101.

- Als 192.168.50.0/24 niet bestaat in de BGP-tabel van R102, adverteer dan het 172.16.16.0/24-netwerk met R101.

Met Cisco IOS 12.2T of latere versies kan het bestaande trefwoord-map ook worden gebruikt om deze taken te volbrengen:

- Als 192.168.50.0/24 bestaat in de R102 BGP-tabel, adverteer dan het 172.16.16.0/24-netwerk met R101.

- Als 192.168.50.0/24 niet bestaat in de R102 BGP-tabel, adverteer dan niet het 172.16.16.0/24-netwerk naar R101.

De functie voorwaardelijke advertenties configureren

Dit document gebruikt de volgende configuraties:

Opmerking: het voorbeeld hier bespreekt het trefwoord niet-bestaansrecht-kaart. Het gebruik van het sleutelwoord besta-map is vergelijkbaar met dit.

R102 NL

hostname R102

!

interface Loopback0

ip address 172.16.16.1 255.255.255.0

!

interface Serial8/0

ip address 10.10.10.2 255.255.255.0

!

interface Serial9/0

ip address 10.10.20.2 255.255.255.0

!

router bgp 2

bgp log-neighbor-changes

network 172.16.16.0 mask 255.255.255.0

network 172.31.130.0

neighbor 10.10.10.1 remote-as 1

neighbor 10.10.10.1 advertise-map ADVERTISE non-exist-map NON-EXIST

!--- Advertises the routes matched in the route-map ADVERTISE (172.16.16.0/24)

!--- only if the routes matched in route-map NON-EXIST (192.168.50.0/24)

!--- do not exist in the BGP table.

neighbor 10.10.20.3 remote-as 3

!

ip route 172.31.130.0 255.255.0.0 Null0

!

access-list 60 permit 172.16.16.0 0.0.0.255

access-list 65 permit 192.168.50.0 0.0.0.255

!

route-map NON-EXIST permit 10

match ip address 65

!

route-map ADVERTISE permit 10

match ip address 60

!

R103 NL

hostname R103

!

interface Loopback0

ip address 192.168.50.1 255.255.255.0

!

interface Serial9/0

ip address 10.10.20.3 255.255.255.0

!

router bgp 3

bgp log-neighbor-changes

network 192.168.50.0

neighbor 10.10.20.2 remote-as 2

!

R101 NL

hostname R101

!

interface Loopback0

ip address 10.200.200.1 255.255.255.0

!

interface Serial8/0

ip address 10.10.10.1 255.255.255.0

!

router bgp 1

bgp log-neighbor-changes

network 10.200.200.0

neighbor 10.10.10.2 remote-as 2

!

De configuratie verifiëren

Voorbeeld 1

Dit voorbeeld verifieert hoe BGP eruit ziet wanneer 192.168.50.0/24 in de R102 BGP-tabel staat:

De configuratie verifiëren

Controleer eerst of 192.168.50.0/24 bestaat in de R102 BGP-tabel:

R102#show ip bgp

BGP table version is 6, local router ID is 172.16.16.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

*> 172.16.16.0/24   0.0.0.0                  0         32768 i

*> 172.31.130.0     0.0.0.0                  0         32768 i

*> 192.168.50.0     10.10.20.3               0             0 3 i

*> 10.200.200.0     10.10.10.1               0             0 1 i

Aangezien 192.168.50.0/24 in de R102 BGP-tabel staat, mag R102 niet 172.16.16.0/24 tot R101 adverteren.

R102#show ip bgp neighbors 10.10.10.1 advertised-routes

BGP table version is 6, local router ID is 172.16.16.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

*> 172.31.130.0      0.0.0.0                  0         32768 i

*> 192.168.50.0     10.10.20.3               0             0 3 i

!--- Note 172.16.16.0/24 is not advertised to neighbor 10.10.10.1.

R102#show ip bgp 172.16.16.0

BGP routing table entry for 172.16.16.0/24, version 6

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

Advertised to non peer-group peers:

!--- This is not advertised to R101.

10.10.20.3

Local

0.0.0.0 from 0.0.0.0 (172.16.16.1)

Origin IGP, metric 0, localpref 100, weight 32768, valid, sourced, local, best

Controleer vervolgens de status van de voorwaardelijke advertentie op R102:

R102#show ip bgp neighbors 10.10.10.1

BGP neighbor is 10.10.10.1,  remote AS 1, external link

BGP version 4, remote router ID 10.200.200.1

BGP state = Established, up for 02:27:07

Last read 00:00:07, hold time is 180, keepalive interval is 60 seconds

!--- Output suppressed.

For address family: IPv4 Unicast

BGP table version 6, neighbor version 6

Index 1, Offset 0, Mask 0x2

Condition-map NON-EXIST, Advertise-map ADVERTISE, status: Withdraw

1 accepted prefixes consume 36 bytes

Prefix advertised 3, suppressed 0, withdrawn 1

Number of NLRIs in the update sent: max 1, min 0

!--- Output suppressed.

De output toont aan dat de voorwaardelijke reclame wordt ingetrokken en dat de netwerken die de route-kaart ADVERTENTIE aanpassen niet aan peer 10.10.10.1 worden aangekondigd.

Om te bevestigen dat de routes die overeenkomen met de routekaart ADVERTENTIE niet worden aangekondigd op R101, raadpleeg de BGP-tabel op R101:

R101#show ip bgp 172.16.16.0

% Network not in table

Voorbeeld 2

Dit voorbeeld laat zien hoe BGP eruitziet wanneer netwerk 192.168.50.0/24 niet bestaat in de R102 BGP-tabel:

192.168.50.0/24 Bestaat niet in de R102 BGP-tabel

Schakel eerst de loopback-interface 0 uit op R103, zodat R103 192.168.50.0/24 niet meer aankondigt op R102.

R103(config)#interface loopback 0

R103(config-if)#shutdown

R103(config-if)#

03:29:36: %LINK-5-CHANGED: Interface Loopback0, changed state to administratively down

Controleer vervolgens of R102 192.168.50.0/24 niet leert en dat het netwerk niet in de R102 BGP tabel is opgenomen.

R102#show ip bgp

BGP table version is 8, local router ID is 172.16.16.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

*> 172.16.16.0/24   0.0.0.0                  0         32768 i

*> 172.31.130.0     0.0.0.0                  0         32768 i

*> 10.200.200.0     10.10.10.1               0         0 1 i

!--- Note 192.168.50.0/24 is not present.

Let op hoe lang het duurt voordat de voorwaardelijke advertentie start:

R102#debug ip bgp updates

*Mar  1 02:39:18.059: BGP(0): 10.10.20.3 rcv UPDATE about 192.168.50.0/24

-- withdrawn

*Mar  1 02:39:18.059: BGP(0): no valid path for 192.168.50.0/24

*Mar  1 02:39:18.079: BGP(0): nettable_walker 192.168.50.0/24 no best path

*Mar  1 02:39:18.219: BGP(0): 10.10.10.1 computing updates, afi 0, neighbor

version 10, table version 11, starting at 0.0.0.0

*Mar  1 02:39:18.219: BGP(0): 10.10.10.1 send unreachable 192.168.50.0/24

*Mar  1 02:39:18.219: BGP(0): 10.10.10.1 send UPDATE 192.168.50.0/24

-- unreachable

*Mar  1 02:39:18.219: BGP(0): 10.10.10.1 1 updates enqueued (average=27, maximum=27)

*Mar  1 02:39:18.219: BGP(0): 10.10.10.1 update run completed, afi 0, ran for 0ms,

neighbor version 10, start version 11, throttled to 11

*Mar  1 02:40:04.747: BPG(0): Condition NON-EXIST changes to Advertise

*Mar  1 02:40:04.747: BGP(0): net 172.16.16.0/24 matches ADV MAP ADVERTISE:

bump version to 12

*Mar  1 02:40:05.187: BGP(0): nettable_walker 172.16.16.0/24 route sourced

locally

*Mar  1 02:40:05.187: BGP(0): 10.10.10.1 computing updates, afi 0, neighbor

version 11, table version 12, starting at 0.0.0.0

*Mar  1 02:40:05.187: BGP(0): 10.10.10.1 172.16.16.0/24 matches advertise map

ADVERTISE, state: Advertise

*Mar  1 02:40:05.187: BGP(0): 10.10.10.1 send UPDATE (format) 172.16.16.0/24,

next 10.10.10.2, metric 0, path

*Mar  1 02:40:05.187: BGP(0): 10.10.10.1 1 updates enqueued (average=52, maximum=52)

*Mar  1 02:40:05.187: BGP(0): 10.10.10.1 update run completed, afi 0, ran for 0ms,

neighbor version 11, start version 12, throttled to 12

Opmerking: de debugging-uitvoer kan enigszins afwijken, afhankelijk van de gebruikte softwareversie.

Het voorwaardelijke advertentieproces wordt geactiveerd door het BGP-scannerproces, dat elke 60 seconden draait. Dit betekent dat de maximum tijd voor de voorwaardelijke reclame om van kracht te worden 60 seconden is. De voorwaardelijke reclame kan sneller van kracht worden, afhankelijk van wanneer de gevolgde route wordt verwijderd uit de BGP-tabel en wanneer de volgende instantie van de BGP-scanner plaatsvindt. Geef deze opdrachten af op R102 om de voorwaardelijke advertentiestatus van R102 voor de buur 10.10.10.1 te verifiëren:

R102#show ip bgp neighbors 10.10.10.1

BGP neighbor is 10.10.10.1,  remote AS 1, external link

BGP version 4, remote router ID 10.200.200.1

BGP state = Established, up for 02:45:27

Last read 00:00:27, hold time is 180, keepalive interval is 60 seconds

!--- Output suppressed.

For address family: IPv4 Unicast

BGP table version 12, neighbor version 12

Index 1, Offset 0, Mask 0x2

Condition-map NON-EXIST, Advertise-map ADVERTISE, status: Advertise

1 accepted prefixes consume 36 bytes

Prefix advertised 6, suppressed 0, withdrawn 4

Number of NLRIs in the update sent: max 1, min 0

!--- Output suppressed.

De R101 BGP-tabel en routeringstabel heeft 172.16.16.0/24, zoals hier wordt getoond:

Opmerking: In deze voorbeelduitvoer worden de voorwaardelijke BGP-aankondigingen (netwerk 172.16.16.0/24) verzonden, naast de normale BGP-aankondigingen (netwerk 172.31.130.0/16) die een BGP-router naar zijn peers stuurt.

R101#show ip bgp

BGP table version is 18, local router ID is 10.200.200.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

*> 172.16.16.0/24   10.10.10.2               0             0 2 i

*> 172.31.130.0     10.10.10.2               0             0 2 i

*> 10.200.200.0     0.0.0.0                  0         32768 i

R101#show ip route bgp

172.16.0.0/24 is subnetted, 1 subnets

B       172.16.16.0 [20/0] via 10.10.10.2, 00:09:32

B    172.31.130.0/16 [20/0] via 10.10.10.2, 02:48:46

Voorbeeld 3

Dit voorbeeld betreft de herinstallatie van het 192.168.50.0/24-netwerk in R102 om te zien hoe BGP verandert van Advertising to Drawing .

Hoe BGP verandert van advertentie naar terugtrekken

Om 192.168.50.0/24 opnieuw te installeren, moet u de  no shutdown  opdracht geven om de interface loopback 0 op R103 naar "UP" te brengen.

R103(config)#interface loopback 0

R103(config-if)#no shutdown

R103(config-if)#

03:49:06: %LINK-3-UPDOWN: Interface Loopback0,

changed state to up

03:49:07: %LINEPROTO-5-UPDOWN: Line protocol on

Interface Loopback0, changed state to up

!--- R102 kicks in conditional advertisement the moment the

!--- conditional network is received again.

*Mar  1 02:51:42.227: BGP(0): 10.10.20.3 rcvd UPDATE w/ attr:

nexthop 10.10.20.3, origin i, metric 0, path 3

*Mar  1 02:51:42.227: BGP(0): 10.10.20.3 rcvd 192.168.50.0/24

*Mar  1 02:51:42.247: BGP(0): Revise route installing 192.168.50.0/24 ->

10.10.20.3 to main IP table

*Mar  1 02:51:42.379: BGP(0): 10.10.10.1 computing updates, afi 0,

neighbor version 12, table version 13, starting at 0.0.0.0

*Mar  1 02:51:42.379: BGP(0): 10.10.10.1 send UPDATE (format)

192.168.50.0/24, next 10.10.10.2, metric 0, path 3

*Mar  1 02:51:42.379: BGP(0): 10.10.10.1 1 updates enqueued

(average=47, maximum=47)

*Mar  1 02:51:42.379: BGP(0): 10.10.10.1 update run completed, afi 0,

ran for 0ms, neighbor version 12, start version 13, throttled to 13

*Mar  1 02:52:09.159: BPG(0): Condition NON-EXIST changes to Withdraw

*Mar  1 02:52:09.159: BGP(0): net 172.16.16.0/24 matches ADV MAP

ADVERTISE: bump version to 14

*Mar  1 02:52:09.499: BGP(0): nettable_walker 172.16.16.0/24 route

sourced locally

*Mar  1 02:52:11.559: BGP(0): 10.10.10.1 computing updates, afi 0,

neighbor version 13, table version 14, starting at 0.0.0.0

*Mar  1 02:52:11.559: BGP(0): 10.10.10.1 172.16.16.0/24 matches advertise

map ADVERTISE, state: Withdraw

*Mar  1 02:52:11.559: BGP(0): 10.10.10.1 send unreachable 172.16.16.0/24

*Mar  1 02:52:11.559: BGP(0): 10.10.10.1 send UPDATE 172.16.16.0/24 -- unreachable

*Mar  1 02:52:11.559: BGP(0): 10.10.10.1 1 updates enqueued (average=27, maximum=27)

*Mar  1 02:52:11.559: BGP(0): 10.10.10.1 update run completed, afi 0, ran for 0ms,

neighbor version 13, start version 14, throttled to 14

R102 adverteert niet langer 172.16.16.0/24 tot R101.

R102#show ip bgp neighbors 10.10.10.1 advertised-routes

BGP table version is 14, local router ID is 172.16.16.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

*> 172.31.130.0     0.0.0.0                  0         32768 i

*> 192.168.50.0     10.10.20.3               0             0 3 i

!--- Note 172.16.16.0/24 is not advertised.

R102#show ip bgp neighbors 10.10.10.1

BGP neighbor is 10.10.10.1,  remote AS 1, external link

BGP version 4, remote router ID 10.200.200.1

BGP state = Established, up for 03:01:32

Last read 00:00:31, hold time is 180, keepalive interval is 60 seconds

Neighbor capabilities:

!--- Output supressed.

For address family: IPv4 Unicast

BGP table version 14, neighbor version 14

Index 1, Offset 0, Mask 0x2

Condition-map NON-EXIST, Advertise-map ADVERTISE, status: Withdraw

1 accepted prefixes consume 36 bytes

Prefix advertised 7, suppressed 0, withdrawn 5

Number of NLRIs in the update sent: max 1, min 0

!--- Output supressed.

Opmerking: in een scenario in de echte wereld zijn AS1 en AS3 verbonden met het internet (wereldwijde BGP). Vandaar dat het netwerk 192.168.50.0/24 kon door een globaal bgpnetwerk van AS3 aan de AS1 (R101) BGP- lijst worden verspreid. AS1 kon op zijn beurt het prefix 192.168.50.0 tot R102 voortbrengen (afhankelijk van de beleidsovereenkomst tussen AS1 en AS2). Als R101 AS3 routes die van het globale BGP netwerk aan R102 worden geleerd verspreidt, dan kan de voorwaardelijke reclame ontbreken als de extra controles niet in de niet-bestaande kaart worden geplaatst.

Om beter te begrijpen waarom voorwaardelijke reclame faalt, overweeg dit scenario. AS1 leert 192.168.50.0/24 van de globale bgp mesh en kondigt 192.168.50.0/24 aan AS2 (R102). R102 leert ook het voorvoegsel 192.168.50.0/24 van zijn directe peering aan R103 (over de verbinding R102 tot R103). Wanneer de directe link tussen R102 en R103 mislukt, verwacht je dat het voorvoegsel 192.168.50.0/24 niet meer bestaat in de BGP-tabel van R102 en dat de voorwaardelijke advertentie wordt ingedrukt en het voorvoegsel 172.16.16.0/24 tot R101 wordt aangekondigd. Echter, omdat het prefix 192.168.50.0/24 nog steeds bestaat in de R102 BGP tabel (geleerd van R101), breekt de voorwaardelijke advertentie omdat het prefix in de niet-bestaande kaart nog steeds bestaat in de R102 BGP tabel. Om ervoor te zorgen dat het prefix 192.168.50.0/24 alleen wordt geleerd van de directe verbinding naar AS3 (R102 tot R103) zodat voorwaardelijke advertentie wordt ingezogen, voeg een match as_path statement toe onder de niet-bestaande kaart die overeenkomt met de AS_PATH van prefix 192.168.50.0/24 geleerd van directe verbinding (die in dit geval AS3 is). De reguliere expressie voor deze case is  ^3 . Raadpleeg Reguliere expressies gebruiken in BGP voor meer informatie over reguliere expressies. Let op dat u niet alleen het as-pad kunt matchen en niet het prefix. Het overeenkomende as-path kan alleen de overeenkomende criteria voor het overeenkomende prefix aanvullen. Met andere woorden, je kunt bepaalde prefixes niet aan een buurman adverteren als er geen prefix bestaat van een bepaald AS #.

De nieuwe configuratie op R102 wordt hier getoond. De toevoegingen zijn vet.

R101 NL

hostname R102

!

interface Loopback0

ip address 172.16.16.1 255.255.255.0

!

interface Serial8/0

ip address 10.10.10.2 255.255.255.0

!

interface Serial9/0

ip address 10.10.20.2 255.255.255.0

!

router bgp 2

bgp log-neighbor-changes

network 172.16.16.0 mask 255.255.255.0

network 172.31.130.0

neighbor 10.10.10.1 remote-as 1

neighbor 10.10.10.1 advertise-map ADVERTISE non-exist-map NON-EXIST

neighbor 10.10.20.3 remote-as 3

!

ip route 172.31.130.0 255.255.0.0 Null0

!

ip as-path access-list 1 permit ^3

!

access-list 60 permit 172.16.16.0 0.0.0.255

access-list 65 permit 192.168.50.0 0.0.0.255

!

route-map NON-EXIST permit 10

match ip address 65

match as-path 1

!

route-map ADVERTISE permit 10

match ip address 60

!

Gerelateerde informatie

- BGP: veelgestelde vragen

- Border Gateway Protocol-gebruiksscenario's onderzoeken

- Cisco Technical Support en downloads