Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Schemi supportati per la configurazione L3out tra siti

Configurazione

Diagrammi di rete

Topologia fisica

Topologia logica

Configurazioni

Configurare Schema-config1

Configurare i criteri fabric

Configura RTEP/ETEP

Configurazione dell'estensione tenant

Configurazione dello schema

Creazione dello schema

Creazione del modello Sito A

Configurazione del modello

Creazione del modello di estensione

Allega modello

Configura associazione porta statica

Configurazione di BD

Configurare l'host A (N9K)

Creazione del modello Sito-B

Configura sito B L3out

Creazione di un EPG esterno

Configurazione dell'N9K esterno (sito-B)

Collegamento del sito B L3out al sito A EPG(BD)

Configurazione del contratto

Crea contratto

Verifica

Informazioni sull'endpoint

Verifica ETEP/RTEP

Raggiungibilità ICMP

Verifica route

Risoluzione dei problemi

Sito2_Foglia1

Sito2_Tratto

Sito1_Dorso

Informazioni sulla voce Distinguitore route

Sito1_Foglia1

Verifica ELAM (Site1_Spine)

Site1_Spine Verify Route-Map

Introduzione

In questo documento viene descritto come configurare l'intersito L3out con un'infrastruttura multi-sito ACI (Cisco Application Centric Infrastructure).

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Configurazione funzionale della struttura ACI multisito

- Router/connettività esterni

Componenti usati

Le informazioni fornite in questo documento si basano su:

- Multi-Site Orchestrator (MSO) versione 2.2(1) o successiva

- ACI versione 4.2(1) o successiva

- Nodi MSO

- ACI fabric

- Switch Nexus serie 9000 (N9K) (simulazione terminale host e dispositivo esterno L3out)

- Nexus serie 9000 Switch (N9K) (Inter-site Network (ISDN))

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Premesse

Schemi supportati per la configurazione L3out tra siti

Schema-config1

- Tenant esteso tra i siti (A e B).

- VRF (Virtual Routing and Forwarding) esteso tra i siti (A e B).

- Gruppo di endpoint (EPG)/Dominio bridge (BD) locale su un sito (A).

- L3out locale in un altro sito (B).

- EPG esterno di L3out locale al sito (B).

- Creazione e configurazione di contratti da MSO.

Schema-config2

- Tenant esteso tra i siti (A e B).

- VRF si estende tra i siti (A e B).

- L'EPG/BD si estendeva tra i siti (A e B).

- L3out locale su un sito (B).

- EPG esterno di L3out locale al sito (B).

- La configurazione del contratto può essere eseguita dal sistema MSO oppure ogni sito dispone di una creazione di contratto locale da Application Policy Infrastructure Controller (APIC) e può essere collegata localmente tra EPG esterno esteso e L3out. In questo caso, il file shadow External_EPG viene visualizzato nel sito A perché è necessario per le implementazioni delle relazioni contrattuali e dei criteri locali.

Schema-config3

- Tenant esteso tra i siti (A e B).

- VRF si estende tra i siti (A e B).

- L'EPG/BD si estendeva tra i siti (A e B).

- L3out locale su un sito (B).

- EPG esterno di L3out esteso tra i siti (A e B).

- La configurazione del contratto può essere eseguita dal sistema MSO oppure ogni sito dispone di una creazione di contratto locale da APIC e può essere collegato localmente tra l'EPG esteso e l'EPG esterno esteso.

Schema-config4

- Tenant esteso tra i siti (A e B).

- VRF si estende tra i siti (A e B).

- EPG/BD locale in un sito (A) o EPG/BD locale in ciascun sito (EPG-A nel sito A ed EPG-B nel sito B).

- L3out locale su un sito (B) o per la ridondanza verso la connettività esterna è possibile avere L3out locale su ciascun sito (locale sul sito A e locale sul sito B).

- EPG esterno di L3out esteso tra i siti (A e B).

- La configurazione del contratto può essere eseguita dal sistema MSO o ciascun sito ha la creazione di un contratto locale da APIC e può essere collegato localmente tra EPG estesi e EPG esterni estesi.

Schema-config5 (routing transit)

- Tenant esteso tra i siti (A e B).

- VRF si estende tra i siti (A e B).

- L3out locale per ogni sito (locale rispetto al sito A e locale rispetto al sito B).

- EPG esterno locale di ciascun sito (A e B).

- La configurazione del contratto può essere eseguita dal sistema MSO o ciascun sito dispone di una creazione di contratto locale da APIC e può essere collegato localmente tra EPG locale esterno e EPG locale esterno ombra.

Schema-config5 (routing di transito InterVRF)

- Tenant esteso tra i siti (A e B).

- VRF locale in ogni sito (A e B).

- L3out locale per ogni sito (locale rispetto al sito A e locale rispetto al sito B).

- EPG esterno locale di ciascun sito (A e B).

- La configurazione del contratto può essere eseguita dal sistema MSO o ciascun sito dispone di una creazione di contratto locale da APIC e può essere collegato localmente tra EPG locale esterno e EPG locale esterno ombra.

Nota: questo documento fornisce i passaggi di configurazione e la verifica di base dell'intersito L3out. Nell'esempio viene utilizzato Schema-config1.

Configurazione

Diagrammi di rete

Topologia fisica

Topologia logica

Configurazioni

In questo esempio viene utilizzato Schema-config1. Tuttavia, questa configurazione può essere completata in modo simile (con modifiche minori rispetto alla relazione di contratto) per altre configurazioni di schema supportate, con la differenza che l'oggetto esteso deve essere incluso nel modello esteso anziché nel modello di sito specifico.

Configurare Schema-config1

- Tenant esteso tra i siti (A e B).

- VRF si estende tra i siti (A e B).

- EPG/BD locale su un sito (A).

- L3out locale in un altro sito (B).

- EPG esterno di L3out locale al sito (B).

- Creazione di contratti e configurazioni eseguite da MSO.

Esaminare le linee guida e le limitazioni per l'utilizzo di L3Out tra siti.

- Configurazione non supportata con L3out tra siti:

- Ricevitori multicast in un sito che riceve multicast da un'origine esterna tramite un altro sito L3out. Il multicast ricevuto in un sito da un'origine esterna non viene mai inviato ad altri siti. Quando un ricevitore in un sito riceve multicast da un'origine esterna, deve essere ricevuto su un'uscita L3D locale.

- Una sorgente multicast interna invia un multicast a un ricevitore esterno con PIM-SM any source multicast (ASM). Un'origine multicast interna deve essere in grado di raggiungere un punto di rendering esterno da un'uscita L3D locale.

- Giant OverLay Fabric (GOLF).

- Gruppi preferiti per EPG esterno.

Configurare i criteri fabric

I criteri fabric in ogni sito sono una configurazione essenziale, in quanto tali configurazioni dei criteri sono collegate a connessioni fisiche specifiche tenant/EPG/statiche o L3out. Qualsiasi configurazione errata con i criteri di infrastruttura può causare errori nella configurazione logica da APIC o MSO, da cui la configurazione dei criteri di infrastruttura fornita utilizzata in un'installazione lab. Consente di comprendere quale oggetto è collegato a quale oggetto in MSO o APIC.

Criteri infrastruttura di connessione Host_A nel sito-A

Criteri infrastruttura di connessione L3out nel sito B

Passaggio facoltativo

Una volta implementate le policy di fabric per le rispettive connessioni, è possibile accertarsi che tutte le foglie e gli aculei vengano rilevati e raggiungibili dal rispettivo cluster APIC. È quindi possibile verificare che entrambi i siti (cluster APIC) siano raggiungibili da MSO e che la configurazione multisito sia operativa (e la connettività IPN).

Configura RTEP/ETEP

Il pool RTEP (Routable Tunnel Endpoint Pool) o il pool ETEP (External Tunnel Endpoint Pool) è la configurazione richiesta per l'uscita L3 tra siti. La versione precedente di MSO visualizza "Pool TEP router", mentre la versione più recente di MSO visualizza "Pool TEP esterni", ma entrambi sono sinonimi. Questi pool TEP sono utilizzati per Border Gateway Protocol (BGP) Ethernet VPN (EVPN) tramite VRF "Overlay-1".

Le route esterne da L3out vengono pubblicizzate tramite BGP EVPN verso un altro sito. Questo RTEP/ETEP viene utilizzato anche per la configurazione foglia remota, quindi se si dispone di una configurazione ETEP/RTEP già esistente in APIC, è necessario importarla in MSO.

Di seguito viene riportata la procedura per configurare ETEP dalla GUI MSO. Poiché la versione è 3.X MSO, viene visualizzato ETEP. I pool ETEP devono essere univoci in ogni sito e non devono sovrapporsi ad alcuna subnet EPG/BD interna di ogni sito.

Sito-A

Passaggio 1. Nella pagina dell'interfaccia utente grafica MSO (aprire il controller multisito in una pagina Web), scegliere Infrastruttura > Configurazione infra. Fare clic su Configura infra.

Passaggio 2. All'interno di Configura infrastruttura, scegliere Sito-A, All'interno del Sito-A, scegliere pod-1. Quindi, all'interno del pod-1, configurare i pool TEP esterni con l'indirizzo IP TEP esterno per il Sito-A (in questo esempio è 192.168.200.0/24). Se nel sito A è presente Multi-POD, ripetere questo passaggio per gli altri pod.

Passaggio 3. Per verificare la configurazione dei pool ETEP nell'interfaccia grafica APIC, scegliere Fabric > Inventory > Pod Fabric Setup Policy > Pod-ID (fare doppio clic per aprire [Fabric Setup Policy a POD-Pod-x]) > External TEP.

È possibile verificare la configurazione anche con questi comandi:

moquery -c fabricExtRoutablePodSubnet

moquery -c fabricExtRoutablePodSubnet -f 'fabric.ExtRoutablePodSubnet.pool=="192.168.200.0/24"'

APIC1# moquery -c fabricExtRoutablePodSubnet

Total Objects shown: 1

# fabric.ExtRoutablePodSubnet

pool                 : 192.168.200.0/24

annotation           : orchestrator:msc

childAction          :

descr                :

dn                   : uni/controller/setuppol/setupp-1/extrtpodsubnet-[192.168.200.0/24]

extMngdBy            :

lcOwn                : local

modTs                : 2021-07-19T14:45:22.387+00:00

name                 :

nameAlias            :

reserveAddressCount  : 0

rn                   : extrtpodsubnet-[192.168.200.0/24]

state                : active

status               :

uid                  : 0

Sito-B

Passaggio 1. Configurare il pool TEP esterno per il sito B (gli stessi passaggi previsti per il sito A). Nella pagina dell'interfaccia utente grafica MSO (aprire il controller multisito in una pagina Web), scegliere Infrastruttura > Configurazione infra. Fare clic su Configura infra. All'interno di Configura infra, scegliere Sito-B. All'interno del sito B, scegliere pod-1. Quindi, all'interno del pod-1, configurare i pool TEP esterni con l'indirizzo IP TEP esterno per il sito B (in questo esempio è 192.168.100.0/24). Se si dispone di Multi-POD nel Sito-B, ripetere questo passaggio per altri pod.

Passaggio 2. Per verificare la configurazione dei pool ETEP nell'interfaccia grafica APIC, scegliere Fabric > Inventory > Pod Fabric Setup Policy > Pod-ID (fare doppio clic per aprire [Fabric Setup Policy a POD-Pod-x]) > External TEP.

Per l'APIC del sito B, immettere questo comando per verificare il pool di indirizzi ETEP.

apic1# moquery -c fabricExtRoutablePodSubnet -f 'fabric.ExtRoutablePodSubnet.pool=="192.168.100.0/24"'

Total Objects shown: 1

# fabric.ExtRoutablePodSubnet

pool                 : 192.168.100.0/24

annotation           : orchestrator:msc  <<< This means, configuration pushed from MSO.

childAction          :

descr                :

dn                   : uni/controller/setuppol/setupp-1/extrtpodsubnet-[192.168.100.0/24]

extMngdBy            :

lcOwn                : local

modTs                : 2021-07-19T14:34:18.838+00:00

name                 :

nameAlias            :

reserveAddressCount  : 0

rn                   : extrtpodsubnet-[192.168.100.0/24]

state                : active

status               :

uid                  : 0

Configurazione dell'estensione tenant

Passaggio 1. Nella GUI MSO, scegliere Gestione applicazioni > Tenant.  Fare clic su Aggiungi tenant. In questo esempio, il nome del tenant è "TN_D".

Passaggio 2. Nel campo Display Name (Nome visualizzato), immettere il nome del tenant. Nella sezione Siti associati selezionare le caselle di controllo Sito A e Sito B.

Passaggio 3. Verificare che il nuovo tenant "Tn_D" sia stato creato.

Vista logica

Quando si crea un tenant da MSO, in pratica viene creato un tenant nel sito A e nel sito B. È un tenant di stretch. In questo esempio viene illustrata una visualizzazione logica del tenant. Questa visualizzazione logica consente di comprendere che il tenant TN_D è un tenant esteso tra il sito A e il sito B.

È possibile verificare la vista logica nell'APIC di ogni sito. Si può vedere che Sito-A e Sito-B mostrano entrambi "TN_D" tenant creato.

Lo stesso tenant esteso "TN_D" viene creato anche nel sito B.

Questo comando mostra il tenant inviato da MSO e può essere utilizzato a scopo di verifica. È possibile eseguire questo comando nell'APIC di entrambi i siti.

APIC1# moquery -c fvTenant -f 'fv.Tenant.name=="TN_D"'

Total Objects shown: 1

# fv.Tenant

name         : TN_D

annotation   : orchestrator:msc

childAction  :

descr        :

dn           : uni/tn-TN_D

extMngdBy    : msc

lcOwn        : local

modTs        : 2021-09-17T21:42:52.218+00:00

monPolDn     : uni/tn-common/monepg-default

nameAlias    :

ownerKey     :

ownerTag     :

rn           : tn-TN_D

status       :

uid          : 0

apic1# moquery -c fvTenant -f 'fv.Tenant.name=="TN_D"'

Total Objects shown: 1

# fv.Tenant

name         : TN_D

annotation   : orchestrator:msc

childAction  :

descr        :

dn           : uni/tn-TN_D

extMngdBy    : msc

lcOwn        : local

modTs        : 2021-09-17T21:43:04.195+00:00

monPolDn     : uni/tn-common/monepg-default

nameAlias    :

ownerKey     :

ownerTag     :

rn           : tn-TN_D

status       :

uid          : 0

Configurazione dello schema

Creare quindi uno schema con un totale di tre modelli:

1. Modello per il sito A: Il modello per il sito A viene associato solo al sito A, pertanto qualsiasi configurazione di oggetto logico in tale modello può essere applicata solo all'APIC del sito A.

2. Modello per il sito B: Il modello per il sito B viene associato solo al sito B, pertanto qualsiasi configurazione di oggetto logico in tale modello può essere applicata solo all'APIC del sito B.

3. Modello esteso: Il modello esteso viene associato a entrambi i siti e qualsiasi configurazione logica nel modello esteso può essere applicata a entrambi i siti di APIC.

Creazione dello schema

Lo schema è significativo a livello locale in MSO, non crea alcun oggetto in APIC. La configurazione dello schema è la separazione logica di ogni configurazione. È possibile avere più schemi per gli stessi tenant e più modelli all'interno di ogni schema.

Ad esempio, è possibile avere uno schema per il server database per il tenant X e il server applicazioni utilizza uno schema diverso per lo stesso tenant-X. In questo modo è possibile separare ogni configurazione specifica correlata all'applicazione ed è semplice quando è necessario eseguire il debug di un problema. È anche facile trovare informazioni.

Creare uno schema con il nome del tenant (ad esempio, TN_D_Schema). Tuttavia, non è necessario che il nome dello schema inizi con il nome del tenant, è possibile creare uno schema con qualsiasi nome.

Passaggio 1. Scegliere Gestione applicazioni > Schemi. Fare clic su Aggiungi schema.

Passaggio 2. Nel campo Nome immettere il nome dello schema. In questo esempio è "TN_D_Schema", tuttavia è possibile mantenere qualsiasi nome appropriato per l'ambiente in uso. Fare clic su Add.

Passaggio 3. Verificare che lo schema "TN_D_Schema" sia stato creato.

Creazione del modello Sito A

Passaggio 1. Aggiungere un modello nello schema.

1. Per creare un modello, fare clic su Modelli nello schema creato. Verrà visualizzata la finestra di dialogo Seleziona un tipo di modello.

2. Scegliere ACI Multi-cloud.

3. Fare clic su Add.

Passaggio 2. Inserire un nome per il modello. Questo modello è specifico del sito A, da cui il nome del modello "Sito-A Template". Una volta creato il modello, è possibile associare un tenant specifico al modello. In questo esempio, il tenant "TN_D" è collegato.

Configurazione del modello

Configurazione profilo applicazione

Passaggio 1. Dallo schema creato, scegliere Modello Sito A. Fare clic su Aggiungi profilo applicazione.

Passaggio 2. Nel campo Nome visualizzato, immettere il nome del profilo applicazione App_Profile.

Passaggio 3. Il passaggio successivo consiste nella creazione di EPG. Per aggiungere EPG al di sotto del profilo dell'applicazione, fare clic su Add EPG (Aggiungi EPG) nel modello Sito-A. Potete vedere che un nuovo EPG viene creato all'interno della configurazione EPG.

Passaggio 4. Per collegare l'EPG con BD e VRF, è necessario aggiungere BD e VRF in EPG. Scegliere Sito-Modello. Nel campo Display Name (Nome visualizzato), immettere il nome dell'EPG e allegare un nuovo BD (è possibile creare un nuovo BD o collegarne uno esistente).

Notare che è necessario collegare VRF a un BD, ma in questo caso VRF è allungato. È possibile creare il modello esteso con VRF estesa e quindi collegare tale VRF a BD in un modello specifico del sito (nel nostro caso si tratta del modello Sito-A).

Creazione del modello di estensione

Passaggio 1. Per creare il modello di estensione, in TN_D_Schema fare clic su Modelli. Verrà visualizzata la finestra di dialogo Seleziona un tipo di modello. Scegliere ACI Multi-cloud. Fare clic su Add. Immettere il nome Modello esteso per il modello. È possibile immettere qualsiasi nome per la maschera estesa.

Passaggio 2. Scegliere Modello esteso e creare un VRF denominato VRF_Stretch. È possibile immettere qualsiasi nome per VRF.

BD è stato creato con la creazione di EPG in Sito-A modello, ma non vi erano VRF collegati, quindi è necessario collegare VRF che è ora creato nel modello esteso.

Passaggio 3. Scegliere Sito-A Template > BD_990. Nell'elenco a discesa Inoltro e routing virtuale, scegliere VRF_Stretch. Quella creata nel passaggio 2 di questa sezione.

Allega modello

Il passaggio successivo consiste nell'allegare il modello Sito-A solo con il sito-A e il modello esteso deve essere allegato a entrambi i siti. Fare clic su Distribuisci nel sito all'interno dello schema per distribuire i modelli nei rispettivi siti.

Passaggio 1. Fare clic sul segno + in TN_D_Schema > SITES per aggiungere siti al modello. Nell'elenco a discesa Assegna a modello scegliere il modello desiderato per i siti appropriati.

Passaggio 2. È possibile vedere che il sito A ha ora EPG e BD ma il sito B non ha lo stesso EPG/BD creato, in quanto tale configurazione si applica solo al sito A dal sistema MSO. Tuttavia, è possibile notare che il VRF viene creato nel modello esteso e pertanto viene creato in entrambi i siti.

Passaggio 3. Verificare la configurazione con questi comandi.

APIC1# moquery -c fvAEPg -f 'fv.AEPg.name=="EPG_990"'

Total Objects shown: 1

# fv.AEPg

name                 : EPG_990

annotation           : orchestrator:msc

childAction          :

configIssues         :

configSt             : applied

descr                :

dn                   : uni/tn-TN_D/ap-App_Profile/epg-EPG_990

exceptionTag         :

extMngdBy            :

floodOnEncap         : disabled

fwdCtrl              :

hasMcastSource       : no

isAttrBasedEPg       : no

isSharedSrvMsiteEPg  : no

lcOwn                : local

matchT               : AtleastOne

modTs                : 2021-09-18T08:26:49.906+00:00

monPolDn             : uni/tn-common/monepg-default

nameAlias            :

pcEnfPref            : unenforced

pcTag                : 32770

prefGrMemb           : exclude

prio                 : unspecified

rn                   : epg-EPG_990

scope                : 2850817

shutdown             : no

status               :

triggerSt            : triggerable

txId                 : 1152921504609182523

uid                  : 0

APIC1# moquery -c fvBD -f 'fv.BD.name=="BD_990"'

Total Objects shown: 1

# fv.BD

name                     : BD_990

OptimizeWanBandwidth     : yes

annotation               : orchestrator:msc

arpFlood                 : yes

bcastP                   : 225.0.56.224

childAction              :

configIssues             :

descr                    :

dn                       : uni/tn-TN_D/BD-BD_990

epClear                  : no

epMoveDetectMode         :

extMngdBy                :

hostBasedRouting         : no

intersiteBumTrafficAllow : yes

intersiteL2Stretch       : yes

ipLearning               : yes

ipv6McastAllow           : no

lcOwn                    : local

limitIpLearnToSubnets    : yes

llAddr                   : ::

mac                      : 00:22:BD:F8:19:FF

mcastAllow               : no

modTs                    : 2021-09-18T08:26:49.906+00:00

monPolDn                 : uni/tn-common/monepg-default

mtu                      : inherit

multiDstPktAct           : bd-flood

nameAlias                :

ownerKey                 :

ownerTag                 :

pcTag                    : 16387

rn                       : BD-BD_990

scope                    : 2850817

seg                      : 16580488

status                   :

type                     : regular

uid                      : 0

unicastRoute             : yes

unkMacUcastAct           : proxy

unkMcastAct              : flood

v6unkMcastAct            : flood

vmac                     : not-applicable

: 0

APIC1# moquery -c fvCtx -f 'fv.Ctx.name=="VRF_Stretch"'

Total Objects shown: 1

# fv.Ctx

name                 : VRF_Stretch

annotation           : orchestrator:msc

bdEnforcedEnable     : no

childAction          :

descr                :

dn                   : uni/tn-TN_D/ctx-VRF_Stretch

extMngdBy            :

ipDataPlaneLearning  : enabled

knwMcastAct          : permit

lcOwn                : local

modTs                : 2021-09-18T08:26:58.185+00:00

monPolDn             : uni/tn-common/monepg-default

nameAlias            :

ownerKey             :

ownerTag             :

pcEnfDir             : ingress

pcEnfDirUpdated      : yes

pcEnfPref            : enforced

pcTag                : 16386

rn                   : ctx-VRF_Stretch

scope                : 2850817

seg                  : 2850817

status               :

uid                  : 0

Configura associazione porta statica

È ora possibile configurare il binding della porta statica in EPG "EPG_990" e configurare N9K con VRF HOST_A (in pratica simula HOST_A). La configurazione del binding della porta statica lato ACI verrà completata per prima.

Passaggio 1. Aggiungere il dominio fisico in EPG_990.

1. Dallo schema creato, scegliere Modello Sito A > EPG_990.

2. Nella casella Proprietà modello fare clic su Aggiungi dominio.

3. Nella finestra di dialogo Aggiungi dominio scegliere le opzioni seguenti dagli elenchi a discesa:

- Tipo associazione dominio - Fisico

- Profilo dominio - TN_D_PhysDom

- Immediatezza dell'installazione - Immediata

- Risoluzione Immediata - Immediata

4. Fare clic su Salva.

Passaggio 2. Aggiungere la porta statica (Site1_Leaf1 eth1/5).

1. Dallo schema creato, scegliere Modello Sito A > EPG_990.

2. Nella casella Proprietà modello fare clic su Aggiungi porta statica.

3. Nella finestra di dialogo Add Static EPG on PC, VPC or Interface, selezionare Node-101 eth1/5 e assegnare la VLAN 990.

Passaggio 3. Verificare che le porte statiche e il dominio fisico siano stati aggiunti in EPG_990.

Verificare l'associazione del percorso statico con questo comando:

APIC1# moquery -c fvStPathAtt -f 'fv.StPathAtt.pathName=="eth1/5"' | grep EPG_990 -A 10 -B 5

# fv.StPathAtt

pathName     : eth1/5

childAction  :

descr        :

dn           : uni/epp/fv-[uni/tn-TN_D/ap-App_Profile/epg-EPG_990]/node-1101/stpathatt-[eth1/5]

lcOwn        : local

modTs        : 2021-09-19T06:16:46.226+00:00

monPolDn     : uni/tn-common/monepg-default

name         :

nameAlias    :

ownerKey     :

ownerTag     :

rn           : stpathatt-[eth1/5]

status       :

Configurazione di BD

Passaggio 1. Aggiungere la subnet/IP in BD (HOST_A utilizza BD IP come gateway).

1. Nello schema creato scegliere Modello sito A > BD_990.

2. Fare clic su Aggiungi subnet.

3. Nella finestra di dialogo Aggiungi nuova subnet, immettere l'indirizzo IP del gateway e fare clic sul pulsante di opzione Annunciato esternamente.

Passaggio 2. Verificare che la subnet venga aggiunta in APIC1 Sito-A con questo comando.

APIC1# moquery -c fvSubnet -f 'fv.Subnet.ip=="90.0.0.254/24"'

Total Objects shown: 1

# fv.Subnet

ip           : 90.0.0.254/24

annotation   : orchestrator:msc

childAction  :

ctrl         : nd

descr        :

dn           : uni/tn-TN_D/BD-BD_990/subnet-[90.0.0.254/24]

extMngdBy    :

lcOwn        : local

modTs        : 2021-09-19T06:33:19.943+00:00

monPolDn     : uni/tn-common/monepg-default

name         :

nameAlias    :

preferred    : no

rn           : subnet-[90.0.0.254/24]

scope        : public

status       :

uid          : 0

virtual      : no

Passaggio 3. Distribuire il modello Sito A.

1. Nello schema creato scegliere Modello sito A.

2. Fare clic su Distribuisci nei siti.

Configurare l'host A (N9K)

Configurare il dispositivo N9K con VRF HOST_A. Una volta completata la configurazione N9K, è possibile vedere l'indirizzo anycast BD ACI Leaf (gateway di HOST_A) raggiungibile ora tramite ICMP(ping).

Nella scheda operativa ACI, è possibile visualizzare 90.0.0.10 (indirizzo IP HOST_A).

Creazione del modello Sito-B

Passaggio 1. Dallo schema creato, scegliere MODELLI. Fare clic sul segno + e creare un modello denominato Modello Sito-B.

Configura sito B L3out

Creare L3out e collegare VRF_Stretch. È necessario creare un oggetto L3out da MSO e il resto della configurazione L3out deve essere eseguito da APIC (poiché i parametri L3out non sono disponibili in MSO). Inoltre, creare un EPG esterno da MSO (solo nel modello Sito-B, poiché l'EPG esterno non è esteso).

Passaggio 1. Dallo schema creato, scegliere Modello Sito B. Nel campo Display Name (Nome visualizzato), immettere L3out_OSPF_siteB. Nell'elenco a discesa Routing e inoltro virtuale, scegliere VRF_Stretch.

Creazione di un EPG esterno

Passaggio 1. Dallo schema creato, scegliere Modello sito B. Fare clic su Add External EPG.

Passaggio 2. Collegare L3out con EPG esterno.

1. Nello schema creato scegliere Modello Sito-B.

2. Nel campo Display Name (Nome visualizzato), immettere EXT_EPG_Site2.

3. Nel campo Subnet di classificazione, immettere 0.0.0.0/0 come subnet esterna per EPG esterno.

Il resto della configurazione L3out viene completato da APIC (sito-B).

Passaggio 3. Aggiungere il dominio L3, abilitare il protocollo OSPF e configurare OSPF con l'area regolare 0.

1. Da APIC-1 in Site-B, scegliere TN_D > Reti > L3out-OSPF-siteB > Criteri > Principale.

2. Nell'elenco a discesa Dominio L3, scegliere TN_D_L3Dom.

3. Selezionare la casella di controllo OSPF per Abilitare BGP/EIGRP/OSPF.

4. Nel campo ID area OSPF, immettere 0.

5. In Tipo area OSPF, scegliere Area regolare.

6. Fare clic su Invia.

Passaggio 4. Creare il profilo del nodo.

1. Da APIC-1 in Site-B, scegliere TN_D > Reti > L3Outs > L3Out-OSPF-siteB > Profili nodo logico.

2. Fare clic su Crea profilo nodo.

Passaggio 5. Scegliere lo switch Sito2_Foglia1 come nodo nel sito B.

1. Da APIC-1 in Site-B, scegliere TN_D > Reti > L3Outs > L3Out-OSPF-siteB > Profili nodo logico > Crea profilo nodo.

2. Nel campo Nome, immettere Sito2_Foglia1.

3. Fare clic sul segno + per aggiungere un nodo.

4. Aggiungere il pod-2 node-101 con l'indirizzo IP dell'ID del router.

Passaggio 6. Aggiungere il profilo dell'interfaccia (la VLAN esterna è 920 (creazione di SVI)).

1. Da APIC-1 in Site-B, scegliere TN_D > Reti > L3Outs > L3out-OSPF-SiteB > Profili di interfaccia logica.

2. Fare clic con il pulsante destro del mouse e aggiungere il profilo dell'interfaccia.

3. Scegliere Sottointerfacce di routing.

4. Configurare l'indirizzo IP, l'MTU e la VLAN-920.

Passaggio 7. Creare il criterio OSPF (rete point-to-point).

1. Da APIC-1 in Site-B, scegliere TN_D > Reti > L3Outs > L3Out-OSPF-siteB > Profili di interfaccia logica.

2. Fare clic con il pulsante destro del mouse e scegliere Crea profilo interfaccia OSPF.

3. Scegli le opzioni come mostrato nello screenshot e clicca su Invia.

Passaggio 8. Verificare i criteri del profilo di interfaccia OSPF allegati in TN_D > Rete > L3Outs > L3Out-OSPF-siteB > Profili di interfaccia logica > (profilo interfaccia) > Profilo di interfaccia OSPF.

Passaggio 9. Verificare che "EXT_EPG_Site2" EPG esterno sia stato creato da MSO. Da APIC-1 nel sito B, scegliere TN_D > L3Outs > L3Out-OSPF-siteB > EPG esterni > EXT_EPG_Site2.

Configurazione dell'N9K esterno (sito-B)

Dopo la configurazione N9K (VRF L3out-OSPF-siteB), è possibile vedere la vicinanza OSPF stabilita tra N9K e ACI Leaf (al Sito-B).

Verificare che il protocollo di vicinato OSPF sia stato stabilito e sia attivo (stato completo).

Da APIC-1 in Site-B, scegliere TN_D > Reti > L3Outs > L3Out-OSPF-siteB > Profili nodo logico > Profili interfaccia logica > Nodi configurati > topologia/pod01/node-1101 > OSPF per VRF-TN_DVRF_Switch > Stato ID router adiacente > Completo.

È inoltre possibile controllare il livello di prossimità OSPF in N9K. Inoltre, è possibile eseguire il ping sull'indirizzo IP foglia ACI (sito B).

A questo punto, la configurazione di Host_A nel sito A e la configurazione di L3out nel sito B sono state completate.

Collegamento del sito B L3out al sito A EPG(BD)

Successivamente, è possibile collegare Site-B L3out al Sito-A BD-990 da MSO. La colonna laterale sinistra è suddivisa in due sezioni: 1) Modello e 2) Siti.

Passaggio 1. Nella seconda sezione Siti, è possibile visualizzare il modello associato a ogni sito. Quando si allega L3out a "Site-A Template", si viene allegati dal modello già allegato all'interno della sezione Siti.

Tuttavia, quando si distribuisce il modello, eseguire la distribuzione dalla sezione Modelli > Modello sito-A e scegliere salva/distribuisci nei siti.

Passaggio 2. Distribuire dal modello principale "Modello sito-A" nella prima sezione "Modelli".

Configurazione del contratto

È necessario un contratto tra EPG esterno presso il sito B e EPG_990 interno presso il sito A. È quindi possibile creare un contratto da MSO e allegarlo a entrambi gli EPG.

Cisco Application Centric Infrastructure - Cisco ACI Contract Guide può aiutare a comprendere il contratto. In genere, l'EPG interno è configurato come provider e l'EPG esterno come consumer.

Crea contratto

Passaggio 1. Da TN_D_Schema, scegliere Modello esteso > Contratti. Clic Aggiungi contratto.

Passaggio 2. Aggiungere un filtro per consentire tutto il traffico.

1. Da TN_D_Schema, scegliere Modello esteso > Contratti.

2. Aggiungi un contratto con:

- Nome visualizzato: Contratto Intersite-L3out

- Ambito: VRF

Passaggio 3.

1. Da TN_D_Schema, scegliere Modello esteso > Filtri.

2. Nel campo Display Name (Nome visualizzato), immettere Allow-all-traffic (Consenti tutto il traffico).

3. Fare clic su Aggiungi voce. Verrà visualizzata la finestra di dialogo Aggiungi voce.

4. Nel campo Nome, immettere Any_Traffic.

5. Nell'elenco a discesa Ether Type (Tipo Ether), selezionare unspecified (Non specificato) per consentire tutto il traffico.

6. Fare clic su Salva.

Passaggio 4. Aggiungere il contratto a un EPG esterno come "Consumatore" (nel modello del sito B) (distribuire sul sito).

1. Da TN_D_Schema, scegliere Modello Sito-B > EXT_EPG_Site2.

2. Fare clic su Aggiungi contratto. Verrà visualizzata la finestra di dialogo Aggiungi contratto.

3. Nel campo Contratto immettere Intersite-L3out-Contract.

4. Nell'elenco a discesa Tipo scegliere consumer.

Passaggio 5. Aggiungere il contratto a EPG interno "EPG_990" come "Fornitore" (nel modello Sito A) (Distribuisci su sito).

1. Da TN_D_Schema, scegliere Modello Sito-A > EPG_990.

2. Fare clic su Aggiungi contratto. Verrà visualizzata la finestra di dialogo Aggiungi contratto.

3. Nel campo Contratto immettere Intersite-L3out-Contract.

4. Nell'elenco a discesa Tipo scegliere provider.

Non appena il contratto viene aggiunto, è possibile vedere "Shadow L3out / External EPG" creato nel Sito-A.

Potete inoltre notare che nel sito B sono state create anche "Ombreggiatura EPG_990 e BD_990".

Passaggio 6. Immettere questi comandi per verificare l'API del sito B.

apic1# moquery -c fvAEPg -f 'fv.AEPg.name=="EPG_990"'

Total Objects shown: 1

# fv.AEPg

name                 : EPG_990

annotation           : orchestrator:msc

childAction          :

configIssues         :

configSt             : applied

descr                :

dn                   : uni/tn-TN_D/ap-App_Profile/epg-EPG_990

exceptionTag         :

extMngdBy            :

floodOnEncap         : disabled

fwdCtrl              :

hasMcastSource       : no

isAttrBasedEPg       : no

isSharedSrvMsiteEPg  : no

lcOwn                : local

matchT               : AtleastOne

modTs                : 2021-09-19T18:47:53.374+00:00

monPolDn             : uni/tn-common/monepg-default

nameAlias            :

pcEnfPref            : unenforced

pcTag                : 49153          <<< Note that pcTag is different for shadow EPG.

prefGrMemb           : exclude

prio                 : unspecified

rn                   : epg-EPG_990

scope                : 2686978

shutdown             : no

status               :

triggerSt            : triggerable

txId                 : 1152921504609244629

uid                  : 0

apic1# moquery -c fvBD -f 'fv.BD.name==\"BD_990\"'

Total Objects shown: 1

# fv.BD

name                     : BD_990

OptimizeWanBandwidth     : yes

annotation               : orchestrator:msc

arpFlood                 : yes

bcastP                   : 225.0.181.192

childAction              :

configIssues             :

descr                    :

dn                       : uni/tn-TN_D/BD-BD_990

epClear                  : no

epMoveDetectMode         :

extMngdBy                :

hostBasedRouting         : no

intersiteBumTrafficAllow : yes

intersiteL2Stretch       : yes

ipLearning               : yes

ipv6McastAllow           : no

lcOwn                    : local

limitIpLearnToSubnets    : yes

llAddr                   : ::

mac                      : 00:22:BD:F8:19:FF

mcastAllow               : no

modTs                    : 2021-09-19T18:47:53.374+00:00

monPolDn                 : uni/tn-common/monepg-default

mtu                      : inherit

multiDstPktAct           : bd-flood

nameAlias                :

ownerKey                 :

ownerTag                 :

pcTag                    : 32771

rn                       : BD-BD_990

scope                    : 2686978

seg                      : 15957972

status                   :

type                     : regular

uid                      : 0

unicastRoute             : yes

unkMacUcastAct           : proxy

unkMcastAct              : flood

v6unkMcastAct            : flood

vmac                     : not-applicable

Passaggio 7. Esaminare e verificare la configurazione del dispositivo esterno N9K.

Verifica

Per verificare che la configurazione funzioni correttamente, consultare questa sezione.

Informazioni sull'endpoint

Verificare che l'endpoint del sito A sia stato acquisito come endpoint in Site1_Leaf1.

Site1_Leaf1# show endpoint interface ethernet 1/5

Legend:

s - arp              H - vtep             V - vpc-attached     p - peer-aged

R - peer-attached-rl B - bounce           S - static           M - span

D - bounce-to-proxy  O - peer-attached    a - local-aged       m - svc-mgr

L - local            E - shared-service

+-----------------------------------+---------------+-----------------+--------------+-------------+

VLAN/                           Encap           MAC Address       MAC Info/       Interface

Domain                          VLAN            IP Address        IP Info

+-----------------------------------+---------------+-----------------+--------------+-------------+

18                                         vlan-990    c014.fe5e.1407 L                      eth1/5

TN_D:VRF_Stretch                           vlan-990         90.0.0.10 L                      eth1/5

Verifica ETEP/RTEP

Fogli sito_A.

Site1_Leaf1# show ip interface brief vrf overlay-1

IP Interface Status for VRF "overlay-1"(4)

Interface            Address              Interface Status

eth1/49              unassigned           protocol-up/link-up/admin-up

eth1/49.7            unnumbered           protocol-up/link-up/admin-up

(lo0)

eth1/50              unassigned           protocol-up/link-up/admin-up

eth1/50.8            unnumbered           protocol-up/link-up/admin-up

(lo0)

eth1/51              unassigned           protocol-down/link-down/admin-up

eth1/52              unassigned           protocol-down/link-down/admin-up

eth1/53              unassigned           protocol-down/link-down/admin-up

eth1/54              unassigned           protocol-down/link-down/admin-up

vlan9                10.0.0.30/27         protocol-up/link-up/admin-up

lo0                  10.0.80.64/32        protocol-up/link-up/admin-up

lo1                  10.0.8.67/32         protocol-up/link-up/admin-up

lo8                  192.168.200.225/32   protocol-up/link-up/admin-up  <<<<< IP from ETEP site-A

lo1023               10.0.0.32/32         protocol-up/link-up/admin-up

Site2_Leaf1# show ip interface brief vrf overlay-1

IP Interface Status for VRF "overlay-1"(4)

Interface            Address              Interface Status

eth1/49              unassigned           protocol-up/link-up/admin-up

eth1/49.16           unnumbered           protocol-up/link-up/admin-up

(lo0)

eth1/50              unassigned           protocol-up/link-up/admin-up

eth1/50.17           unnumbered           protocol-up/link-up/admin-up

(lo0)

eth1/51              unassigned           protocol-down/link-down/admin-up

eth1/52              unassigned           protocol-down/link-down/admin-up

eth1/54              unassigned           protocol-down/link-down/admin-up

eth1/55              unassigned           protocol-down/link-down/admin-up

eth1/56              unassigned           protocol-down/link-down/admin-up

eth1/57              unassigned           protocol-down/link-down/admin-up

eth1/58              unassigned           protocol-down/link-down/admin-up

eth1/59              unassigned           protocol-down/link-down/admin-up

eth1/60              unassigned           protocol-down/link-down/admin-up

eth1/61              unassigned           protocol-down/link-down/admin-up

eth1/62              unassigned           protocol-down/link-down/admin-up

eth1/63              unassigned           protocol-down/link-down/admin-up

eth1/64              unassigned           protocol-down/link-down/admin-up

vlan18               10.0.0.30/27         protocol-up/link-up/admin-up

lo0                  10.0.72.64/32        protocol-up/link-up/admin-up

lo1                  10.0.80.67/32        protocol-up/link-up/admin-up

lo6                  192.168.100.225/32   protocol-up/link-up/admin-up <<<<< IP from ETEP site-B

lo1023               10.0.0.32/32         protocol-up/link-up/admin-up

Raggiungibilità ICMP

Eseguire il ping dell'indirizzo IP WAN del dispositivo esterno da HOST_A.

Eseguire il ping dell'indirizzo di loopback della periferica esterna.

Verifica route

Verificare che l'indirizzo IP WAN del dispositivo esterno O la route della subnet di loopback sia presente nella tabella di routing. Quando si controlla l'hop successivo per la subnet del dispositivo esterno in "Site1_Leaf1", si tratta dell'IP del PASSAGGIO esterno di "Site2-Leaf1".

Site1_Leaf1# show ip route 92.2.2.2 vrf TN_D:VRF_Stretch

IP Route Table for VRF "TN_D:VRF_Stretch"

'*' denotes best ucast next-hop

'**' denotes best mcast next-hop

'[x/y]' denotes [preference/metric]

'%' in via output denotes VRF

92.2.2.0/30, ubest/mbest: 1/0

*via 192.168.100.225%overlay-1, [200/0], 5d23h, bgp-65001, internal, tag 65001   <<<< Note that next hope is External TEP pool (ETEP) ip address of Site-B.

recursive next hop: 192.168.100.225/32%overlay-1

Site1_Leaf1# show ip route 91.0.0.1 vrf TN_D:VRF_Stretch

IP Route Table for VRF "TN_D:VRF_Stretch"

'*' denotes best ucast next-hop

'**' denotes best mcast next-hop

'[x/y]' denotes [preference/metric]

'%' in via output denotes VRF

91.0.0.1/32, ubest/mbest: 1/0

*via 192.168.100.225%overlay-1, [200/2], 5d23h, bgp-65001, internal, tag 65001   <<<< Note that next hope is External TEP pool (ETEP) ip address of Site-B.

recursive next hop: 192.168.100.225/32%overlay-1

Risoluzione dei problemi

Le informazioni contenute in questa sezione permettono di risolvere i problemi relativi alla configurazione.

Sito2_Foglia1

Importazione/esportazione route della famiglia di indirizzi BGP tra TN_D:VRF_stretch e Overlay-1.

Site2_Leaf1# show system internal epm vrf TN_D:VRF_Stretch

+--------------------------------+--------+----------+----------+------+--------

VRF                  Type    VRF vnid  Context ID Status Endpoint

Count

+--------------------------------+--------+----------+----------+------+--------

TN_D:VRF_Stretch                  Tenant   2686978    46         Up     1

Site2_Leaf1# show vrf TN_D:VRF_Stretch detail

VRF-Name: TN_D:VRF_Stretch, VRF-ID: 46, State: Up

VPNID: unknown

RD: 1101:2686978

Max Routes: 0  Mid-Threshold: 0

Table-ID: 0x8000002e, AF: IPv6, Fwd-ID: 0x8000002e, State: Up

Table-ID: 0x0000002e, AF: IPv4, Fwd-ID: 0x0000002e, State: Up

Site2_Leaf1# vsh

Site2_Leaf1# show bgp vpnv4 unicast 91.0.0.1 vrf TN_D:VRF_Stretch

BGP routing table information for VRF overlay-1, address family VPNv4 Unicast

Route Distinguisher: 1101:2686978    (VRF TN_D:VRF_Stretch)

BGP routing table entry for 91.0.0.1/32, version 12 dest ptr 0xae6da350

Paths: (1 available, best #1)

Flags: (0x80c0002 00000000) on xmit-list, is not in urib, exported

vpn: version 346, (0x100002) on xmit-list

Multipath: eBGP iBGP

Advertised path-id 1, VPN AF advertised path-id 1

Path type: redist 0x408 0x1 ref 0 adv path ref 2, path is valid, is best path

AS-Path: NONE, path locally originated

0.0.0.0 (metric 0) from 0.0.0.0 (10.0.72.64)

Origin incomplete, MED 2, localpref 100, weight 32768

Extcommunity:

RT:65001:2686978

VNID:2686978

COST:pre-bestpath:162:110

VRF advertise information:

Path-id 1 not advertised to any peer

VPN AF advertise information:

Path-id 1 advertised to peers:

10.0.72.65                                      <<

Site-B

apic1# acidiag fnvread ID Pod ID Name Serial Number IP Address Role State LastUpdMsgId -------------------------------------------------------------------------------------------------------------- 101 1

Site2_Spine FDO243207JH

10.0.72.65/32 spine active 0 102 1 Site2_Leaf2 FDO24260FCH 10.0.72.66/32 leaf active 0 1101 1 Site2_Leaf1 FDO24260ECW 10.0.72.64/32 leaf active 0

Sito2_Tratto

Site2_Spine# vsh

Site2_Spine# show bgp vpnv4 unicast 91.0.0.1 vrf overlay-1

BGP routing table information for VRF overlay-1, address family VPNv4 Unicast                             <---------26bits--------->

Route Distinguisher: 1101:2686978                                               <<<<<2686978 <--Binary--> 00001010010000000000000010

BGP routing table entry for 91.0.0.1/32, version 717 dest ptr 0xae643d0c

Paths: (1 available, best #1)

Flags: (0x000002 00000000) on xmit-list, is not in urib, is not in HW

Multipath: eBGP iBGP

Advertised path-id 1

Path type: internal 0x40000018 0x800040 ref 0 adv path ref 1, path is valid, is best path

AS-Path: NONE, path sourced internal to AS

10.0.72.64 (metric 2) from 10.0.72.64 (10.0.72.64)  <<< Site2_leaf1 IP

Origin incomplete, MED 2, localpref 100, weight 0

Received label 0

Received path-id 1

Extcommunity:

RT:65001:2686978

COST:pre-bestpath:168:3221225472

VNID:2686978

COST:pre-bestpath:162:110

Path-id 1 advertised to peers:

192.168.10.13                            <<<< Site1_Spine mscp-etep IP.

Site1_Spine# show ip interface vrf overlay-1

<snip...>

lo12, Interface status: protocol-up/link-up/admin-up, iod: 89, mode: mscp-etep

IP address: 192.168.10.13, IP subnet: 192.168.10.13/32                         <<

IP broadcast address: 255.255.255.255 IP primary address route-preference: 0, tag: 0

<snip...>

Sito1_Dorso

Site1_Spine# vsh

Site1_Spine# show bgp vpnv4 unicast 91.0.0.1 vrf overlay-1

BGP routing table information for VRF overlay-1, address family VPNv4 Unicast                                <---------26Bits-------->

Route Distinguisher: 1101:36241410                                                  <<<<<36241410<--binary-->10001010010000000000000010

BGP routing table entry for 91.0.0.1/32, version 533 dest ptr 0xae643dd4

Paths: (1 available, best #1)

Flags: (0x000002 00000000) on xmit-list, is not in urib, is not in HW

Multipath: eBGP iBGP

Advertised path-id 1

Path type: internal 0x40000018 0x880000 ref 0 adv path ref 1, path is valid, is best path, remote site path

AS-Path: NONE, path sourced internal to AS

192.168.100.225 (metric 20) from 192.168.11.13 (192.168.11.13)  <<< Site2_Leaf1 ETEP IP learn via Site2_Spine mcsp-etep address.

Origin incomplete, MED 2, localpref 100, weight 0

Received label 0

Extcommunity:

RT:65001:36241410

SOO:65001:50331631

COST:pre-bestpath:166:2684354560

COST:pre-bestpath:168:3221225472

VNID:2686978

COST:pre-bestpath:162:110

Originator: 10.0.72.64 Cluster list: 192.168.11.13 <<< Originator Site2_Leaf1 and Site2_Spine ips are listed here...

Path-id 1 advertised to peers:

10.0.80.64                         <<<< Site1_Leaf1 ip

Site2_Spine# show ip interface vrf overlay-1

<snip..>

lo13, Interface status: protocol-up/link-up/admin-up, iod: 92, mode: mscp-etep

IP address: 192.168.11.13, IP subnet: 192.168.11.13/32

IP broadcast address: 255.255.255.255

IP primary address route-preference: 0, tag: 0

<snip..>

Site-B

apic1# acidiag fnvread

ID   Pod ID                 Name    Serial Number         IP Address    Role        State   LastUpdMsgId

--------------------------------------------------------------------------------------------------------------

101        1          Site2_Spine      FDO243207JH      10.0.72.65/32   spine         active   0

102        1          Site2_Leaf2      FDO24260FCH      10.0.72.66/32    leaf         active   0

1101        1          Site2_Leaf1      FDO24260ECW      10.0.72.64/32    leaf         active   0

Verificare il contrassegno tra siti.

Site1_Spine# moquery -c bgpPeer -f 'bgp.Peer.addr*"192.168.11.13"'

Total Objects shown: 1

# bgp.Peer

addr             : 192.168.11.13/32

activePfxPeers   : 0

adminSt          : enabled

asn              : 65001

bgpCfgFailedBmp  :

bgpCfgFailedTs   : 00:00:00:00.000

bgpCfgState      : 0

childAction      :

ctrl             :

curPfxPeers      : 0

dn               : sys/bgp/inst/dom-overlay-1/peer-[192.168.11.13/32]

lcOwn            : local

maxCurPeers      : 0

maxPfxPeers      : 0

modTs            : 2021-09-13T11:58:26.395+00:00

monPolDn         :

name             :

passwdSet        : disabled

password         :

peerRole         : msite-speaker

privateASctrl    :

rn               : peer-[192.168.11.13/32] <<

srcIf : lo12 status : totalPfxPeers : 0 ttl : 16 type : inter-site

<<

Informazioni sulla voce Distinguitore route

Quando è impostato il flag tra siti, la direttrice del sito locale può impostare l'ID del sito locale nella destinazione della route a partire dal 25° bit. Quando Site1 ottiene il percorso BGP con questo bit impostato nell'RT, sa che si tratta di un percorso di sito remoto.

Site2_Leaf1# vsh

Site2_Leaf1# show bgp vpnv4 unicast 91.0.0.1 vrf TN_D:VRF_Stretch

BGP routing table information for VRF overlay-1, address family VPNv4 Unicast                                 <---------26Bits-------->

Route Distinguisher: 1101:2686978    (VRF TN_D:VRF_Stretch)                         <<<<<2686978 <--Binary--> 00001010010000000000000010

BGP routing table entry for 91.0.0.1/32, version 12 dest ptr 0xae6da350

Site1_Spine# vsh

Site1_Spine# show bgp vpnv4 unicast 91.0.0.1 vrf overlay-1

<---------26Bits-------->

Route Distinguisher: 1101:36241410                                                  <<<<<36241410<--binary-->10001010010000000000000010

^^---26th bit set to 1 and with 25th bit value it become 10.

Si noti che il valore binario RT è esattamente lo stesso per Site1, ad eccezione del 26° bit impostato su 1. Ha un valore decimale (contrassegnato come blu). 1101:36241410 è ciò che ci si può aspettare di vedere nel Sito1 e ciò che la foglia interna nel Sito1 deve essere importata.

Sito1_Foglia1

Site1_Leaf1# show vrf TN_D:VRF_Stretch detail

VRF-Name: TN_D:VRF_Stretch, VRF-ID: 46, State: Up

VPNID: unknown

RD: 1101:2850817

Max Routes: 0 Mid-Threshold: 0

Table-ID: 0x8000002e, AF: IPv6, Fwd-ID: 0x8000002e, State: Up

Table-ID: 0x0000002e, AF: IPv4, Fwd-ID: 0x0000002e, State: Up

Site1_Leaf1# show bgp vpnv4 unicast 91.0.0.1 vrf overlay-1

BGP routing table information for VRF overlay-1, address family VPNv4 Unicast

Route Distinguisher: 1101:2850817    (VRF TN_D:VRF_Stretch)

BGP routing table entry for 91.0.0.1/32, version 17 dest ptr 0xadeda550

Paths: (1 available, best #1)

Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW

vpn: version 357, (0x100002) on xmit-list

Multipath: eBGP iBGP

Advertised path-id 1, VPN AF advertised path-id 1

Path type: internal 0xc0000018 0x80040 ref 56506 adv path ref 2, path is valid, is best path, remote site path

Imported from 1101:36241410:91.0.0.1/32

AS-Path: NONE, path sourced internal to AS

192.168.100.225 (metric 64) from 10.0.80.65 (192.168.10.13)

Origin incomplete, MED 2, localpref 100, weight 0

Received label 0

Received path-id 1

Extcommunity:

RT:65001:36241410

SOO:65001:50331631

COST:pre-bestpath:166:2684354560

COST:pre-bestpath:168:3221225472

VNID:2686978

COST:pre-bestpath:162:110

Originator: 10.0.72.64 Cluster list: 192.168.10.13192.168.11.13             <<<< '10.0.72.64'='Site2_Leaf1' , '192.168.10.13'='Site1_Spine' , '192.168.11.13'='Site2_Spine'

VRF advertise information:

Path-id 1 not advertised to any peer

VPN AF advertise information:

Path-id 1 not advertised to any peer

<snip..>

Site1_Leaf1# show bgp vpnv4 unicast 91.0.0.1 vrf TN_D:VRF_Stretch

BGP routing table information for VRF overlay-1, address family VPNv4 Unicast

Route Distinguisher: 1101:2850817    (VRF TN_D:VRF_Stretch)

BGP routing table entry for 91.0.0.1/32, version 17 dest ptr 0xadeda550

Paths: (1 available, best #1)

Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW

vpn: version 357, (0x100002) on xmit-listMultipath: eBGP iBGP

Advertised path-id 1, VPN AF advertised path-id 1

Path type: internal 0xc0000018 0x80040 ref 56506 adv path ref 2, path is valid, is best path, remote site path

Imported from 1101:36241410:91.0.0.1/32

AS-Path: NONE, path sourced internal to AS

192.168.100.225 (metric 64) from 10.0.80.65 (192.168.10.13)

Origin incomplete, MED 2, localpref 100, weight 0

Received label 0

Received path-id 1

Extcommunity:

RT:65001:36241410

SOO:65001:50331631

COST:pre-bestpath:166:2684354560

COST:pre-bestpath:168:3221225472

VNID:2686978

COST:pre-bestpath:162:110

Originator: 10.0.72.64 Cluster list: 192.168.10.13 192.168.11.13

VRF advertise information:

Path-id 1 not advertised to any peer

VPN AF advertise information:

Path-id 1 not advertised to any peer

Di conseguenza, "Site1_Leaf1" ha la voce route per la subnet 91.0.0.1/32 con l'indirizzo ETEP "Site2_Leaf1" dell'hop successivo 192.168.100.225.

Site1_Leaf1# show ip route 91.0.0.1 vrf TN_D:VRF_Stretch

IP Route Table for VRF "TN_D:VRF_Stretch"

'*' denotes best ucast next-hop

'**' denotes best mcast next-hop

'[x/y]' denotes [preference/metric]

'%' in via output denotes VRF

91.0.0.1/32, ubest/mbest: 1/0

*via 192.168.100.225%overlay-1, [200/2], 5d23h, bgp-65001, internal, tag 65001   <<<< Note that next hope is External TEP pool (ETEP) ip address of Site-B.

recursive next hop: 192.168.100.225/32%overlay-1

Site-A Spine non aggiunge la route-map verso l'indirizzo IP del router BGP adiacente di "Site2_Spine" mcsp-ETEP.

Se si pensa ai flussi di traffico, quando l'endpoint del Sito A comunica con l'indirizzo IP esterno, il pacchetto può essere incapsulato con l'origine come indirizzo TEP "Site1_Leaf1" e la destinazione è l'indirizzo ETEP dell'indirizzo IP "Site2_Leaf" 192.168.100.225.

Verifica ELAM (Site1_Spine)

Site1_Spine# vsh_lc

module-1# debug platform internal roc elam asic 0

module-1(DBG-elam)# trigger reset

module-1(DBG-elam)# trigger init in-select 14 out-select 1

module-1(DBG-elam-insel14)# set inner ipv4 src_ip 90.0.0.10 dst_ip 91.0.0.1 next-protocol 1

module-1(DBG-elam-insel14)# start

module-1(DBG-elam-insel14)# status

ELAM STATUS

===========

Asic 0 Slice 0 Status Armed

Asic 0 Slice 1 Status Armed

Asic 0 Slice 2 Status Armed

Asic 0 Slice 3 Status Armed

pod2-n9k# ping 91.0.0.1 vrf HOST_A source 90.0.0.10

PING 91.0.0.1 (91.0.0.1) from 90.0.0.10: 56 data bytes

64 bytes from 91.0.0.1: icmp_seq=0 ttl=252 time=1.015 ms

64 bytes from 91.0.0.1: icmp_seq=1 ttl=252 time=0.852 ms

64 bytes from 91.0.0.1: icmp_seq=2 ttl=252 time=0.859 ms

64 bytes from 91.0.0.1: icmp_seq=3 ttl=252 time=0.818 ms

64 bytes from 91.0.0.1: icmp_seq=4 ttl=252 time=0.778 ms

--- 91.0.0.1 ping statistics ---

5 packets transmitted, 5 packets received, 0.00% packet loss

round-trip min/avg/max = 0.778/0.864/1.015 ms

Viene attivato Site1_Spine ELAM. Ereport conferma che il pacchetto si incapsula con un indirizzo TEP dell'indirizzo IP Leaf TEP Sito-A e una destinazione verso l'indirizzo ETEP Site2_Leaf1.

module-1(DBG-elam-insel14)# status

ELAM STATUS

===========

Asic 0 Slice 0 Status Armed

Asic 0 Slice 1 Status Armed

Asic 0 Slice 2 Status Triggered

Asic 0 Slice 3 Status Armed

module-1(DBG-elam-insel14)# ereport

Python available. Continue ELAM decode with LC Pkg

ELAM REPORT

------------------------------------------------------------------------------------------------------------------------------------------------------

Outer L3 Header

------------------------------------------------------------------------------------------------------------------------------------------------------

L3 Type                       : IPv4

DSCP                          : 0

Don't Fragment Bit            : 0x0

TTL                           : 32

IP Protocol Number            : UDP

Destination IP                : 192.168.100.225       <<<'Site2_Leaf1' ETEP address

Source IP                     : 10.0.80.64            <<<'Site1_Leaf1' TEP address

------------------------------------------------------------------------------------------------------------------------------------------------------

Inner L3 Header

------------------------------------------------------------------------------------------------------------------------------------------------------

L3 Type                       : IPv4

DSCP                          : 0

Don't Fragment Bit            : 0x0

TTL                           : 254

IP Protocol Number            : ICMP

Destination IP                : 91.0.0.1

Source IP                     : 90.0.0.10

Site1_Spine Verify Route-Map

Quando il dorso del sito A riceve un pacchetto, può essere reindirizzato all'indirizzo ETEP "Site2_Leaf1" invece di cercare il coop o la voce del percorso. (Quando si dispone di intersite-L3out presso il Sito-B, la direttrice del Sito-A crea una mappa di percorso chiamata "infra-intersite-l3out" per reindirizzare il traffico verso ETEP del Sito2_Leaf1 e uscire da L3out.)

Site1_Spine# show bgp vpnv4 unicast neighbors 192.168.11.13 vrf overlay-1

BGP neighbor is 192.168.11.13,  remote AS 65001, ibgp link,  Peer index 4

BGP version 4, remote router ID 192.168.11.13

BGP state = Established, up for 10w4d

Using loopback12 as update source for this peer

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

Last written 00:00:03, keepalive timer expiry due 00:00:56

Received 109631 messages, 0 notifications, 0 bytes in queue

Sent 109278 messages, 0 notifications, 0 bytes in queue

Connections established 1, dropped 0

Last reset by us never, due to No error

Last reset by peer never, due to No error

Neighbor capabilities:

Dynamic capability: advertised (mp, refresh, gr) received (mp, refresh, gr)

Dynamic capability (old): advertised received

Route refresh capability (new): advertised received

Route refresh capability (old): advertised received

4-Byte AS capability: advertised received

Address family VPNv4 Unicast: advertised received

Address family VPNv6 Unicast: advertised received

Address family L2VPN EVPN: advertised received

Graceful Restart capability: advertised (GR helper) received (GR helper)

Graceful Restart Parameters:

Address families advertised to peer:

Address families received from peer:

Forwarding state preserved by peer for:

Restart time advertised by peer: 0 seconds

Additional Paths capability: advertised received

Additional Paths Capability Parameters:

Send capability advertised to Peer for AF:

L2VPN EVPN

Receive capability advertised to Peer for AF:

L2VPN EVPN

Send capability received from Peer for AF:

L2VPN EVPN

Receive capability received from Peer for AF:

L2VPN EVPN

Additional Paths Capability Parameters for next session:

[E] - Enable [D] - Disable

Send Capability state for AF:

VPNv4 Unicast[E] VPNv6 Unicast[E]

Receive Capability state for AF:

VPNv4 Unicast[E] VPNv6 Unicast[E]

Extended Next Hop Encoding Capability: advertised received

Receive IPv6 next hop encoding Capability for AF:

IPv4 Unicast

Message statistics:

Sent               Rcvd

Opens:                         1                  1

Notifications:                 0                  0

Updates:                    1960               2317

Keepalives:               107108             107088

Route Refresh:               105                123

Capability:                  104                102

Total:                    109278             109631

Total bytes:             2230365            2260031

Bytes in queue:                0                  0

For address family: VPNv4 Unicast

BGP table version 533, neighbor version 533

3 accepted paths consume 360 bytes of memory

3 sent paths

0 denied paths

Community attribute sent to this neighbor

Extended community attribute sent to this neighbor

Third-party Nexthop will not be computed.

Outbound route-map configured is infra-intersite-l3out, handle obtained   <<<< route-map to redirect traffic from Site-A to Site-B 'Site2_Leaf1' L3out

For address family: VPNv6 Unicast

BGP table version 241, neighbor version 241

0 accepted paths consume 0 bytes of memory

0 sent paths

0 denied paths

Community attribute sent to this neighbor

Extended community attribute sent to this neighbor

Third-party Nexthop will not be computed.

Outbound route-map configured is infra-intersite-l3out, handle obtained

<snip...>

Site1_Spine# show route-map infra-intersite-l3out

route-map infra-intersite-l3out, permit, sequence 1

Match clauses:

ip next-hop prefix-lists: IPv4-Node-entry-102

ipv6 next-hop prefix-lists: IPv6-Node-entry-102

Set clauses:

ip next-hop 192.168.200.226

route-map infra-intersite-l3out, permit, sequence 2   <<<< This route-map match if destination IP of packet 'Site1_Spine' TEP address then send to 'Site2_Leaf1' ETEP address.

Match clauses:

ip next-hop prefix-lists: IPv4-Node-entry-1101

ipv6 next-hop prefix-lists: IPv6-Node-entry-1101

Set clauses:

ip next-hop 192.168.200.225

route-map infra-intersite-l3out, deny, sequence 999

Match clauses:

ip next-hop prefix-lists: infra_prefix_local_pteps_inexact

Set clauses:

route-map infra-intersite-l3out, permit, sequence 1000

Match clauses:

Set clauses:

ip next-hop unchanged

Site1_Spine# show ip prefix-list IPv4-Node-entry-1101

ip prefix-list IPv4-Node-entry-1101: 1 entries

seq 1 permit 10.0.80.64/32  <<

Site1_Spine# show ip prefix-list IPv4-Node-entry-102 ip prefix-list IPv4-Node-entry-102: 1 entries seq 1 permit 10.0.80.66/32 Site1_Spine# show ip prefix-list infra_prefix_local_pteps_inexact ip prefix-list infra_prefix_local_pteps_inexact: 1 entries seq 1 permit 10.0.0.0/16 le 32