vendredi 22 avril 2016

Projet : configuration du Cloud

Le Cloud MPLS


Comme indiquer en intro, notre Cloud va supporter MPLS et pas mal d'autre protocoles.
Le soucis avec MPLS (en tous cas le mien) est que tout seul, ça ne fait pas grand chose. Dans ce projet, MPLS sera couplé à MP-BGP (transit des rd), LDP (pour les indicatifs) et OSPF.

Comme précisé plus haut ma configuration sera basée sur LDP et non pas sur RSVP (je verrais plus tard pour monter un autre Lab) qui se base lui même sur OSPF.

Quelques notions d'écriture :


P1 et P2 : routeurs du Cloud faisant transiter le trafic en utilisant les Labels MPLS. Très facile a configurer, ils sont complétement transparents par la suite pour MP-BGP

PE1,2... : Provider Edge Router. La majorité de la configuration va se faire sur ces équipements : VRF, MPLS,BGP, ...

A_S_A, ... : Customer Router. Ne participe pas a MPLSet VRF. Le protocole de routage configuré entre CE et PE dans ce lab et EIGRP.



Pour ceux qui veulent découvrir la théorie du complot, j ai trouve un excellent résumé du fonctionnement de MPLS à cette adresse :

http://www.memoireonline.com/03/11/4293/m_Mise-en-oeuvre-dun-coeur-de-reseau-IPMPLS7.html

Si vous voulez plus complet mais en anglais :

http://www.cisco.com/c/en/us/td/docs/ios/12_4t/12_4t2/ftldp41.html



Voici les différents réseaux configurés entre les routeurs :

P1-P2 192.168.1.0/30
P1-PE1 192.168.1.4/30
P2-PE1 192.168.1.8/30
P1-PE2 192.168.1.12/30
P2-PE2 192.168.1.16/30
P1-PE3 192.168.1.20/30
P2-PE3 192.168.1.24/30
P1-PE4 192.168.1.28/30
P2-PE4 192.168.1.32/30

De plus on configure une interface de loopback sur chaque équipement
P1 : 1.1.1.1
P2 : 2.2.2.2
PE1 : 10.10.10.10
PE2 : 20.20.20.20
PE3 : 30.30.30.30
PE4 : 40.40.40.40

Ces valeurs seront les router_id des différents protocoles de routage. Elles ont été choisi de façon arbitraire et non pas de manière à privilégier tel ou tel é&équipement dans une fonction de DR.

Mise en place de l' IGP

Une petite aire 0 et hop, OSPF est configuré entre les différents PE et P. Oui bon, c'est un peu plus long car il y a pas mal d'interfaces à configurer ....

Voici la configuration de PE2 :

router ospf 10
 network 20.20.20.20 0.0.0.0 area 0
 network 192.168.1.0 0.0.0.255 area 0


Oui, la loopback est routée et vous verrez pourquoi un peu plus loin !

MPLS


On va vérifier que ip cef est bien actif sur chaque routeur via la commande ip cef. On prend aussi le temps de configurer ipv6 cef et ipv6 unicast routing sur les PE.

On va activer la prise en charge de MPLS via LDP grâce a la commande mpls label protocol ldp. On active dans un même temps la remontée de log via mpls ldp logging neighbors-change

On configure les interfaces participant à MPLS via la commande mpls ip
L'interface connectant le client ne participe PAS a MPLS, uniquement les liaisons intra backbone sont à configurer de la sorte.

Pour les accros a la sécurité il est possible de paramétrer un mot de passe pour le protocole LDP (mais non réalisé ici)

PE2 :


no ip domain lookup
ipv6 unicast-routing
ipv6 cef
!
multilink bundle-name authenticated
mpls label protocol ldp
!

crypto pki token default removal timeout 0
!
!
interface Loopback20
 ip address 20.20.20.20 255.255.255.255
 ipv6 enable
!
interface FastEthernet0/0
 description Vers_P1
 ip address 192.168.1.14 255.255.255.252
 duplex auto
 speed auto
 mpls ip



Nos voisins LDP sont ainsi découverts :


PE2#show mpls ldp discovery
 Local LDP Identifier:
    192.168.1.18:0
    Discovery Sources:
    Interfaces:
        FastEthernet0/0 (ldp): xmit/recv
            LDP Id: 192.168.1.13:0; no host route
        FastEthernet1/0 (ldp): xmit/recv
            LDP Id: 192.168.1.33:0; no host route




 !! Bon j'ai mal configuré PE2 .... le LDP identifier devrait être la loopback 20 !!! Cela vient du fait de l'oublie de la commande mpls ldp router-id loopback 20

Après rectification et un clear mpls ldp nei *, on arrive sur :

 Local LDP Identifier:
    20.20.20.20:0
    Discovery Sources:
    Interfaces:
        FastEthernet0/0 (ldp): xmit/recv
            LDP Id: 1.1.1.1:0
        FastEthernet1/0 (ldp): xmit/recv
            LDP Id: 2.2.2.2:0


PE2#sh mpls ldp nei
    Peer LDP Ident: 1.1.1.1:0; Local LDP Ident 20.20.20.20:0
        TCP connection: 1.1.1.1.646 - 20.20.20.20.40235
        State: Oper; Msgs sent/rcvd: 29/28; Downstream
        Up time: 00:10:36
        LDP discovery sources:
          FastEthernet0/0, Src IP addr: 192.168.1.13
        Addresses bound to peer LDP Ident:
          192.168.1.13    1.1.1.1         192.168.1.5     192.168.1.1
          192.168.1.21    192.168.1.29
    Peer LDP Ident: 2.2.2.2:0; Local LDP Ident 20.20.20.20:0
        TCP connection: 2.2.2.2.646 - 20.20.20.20.62785
        State: Oper; Msgs sent/rcvd: 18/17; Downstream
        Up time: 00:01:21
        LDP discovery sources:
          FastEthernet1/0, Src IP addr: 192.168.1.17
        Addresses bound to peer LDP Ident:
          192.168.1.25    2.2.2.2         192.168.1.9     192.168.1.33
          192.168.1.17    192.168.1.2


Ainsi que les différents labels :



PE2#sh mpls ldp bin
  lib entry: 1.1.1.1/32, rev 28
        local binding:  label: 16
        remote binding: lsr: 1.1.1.1:0, label: imp-null
        remote binding: lsr: 2.2.2.2:0, label: 20
  lib entry: 2.2.2.2/32, rev 30
        local binding:  label: 17
        remote binding: lsr: 1.1.1.1:0, label: 16
        remote binding: lsr: 2.2.2.2:0, label: imp-null
  lib entry: 20.20.20.20/32, rev 6
        local binding:  label: imp-null
        remote binding: lsr: 1.1.1.1:0, label: 20
        remote binding: lsr: 2.2.2.2:0, label: 19
  lib entry: 30.30.30.30/32, rev 12
        local binding:  label: 19
        remote binding: lsr: 1.1.1.1:0, label: 19
        remote binding: lsr: 2.2.2.2:0, label: 18
  lib entry: 40.40.40.40/32, rev 10
        local binding:  label: 18
        remote binding: lsr: 1.1.1.1:0, label: 18
        remote binding: lsr: 2.2.2.2:0, label: 17
  lib entry: 192.168.1.0/30, rev 24
        local binding:  label: 25
        remote binding: lsr: 1.1.1.1:0, label: imp-null
        remote binding: lsr: 2.2.2.2:0, label: imp-null
  lib entry: 192.168.1.4/30, rev 22
        local binding:  label: 24
        remote binding: lsr: 1.1.1.1:0, label: imp-null
        remote binding: lsr: 2.2.2.2:0, label: 22


 .........

On peut voir le label affecté par l'LSR local, le numéro de révision et les labels des deux LSR distants. Le fait d'avoir configuré une interface loopback par élément actif facilite la lecture des entrées.


Première phase terminée, c’était loin d être la plus difficile. On s attaque maintenant à la définition des VRF sur nos routeurs PE.



Architecture GNS3/Concepts généraux
Mise en place du Cloud MPLS
VRF
Routage, IPV6 et addess-familly
Mise en Place de MP-BGP
Les trucs qui fâchent

Aucun commentaire:

Enregistrer un commentaire