La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritto il comando disable-peer-as-check nel Border Gateway Protocol (BGP) sulla famiglia di switch Cisco Nexus con sistema operativo NX-OS.
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
Il documento può essere consultato per tutte le versioni software o hardware.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.
Quando un prefisso di rete viene annunciato a un peer eBGP, il relativo sistema autonomo (AS) viene sempre anteposto per ultimo all'elenco degli attributi AS_PATH di BGP.
Per impostazione predefinita, gli switch Cisco Nexus basati su NX-OS non annunciano i prefissi di rete ai peer eBGP il cui nome è già presente per ultimo nell'attributo AS_PATH del prefisso di rete del BGP.
Questo comportamento è diverso da quello dei router e degli switch basati su Cisco IOS® (e Cisco IOS®-XE) in cui i prefissi di rete vengono ancora annunciati ai peer eBGP, anche se il SA del peer è già presente nell'attributo AS_PATH del prefisso di rete.
In questo caso, il meccanismo di prevenzione del loop BGP scarta il prefisso di rete (per impostazione predefinita) sul peer di ricezione e attiva un messaggio di errore simile a "DENIED to: AS-PATH contiene il proprio AS" solo quando sono abilitati i debug appropriati.
Nota: Per impostazione predefinita, i router basati su Cisco IOS® XR si comportano in modo simile a NX-OS. In Cisco IOS® XR, il comando as-path-loopcheck-out disable può essere usato per modificare questo comportamento.
R1 - Cisco IOS® |
---|
configure terminal ! hostname R1 ! interface Loopback0 ip address 10.255.255.1 255.255.255.255 ! interface GigabitEthernet0/1 ip address 10.1.2.1 255.255.255.0 no shutdown ! router bgp 64512 bgp log-neighbor-changes network 10.255.255.1 mask 255.255.255.255 neighbor 10.1.2.2 remote-as 65535 ! end |
N7K-2 - Nexus NX-OS |
---|
configure terminal ! hostname N7K-2 ! feature bgp ! interface Ethernet2/1 no switchport ip address 10.1.2.2/24 no shutdown interface Ethernet2/2 no switchport ip address 10.2.3.2/24 no shutdown ! router bgp 65535 address-family ipv4 unicast neighbor 10.1.2.1 remote-as 64512 address-family ipv4 unicast neighbor 10.2.3.3 remote-as 64512 address-family ipv4 unicast |
R3 - Cisco IOS® |
---|
configure terminal ! hostname R3 ! interface GigabitEthernet0/1 ip address 10.2.3.3 255.255.255.0 no shutdown ! router bgp 64512 bgp log-neighbor-changes neighbor 10.2.3.2 remote-as 65535 ! end |
Fare riferimento a questa sezione per verificare che la configurazione funzioni correttamente.
L'assenza del comando disable-peer-as-check impedisce a N7K-2, che esegue NX-OS per annunciare il prefisso 10.255.255.1/32 al router R3, in quanto il prefisso AS (64512) di R3 si trova per ultimo nell'attributo AS_PATH.
Nota: il comando disable-peer-as-check è disabilitato per impostazione predefinita nella configurazione. Per abilitare la funzionalità, è necessario aggiungere manualmente il comando.
Quando N7K-2 annuncia il valore da 10.255.255.1/32 a R3, include AS 64512 last nell'attributo AS_PATH.
Lo switch AS 64512 è lo stesso configurato in R3.
N7K-2 - Nexus NX-OS |
---|
N7K-2# show bgp ipv4 unicast BGP routing table information for VRF default, address family IPv4 Unicast BGP table version is 17, local router ID is 10.1.2.2 Status: s-suppressed, x-deleted, S-stale, d-dampened, h-history, *-valid, >-best Path type: i-internal, e-external, c-confed, l-local, a-aggregate, r-redist, I-i njected Origin codes: i - IGP, e - EGP, ? - incomplete, | - multipath, & - backup Network Next Hop Metric LocPrf Weight Path *>e10.255.255.1/32 10.1.2.1 0 0 64512 i N7K-2# |
Notare che su R3, il comando debug bgp ipv4 unicast è stato abilitato.
Per confermare ulteriormente che la route non viene ricevuta, eseguire il comando clear bgp ipv4 unicast * soft per forzare lo scambio di nuova route. Route R3 non riceve la route.
R3 - Cisco IOS® |
---|
R3#debug bgp ipv4 unicast |
Il comando disable-peer-as-check deve essere abilitato sulla rete N7K-2 in modo da poter annunciare il prefisso di rete su R3.
N7K-2 - Nexus NX-OS |
---|
N7K-2# conf t Enter configuration commands, one per line. End with CNTL/Z. N7K-2(config)# router bgp 65535 N7K-2(config-router)# neighbor 10.2.3.3 N7K-2(config-router-neighbor)# address-family ipv4 unicast N7K-2(config-router-neighbor-af)# disable-peer-as-check N7K-2(config-router-neighbor-af)# |
Con la funzione disable-peer-as-check in funzione sulla N7K-2, il percorso viene annunciato alla R3 ma scartato dal meccanismo di prevenzione del loop previsto della BGP.
Osservare "NEGATO a causa di: AS-PATH contains our own AS" viene visualizzato nell'output del comando debug.
R3 - Cisco IOS® |
---|
R3# *Jul 15 19:29:06.440: BGP(0): 10.2.3.2 rcv UPDATE w/ attr: nexthop 10.2.3.2, origin i, originator 0.0.0.0, merged path 65535 64512, AS_PATH , community , extended community , SSA attribute *Jul 15 19:29:06.442: BGPSSA ssacount is 0 *Jul 15 19:29:06.442: BGP(0): 10.2.3.2 rcv UPDATE about 10.255.255.1/32 -- DENIED due to: AS-PATH contains our own AS; R3# |
Nota: Se l'AS di R3 non viene trovato per ultimo nell'attributo AS_PATH, N7K-2 non ha bisogno del comando per annunciare la route.
In questo esempio, un altro AS viene anteposto per ultimo nell'attributo AS_PATH con l'utilizzo dei comandi route-map e set as-path prepend. A questo punto è presente un altro AS prima di R3's AS in AS_PATH.
In AS_PATH è elencato 65300 64512.
N7K-2 - Nexus NX-OS |
---|
configure terminal ! route-map TEST permit 10 set as-path prepend 65300 ! N7K-2# conf t Enter configuration commands, one per line. End with CNTL/Z. N7K-2(config)# router bgp 65535 N7K-2(config-router)# neighbor 10.1.2.1 N7K-2(config-router-neighbor)# address-family ipv4 unicast N7K-2(config-router-neighbor-af)# route-map TEST in N7K-2(config-router-neighbor-af)# N7K-2# N7K-2# show bgp ipv4 unicast BGP routing table information for VRF default, address family IPv4 Unicast BGP table version is 18, local router ID is 10.1.2.2 Status: s-suppressed, x-deleted, S-stale, d-dampened, h-history, *-valid, >-best Path type: i-internal, e-external, c-confed, l-local, a-aggregate, r-redist, I-injected Origin codes: i - IGP, e - EGP, ? - incomplete, | - multipath, & - backup Network Next Hop Metric LocPrf Weight Path *>e10.255.255.1/32 10.1.2.1 0 0 65300 64512 i N7K-2# |
Osservare come N7K-2 ha annunciato la route in questo caso senza la necessità di disabilitare il peer-as-check.
N7K-2 - Nexus NX-OS |
---|
N7K-2# sh run bgp !Command: show running-config bgp !Time: Mon Jul 15 21:28:59 2019 version 7.3(0)D1(1) feature bgp router bgp 65535 address-family ipv4 unicast neighbor 10.1.2.1 remote-as 64512 address-family ipv4 unicast route-map TEST in neighbor 10.2.3.3 remote-as 64512 address-family ipv4 unicast N7K-2# |
Avviso "NEGATO a causa di: AS-PATH contains our own AS" viene visualizzato nell'output di debug su R3.
R3 - Cisco IOS® |
---|
R3#show debug IP routing: BGP debugging is on for address family: IPv4 Unicast BGP updates debugging is on for address family: IPv4 Unicast R3# R3#clear bgp ipv4 unicast * soft R3# *Jul 15 21:33:11.309: BGP: 10.2.3.2 sending REFRESH_REQ(5) for afi/safi: 1/1, refresh code is 0 *Jul 15 21:33:12.312: BGP(0): 10.2.3.2 rcv UPDATE w/ attr: nexthop 10.2.3.2, origin i, originator 0.0.0.0, merged path 65535 65300 64512, AS_PATH , community , extended community , SSA attribute *Jul 15 21:33:12.313: BGPSSA ssacount is 0 *Jul 15 21:33:12.313: BGP(0): 10.2.3.2 rcv UPDATE about 10.255.255.1/32 -- DENIED due to: AS-PATH contains our own AS; R3# |
Le informazioni contenute in questa sezione permettono di risolvere i problemi relativi alla configurazione.
Per confermare la configurazione BGP con il comando disable-peer-as-check su NX-OS, attivare i debug.
debug-filter bgp neighbor <eBGP_NEIGHBOR> debug-filter bgp prefix <ROUTE_TO_BE_ADVERTISED> debug bgp updates debug logfile <FILE_NAME>
Si noti che un messaggio simile a "10.2.3.3 10.255.255.1/32 path-id 1 non è stato inviato al peer a causa di: AS pubblicitario" viene generato quando viene richiesto di inviare nuovamente il percorso.
N7K-2 - Nexus NX-OS |
---|
N7K-2# debug-filter bgp neighbor 10.2.3.3 |
Al termine, disabilitare i debug con questi comandi:
undebug all no debug-filter all clear debug logfile <FILE_NAME>