Logiciels Cisco IOS et NX-OS : Commutation multiprotocole par étiquette (MPLS)

Configurez le MPLS unifié dans le Cisco IOS XR

18 juin 2016 - Traduction automatique
Autres versions: PDFpdf | Anglais (21 avril 2016) | Commentaires

Introduction

Ce document décrit le but du Commutation multiprotocole par étiquette (MPLS) unifié et fournit un exemple de configuration dans le Cisco IOS® XR.

Contribué par Luc De Ghein, ingénieur TAC Cisco.

Conditions préalables

Conditions requises

Aucune spécification déterminée n'est requise pour ce document.

Composants utilisés

Ce document est spécifique au Cisco IOS XR, mais il n'est pas limité à une version logicielle ou à un matériel spécifique.

Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est opérationnel, assurez-vous que vous comprenez l'effet potentiel de toute commande.

Informations générales

Le but du MPLS unifié est tout au sujet de l'évolution. Afin de mesurer un réseau MPLS, où il y a différents types des Plateformes et de services dans les parties du réseau, il semble raisonnable de couper le réseau en différentes zones. Une conception typique introduit une hiérarchie qui a un noyau au centre avec l'agrégation du côté. Afin de mesurer, là peut être différents protocoles d'Interior Gateway (IGP) au centre contre l'agrégation. Afin de mesurer, vous ne pouvez pas distribuer les préfixes d'IGP d'un IGP dans l'autre. Si vous ne distribuez pas les préfixes d'IGP d'un IGP dans l'autre IGP, les chemins Étiquette-commutés de bout en bout (LSP) ne sont pas possibles.

Afin de fournir les services MPLS de bout en bout, vous avez besoin du LSP pour être de bout en bout. Le but est de garder les services MPLS (L2VPN MPLS VPN, MPLS) car ils sont, mais d'introduire la meilleure évolutivité. Afin de faire ceci, entrez certains des préfixes d'IGP dans le Protocole BGP (Border Gateway Protocol) (les préfixes de bouclage des Routeurs de Provider Edge (PE)), qui distribuent alors les préfixes de bout en bout.

Configurez

Remarque: Utilisez l'Outil de recherche de commande (clients enregistrés seulement) pour obtenir plus d'informations sur les commandes utilisées dans cette section.

Diagramme du réseau

La figure 1 affiche un réseau avec trois zones différentes : un noyau et deux zones d'agrégation du côté. Chaque zone exécute son propre IGP, sans la redistribution entre eux sur le routeur de cadre de zone (ABR). L'utilisation du BGP est nécessaire afin de fournir un MPLS de bout en bout LSP. Le BGP annonce les bouclages des Routeurs de PE avec une étiquette à travers le domaine entier, et fournit un LSP de bout en bout. Le BGP est déployé entre le siège potentiel d'explosion et les abr avec RFC 3107 (Unicast étiqueté par BGP), ainsi il signifie que le BGP envoie le préfixe d'ipv4 + l'étiquette (identifiant de famille d'adresse (AFI) 1 et identifiant ultérieur de famille d'adresse (SAFI) 4).

Figure 1

Puisque les pièces de noyau et d'agrégation du réseau sont intégrées et des LSP de bout en bout sont fournis, la solution unifiée MPLS désigné également sous le nom « du MPLS sans couture. »

De nouvelles Technologies ou protocoles ne sont pas utilisés ici, seulement MPLS, protocole de distribution d'étiquette (LDP), IGP, et BGP. Puisque vous ne voulez pas distribuer les préfixes de bouclage des Routeurs de PE d'une part du réseau dans une autre partie, vous devez porter les préfixes dans le BGP. L'Internal Border Gateway Protocol (iBGP) est utilisé dans un réseau, ainsi l'adresse du prochain saut des préfixes est les préfixes de bouclage des Routeurs de PE, qui n'est pas connue par l'IGP dans les autres parties du réseau. Ceci signifie que l'adresse du prochain saut ne peut pas être utilisée au recurse à un préfixe d'IGP. L'astuce est d'inciter les Routeurs d'ABR à conduire les réflecteurs (rr) et à placer le prochain saut à l'individu, même pour les préfixes reflétés d'iBGP.

Seulement le logiciel du besoin de RRs pour prendre en charge cette architecture. Puisque le RRs annoncent les préfixes BGP avec le prochain saut réglé à eux-mêmes, ils assignent des mpls label locaux aux préfixes BGP. Ceci signifie que dans le plan de données, les paquets expédiés sur ces LSP de bout en bout ont des mpls label supplémentaires dans la pile d'étiquette. Le RRs sont dans le chemin de transfert.

Remarque: Au-dessus de cette architecture, n'importe quel service MPLS est fourni. Par exemple, le service MPLS VPN ou le L2VPN MPLS est fourni entre les Routeurs de PE. La différence dans le plan de données pour ces paquets est qu'ils ont maintenant trois étiquettes dans la pile d'étiquette, tandis qu'ils ont eu deux étiquettes dans la pile d'étiquette quand le MPLS unifié n'a pas été utilisé.

Il y a deux scénarios possibles :

  • L'ABR ne place pas le prochain saut à l'individu pour les préfixes annoncés (reflété par BGP) par l'ABR dans la pièce d'agrégation du réseau. Pour cette raison, l'ABR doit redistribuer les préfixes de bouclage des abr du principal IGP dans l'IGP d'agrégation. Si ceci est fait, il reste évolutivité. Seulement les préfixes de bouclage d'ABR (du noyau) doivent être annoncés dans la pièce d'agrégation, pas les préfixes de bouclage des Routeurs de PE des pièces distantes d'agrégation.
  • L'ABR place le prochain saut à l'individu pour les préfixes annoncés (reflété par BGP) par l'ABR dans la cloison d'agrégation pour cette raison, l'ABR n'a pas besoin de redistribuer les préfixes de bouclage des abr du principal IGP dans l'IGP d'agrégation.

Dans les deux scénarios, l'ABR place le prochain saut à l'individu pour les préfixes annoncés (reflété par BGP) par l'ABR de la pièce d'agrégation du réseau dans la cloison de noyau. Si ceci n'est pas fait, l'ABR doit redistribuer les préfixes de bouclage du siège potentiel d'explosion de l'IGP d'agrégation dans le principal IGP. Si ceci est fait, il n'y a aucune évolutivité.

Afin de placer le prochain saut à l'individu pour les artères reflétées d'Unicast étiquetées par iBGP, vous devez configurer le langage de stratégie d'artère (RPL) sur les abr.

Ces solutions ne fonctionnent pas afin d'activer RFC 3107 dans le Cisco IOS XR :

  • le next-hop-self ne travaille pas.

    Exemple :

    router bgp 1
     neighbor 10.100.1.1
      remote-as 1
      update-source Loopback0
      address-family ipv4 labeled-unicast
       route-reflector-client
        next-hop-self
      !
  • RPL avec l'individu de set next-hop ne fonctionne pas.

    Exemple :

    router bgp 1
     neighbor 10.100.1.1
      remote-as 1
      update-source Loopback0
      address-family ipv4 labeled-unicast
       route-reflector-client
       route-policy nhs-ibgp-3107 out
       !

    route-policy nhs-ibgp-3107
      set next-hop self
    end-policy
  • la pair-adresse de set next-hop n'est pas un opérateur valide pour le point d'attache.

    Exemple :

    route-policy nhs-ibgp-3107-peer
      set next-hop peer-address
    end-policy

    router bgp 1
     neighbor 10.100.1.1
      address-family ipv4 labeled-unicast
       route-policy nhs-ibgp-3107-peer out

    !!% Could not find entry in list: Policy [nhs-ibgp-3107-peer]
    uses 'set-to-peer-address next-hop'. 'set' is not a valid
    operator for the 'next-hop' attribute at the bgp neighbor-out-dflt attach point.
      !
     !
    !
    end

La seule solution qui fonctionne est de placer l'adresse du prochain saut à une adresse IP valide, d'avoir le prochain saut-individu, et d'avoir des imposer-modifications de stratégie d'ibgp.

Exemple :

router bgp 1
 ibgp policy out enforce-modifications
!
neighbor 10.100.1.1
  remote-as 1
  update-source Loopback0
  address-family ipv4 labeled-unicast
   route-reflector-client
   route-policy nhs-ibgp-3107 out
   next-hop-self
  !
 !
!

route-policy nhs-ibgp-3107
  set next-hop 10.100.1.3
end-policy

Configuration sur PE1

hostname PE1
!
vrf one     <<< MPLS service is MPLS VPN
 address-family ipv4 unicast
  import route-target
   1:1
  !
  export route-target
   1:1
  !
 !
 address-family ipv6 unicast
  import route-target
   1:1
  !
  export route-target
   1:1
  !
 !
interface Loopback0
 ipv4 address 10.100.1.1 255.255.255.255
!
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.1.1 255.255.255.0
!
!
interface GigabitEthernet0/0/0/1   <<< VRF interface to CE1
 vrf one
 ipv4 address 10.9.1.3 255.255.255.0
!
!
router ospf 1
 router-id 10.100.1.1
 area 0
  interface Loopback0
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
 !
!
router bgp 1
 address-family ipv4 unicast
  network 10.100.1.1/32    <<< advertise PE loopback in BGP
  allocate-label all
 !
 address-family vpnv4 unicast
 !
 neighbor 10.100.1.3
  remote-as 1
  update-source Loopback0
  address-family ipv4 labeled-unicast
  !
 !
 neighbor 10.100.1.7     <<< vpnv4 iBGP session to PE2
  remote-as 1
  update-source Loopback0
  address-family vpnv4 unicast
  !
 !
 vrf one
  rd 1:1
  address-family ipv4 unicast
  !
  neighbor 10.9.1.2    <<< eBGP session to CE1
   remote-as 65001
   address-family ipv4 unicast
    route-policy pass in
    route-policy pass out
   !
  !
 !
!
mpls ldp
 mldp
  logging notifications
  address-family ipv4
  !
 !
 router-id 10.100.1.1
 address-family ipv4
 !
 interface GigabitEthernet0/0/0/0
  address-family ipv4
  !
 !
!

Configuration sur ABR1

hostname ABR1
!
interface Loopback0
 ipv4 address 10.100.1.3 255.255.255.255
!
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.3.3 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.1.2.3 255.255.255.0
!
route-policy nhs-ibgp-3107
  set next-hop 10.100.1.3    <<< set next hop to loopback
end-policy
!
route-policy connected-into-ospf2
  if destination in (10.100.1.3/32) then
    pass
  endif
end-policy
!
router ospf 1
 router-id 10.100.1.3
 area 0
  interface Loopback0
  !
  interface GigabitEthernet0/0/0/1
   network point-to-point
  !
 !
!
router ospf 2
 redistribute connected route-policy connected-into-ospf2
 area 0
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
 !
!
router bgp 1
 ibgp policy out enforce-modifications
 address-family ipv4 unicast
  allocate-label all
 !
 neighbor 10.100.1.1     <<< iBGP neighbor PE1
  remote-as 1
  update-source Loopback0
  address-family ipv4 labeled-unicast
   route-reflector-client
   route-policy nhs-ibgp-3107 out
   next-hop-self
  !
 !
 neighbor 10.100.1.5      <<< iBGP neighbor ABR2
  remote-as 1
  update-source Loopback0
  address-family ipv4 labeled-unicast
   route-policy nhs-ibgp-3107 out
   next-hop-self
  !
 !
!
mpls ldp
 mldp
  address-family ipv4
  !
 !
 router-id 10.100.1.3
 interface GigabitEthernet0/0/0/0
  address-family ipv4
   discovery transport-address interface
  !
 !
 interface GigabitEthernet0/0/0/1
  address-family ipv4
  !
 !

Remarque: l'allocate-label toutes ou l'artère-stratégie d'allocate-label est nécessaire. Autrement les artères étiquetées d'unicast n'ont pas une étiquette locale dont elles ont besoin puisque l'ABR est le prochain-saut pour les artères reflétées par iBGP.

Remarque: Redistribution du principal IGP (OSPF 2) dans l'IGP d'agrégation (OSPF 1 ou OSPF 3) ou n'est pas exécuté vice-versa. Cependant, le préfixe de bouclage du rr doit être connu dans l'IGP d'agrégation également, de sorte que le BGP sur le routeur PE puisse scruter avec le bouclage de l'ABR/RR. Pour ceci, la redistribution des routes connectées dans l'IGP d'agrégation est exécutée avec RPL. Les routes connectées redistribuées sont limitées au préfixe de bouclage de l'ABR avec RPL.

Vérifiez

L'Output Interpreter Tool (clients enregistrés seulement) prend en charge certaines commandes show. Utilisez l'Output Interpreter Tool afin de visualiser une analyse de sortie de commande show.

Voir la figure 2 afin de vérifier l'exécution d'avion de contrôle :

Figure 2

Voir la figure 3 afin de vérifier les annonces de mpls label :

Figure 3

Voir la figure 4 le vérifier le transfert de paquet :

Figure 4

C'est comment des paquets sont expédiés de PE1 à PE2. Le préfixe de bouclage de PE2 est 10.100.1.7/32, de sorte que le préfixe soit d'intérêt.

RP/0/0/CPU0:PE1#traceroute                                  
Protocol [ipv4]:
Target IP address: 10.100.1.7
Source address: 10.100.1.1
Numeric display? [no]:
Timeout in seconds [3]:
Probe count [3]:
Minimum Time to Live [1]:
Maximum Time to Live [30]:
Port Number [33434]:
Loose, Strict, Record, Timestamp, Verbose[none]:

Type escape sequence to abort.
Tracing the route to 10.100.1.7

 1  10.1.1.2 [MPLS: Labels 24000/24005 Exp 0] 439 msec  119 msec  109 msec
 2  10.1.2.3 [MPLS: Label 24005 Exp 0] 109 msec  109 msec  109 msec
 3  10.1.3.4 [MPLS: Labels 24001/24003 Exp 0] 99 msec  99 msec  149 msec
 4  10.1.4.5 [MPLS: Label 24003 Exp 0] 119 msec  119 msec  99 msec
 5  10.1.5.6 [MPLS: Label 24001 Exp 0] 109 msec  139 msec  99 msec
 6  10.1.6.7 109 msec  *  109 msec

L'étiquette 24000 est l'étiquette LDP apprise de P2 pour le préfixe 10.100.1.3/32. L'étiquette 24005 est l'étiquette RFC 3107 BGP apprise pour le préfixe 10.100.1.7/32.

RP/0/0/CPU0:PE1#show route 10.100.1.7/32

Routing entry for 10.100.1.7/32
  Known via "bgp 1", distance 200, metric 0, [ei]-bgp, type internal
  BIER rid=0x0, flags=0x0, count=0
  Installed May 27 02:52:07.184 for 00:08:52
  Routing Descriptor Blocks
    10.100.1.3, from 10.100.1.3 <<< next-hop is ABR1
      Route metric is 0
  No advertising protos.
RP/0/0/CPU0:PE1#show cef 10.100.1.7/32  
10.100.1.7/32, version 89, internal 0x1000001 0x0 (ptr 0xa1470f74)
[1], 0x0 (0xa1456614), 0xa08 (0xa16181e0)
 Updated May 27 02:52:07.203
 Prefix Len 32, traffic index 0, precedence n/a, priority 4
   via 10.100.1.3, 3 dependencies, recursive [flags 0x6000]
    path-idx 0 NHID 0x0 [0xa16806f4 0x0]
    recursion-via-/32
    next hop 10.100.1.3 via 24001/0/21
     local label 24003
     next hop 10.1.1.2/32 Gi0/0/0/0    labels imposed {24000 24005}
RP/0/0/CPU0:PE1#show bgp ipv4 unicast labels 
BGP router identifier 10.100.1.1, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000   RD version: 44
BGP main routing table version 44
BGP NSR Initial initsync version 2 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop        Rcvd Label      Local Label
*> 10.100.1.1/32      0.0.0.0         nolabel         3               
*>i10.100.1.7/32      10.100.1.3      24005           24003           

Processed 2 prefixes, 2 paths

Il y a pénultième-saut sautant (PHP) vers ABR1.

RP/0/0/CPU0:P2#show mpls forwarding labels 24000
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
Label  Label       or ID              Interface                    Switched    
------ ----------- ------------------ ------------ --------------- ------------
24000  Pop         10.100.1.3/32      Gi0/0/0/1    10.1.2.3        694765      

L'étiquette 24005 est permutée avec l'étiquette 24003 sur ABR1.

RP/0/0/CPU0:ABR1#show bgp ipv4 unicast labels 
BGP router identifier 10.100.1.3, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000   RD version: 60
BGP main routing table version 60
BGP NSR Initial initsync version 2 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop        Rcvd Label      Local Label
*>i10.100.1.1/32      10.100.1.1      3               24003           
*>i10.100.1.7/32      10.100.1.5      24003           24005           

Processed 2 prefixes, 2 paths
RP/0/0/CPU0:ABR1#show mpls forwarding labels 24005
Wed May 27 04:08:24.255 UTC
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
Label  Label       or ID              Interface                    Switched    
------ ----------- ------------------ ------------ --------------- ------------
24005  24003       10.100.1.7/32                   10.100.1.5      6347        

Il y a des PHP de P1 à ABR2.

RP/0/0/CPU0:P1#show mpls forwarding labels 24001
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
Label  Label       or ID              Interface                    Switched    
------ ----------- ------------------ ------------ --------------- ------------
24001  Pop         10.100.1.5/32      Gi0/0/0/1    10.1.4.5        348835      

L'étiquette BGP pour le receivd de l'artère 10.100.1.7/32 RFC 3107 par ABR2 de PE2 est 3. C'est l'étiquette nulle implicite qui indique le PHP.

RP/0/0/CPU0:ABR2#show bgp ipv4 unicast labels 
BGP router identifier 10.100.1.5, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000   RD version: 47
BGP main routing table version 47
BGP NSR Initial initsync version 2 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop        Rcvd Label      Local Label
*>i10.100.1.1/32      10.100.1.3      24003           24005           
*>i10.100.1.7/32      10.100.1.7      3               24003           

Processed 2 prefixes, 2 paths

L'étiquette 24003 est permutée avec l'étiquette 24001 sur ABR2.

RP/0/0/CPU0:ABR2#show mpls forwarding labels 24003
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
Label  Label       or ID              Interface                    Switched    
------ ----------- ------------------ ------------ --------------- ------------
24003  24001       10.100.1.7/32      Gi0/0/0/0    10.1.5.6        403676      

Il y a des PHP de P3 à PE2.

RP/0/0/CPU0:P3#show mpls forwarding labels 24001
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes       
Label  Label       or ID              Interface                    Switched    
------ ----------- ------------------ ------------ --------------- ------------
24001  Pop         10.100.1.7/32      Gi0/0/0/1    10.1.6.7        685191      
RP/0/0/CPU0:PE2#show bgp ipv4 unicast labels 
BGP router identifier 10.100.1.7, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000   RD version: 42
BGP main routing table version 42
BGP NSR Initial initsync version 2 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop        Rcvd Label      Local Label
*>i10.100.1.1/32      10.100.1.5      24005           24004           
*> 10.100.1.7/32      0.0.0.0         nolabel                       

Processed 2 prefixes, 2 paths

Dépannez

Il n'existe actuellement aucune information de dépannage spécifique pour cette configuration.

Informations connexes


Conversations connexes de la communauté de soutien de Cisco

Le site Cisco Support Community est un forum où vous pouvez poser des questions, répondre à des questions, faire part de suggestions et collaborer avec vos pairs.


Document ID: 119191