Percorsi eBGP appresi non distribuiti ai vicini iBGP


8

Ho (in GNS3) tre Cisco 3640 che eseguono 12.4 (23) collegati in serie (R1 -> R2 -> R3). R1 e R2 sono peer eBGP, R2 e R3 sono peer iBGP. R1 pubblicizza la rete 192.168.1.0/24. R2 riceve questo percorso, ma non lo annuncia a R3.

I percorsi appresi da eBGP non dovrebbero essere pubblicizzati su iBGP?

Ecco la configurazione completa come inserita:

loop0(R1)s0/0 <--> s0/0(R2)s0/1 <--> s0/1(R3)

R1:
configure terminal
interface s0/0
ip address 172.16.1.1 255.255.255.252
no shutdown
interface loopback0
ip address  192.168.1.1 255.255.255.0
router bgp 1
neighbor 172.16.1.2 remote-as 2
network 192.168.1.0 mask 255.255.255.0

R2:
configure terminal
interface s0/0
ip address 172.16.1.2 255.255.255.252
no shutdown
interface s0/1
ip address 172.16.1.5 255.255.255.252
no shutdown
router bgp 2
neighbor 172.16.1.1 remote-as 1
neighbor 172.16.1.6 remote-as 2

R3:
configure terminal
interface s0/1
ip address 172.16.1.6  255.255.255.252
no shutdown
router bgp 2
neighbor 172.16.1.5 remote-as 2

Risposte:


14

Supponendo che non abbiate configurato IGP (come EIGRP / OSPF / ISIS / RIP), la spiegazione più semplice è che R3 non ha una route per l'hop successivo 192.168.1.0/24 quando l'aggiornamento iBGP arriva a R3.

loop0(R1)s0/0 <-----------> s0/0(R2)s0/1 <-------------> s0/1(R3)
    AS 1                       AS 2                        AS 2

              --------->                  ----------->
              Prefix: 192.168.1.0/24      Prefix: 192.168.1.0/24
              AS-path: 1                  AS-path: 1
              Next-hop: 172.16.1.1        Next-hop: 172.16.1.1
              *via eBGP*                  *via iBGP*

Poiché iBGP non ripristina l'hop successivo quando riceve l'aggiornamento da R1, l'hop successivo 192.168.1.0/24 (172.16.1.1) deve essere raggiungibile (vedere Perché i router ignorano i percorsi BGP per maggiori dettagli).

Il modo più semplice per testarlo è configurare un static su R3:

ip route 172.16.1.0 0.0.0.3 172.16.1.5 name BAD_HACK_FOR_IBGP

Questa è ovviamente la soluzione sbagliata, ma è un test semplicissimo per illustrare perché le cose sono rotte (tenere presente che potrebbe essere necessario attendere un po 'prima che venga eseguito lo scanner next-hop BGP prima di installare il percorso 192.168.1.0/24) .

Ci sono due possibili soluzioni che vengono in mente, ma solo una ha davvero senso nella maggior parte delle reti ...

  • La migliore soluzione : configura un IGP ... scegli qualsiasi IGP che preferisci e pubblicizza 172.16.1.0/30 su AS 2 in quell'IGP
  • Soluzione opzionale : configurare la sessione di peering tra R2 e R3 da impostarenext-hop-self

La raggiungibilità del hop successivo è una delle questioni più basilari per comprendere la BGP; quasi tutti incontrano questo problema quando stanno sperimentando il protocollo.


1
Spiegazione eccellente. Non ero a conoscenza del fatto che iBGP passa l'hop successivo non modificato.
user1038451

Mike, potresti fornire un esempio di quando non vorresti usare next-hop-self( se non per il fatto che hai già una IGP che pubblicizza l'indirizzo del prossimo hop del peer di eBGP)? Inizialmente stavo per fare un'altra domanda per questo, ma ho pensato che sarebbe stato facile aggiungere alla tua risposta. Di recente, dopo aver fatto pressioni su BGP, e continuo a imbattermi in questo, mi incuriosisce il motivo per cuinext-hop-self non è stato il comportamento predefinito.
Eddie,

Posso aggiungere informazioni a riguardo, ma potrebbero volerci alcuni giorni prima di avere tempo. Breve storia: il costo IGP per il prossimo hop BGP fa parte dell'algoritmo di selezione del percorso eBGP predefinito
Mike Pennington,

0

Dovresti dover annunciare le tue interfacce connesse su R2. perché l'unica rete 192.168.1.0 non fa quale sia l'hop successivo. Puoi controllare con "show ip bgp" su R3.

Come puoi vedere 192.168.1.0 nella tabella bgp R3 ma non inserito nella tabella di routing. Perché non sa quale sia il prossimo salto

Soluzione:

  1. Ridistribuire le interfacce connesse su R2
  2. Dì al vicino EBGP che chi è il prossimo hop come " prossimo 172.16.1.2 next-hop-self " su R1 .
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.