Exemples de configuration dans un routeur Cisco

From Livre IPv6

Revision as of 17:02, 22 December 2009 by Mcoic (Talk | contribs) (Exemple de configuration multicast IPv6 dans un cœur MPLS)

Déploiement multicast IPv6 sur un routeur Cisco (A COMPLETER)

Contexte

Avec un IOS avancé (de type ipadvance ou ipadventreprise), il est possible d’implémenter une plate-forme de multicast IPv6 avec des routeurs Cisco. Concrètement ceci se résume à dire au routeur de gérer le multicast et à configurer des points de rendez-vous.

Cette page présente également une solution possible pour permettre la diffusion de flux multicast à travers un cœur MPLS en étant compatible avec la technologie 6PE. La principale difficulté de réalisation vient du fait que les PE encapsulent les données dans un label suivant l’adresse de destination du paquet. Il s'agit donc de construire une table de routage multicast annexe. L’inconvénient de la solution est qu’il est nécessaire d’assigner des adresses IPv6 au routeur P pour monter un réseau parallèle au MPLS.

Cette solution utilise des routeurs Cisco avec un IOS 15.0. Il faut au préalable installer un cœur MPLS avec la fonction 6PE avant de lancer la configuration (voir page 6PE ).

Exemple de configuration multicast IPv6 dans un routeur Cisco

Voici les commandes à entrer en mode "configuration globale" :

ipv6 multicast-routing 
ipv6 pim rp-address 2001:4C18:20::1
ipv6 pim register-source Loopback6
ipv6 pim spt-threshold infinity

Lorsque la commande ipv6 multicast-routing est rentrée, le routeur va automatiquement configurer le protocole PIM sur chacune de ses interfaces. Il est possible de changer les valeurs par défaut avec les options "ipv6 pim".

La configuration de RP est nécessaire même si on utilise la technologie Embedded-RP car le routeur va monter les interfaces tunnels virtuels nécessaire pour le transit des paquets multicast. Il est conseillé de prendre les adresses des Loopback pour les points de rendez-vous car ces interfaces sont toujours "UP". Les commandes ci-dessus suffisent pour le cas où le routeur doit jouer le rôle de RP.

Si on utilise les adresses multicast temporaires, on peut utiliser des access-list qui vont choisir le point de rendez-vous suivant l'adresse du flux.

Voici un exemple d'utilisation d'access-list :

ipv6 pim rp-address 2001:4C18:20::1 list1
ipv6 pim rp-address 2001:4C18:20::2 list2
ipv6 access-list list1
 sequence 20 permit ipv6 any FF1E:40:2001:4C18:20:1::/96
ipv6 access-list list2
 sequence 20 permit ipv6 any FF1E:40:2001:4C18:20:2::/96

Pour tester les configurations, on peut voir les messages PIM échangés entre les routeurs grâce à la commande "debug ipv6 pim". Pour quitter ce mode, il suffit de rentrer "no debug ipv6 pim". Pour voir la table de routage multicast, il faut entrer la commande "show ipv6 mroute". Par exemple :

R38-PE-2#show ipv6 mroute
Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group,
      C - Connected, L - Local, I - Received Source Specific Host Report,
      P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set,
      J - Join SPT
Timers: Uptime/Expires
Interface state: Interface, State
(*, FF7E:240:2001:4C18:20:0:FFFF:FFFF), 00:00:58/00:02:35, RP 2001:4C18:20::2, flags: SC
 Incoming interface: Tunnel1
 RPF nbr: 2001:4C18:20::2
 Immediate Outgoing interface list:
   GigabitEthernet0/0, Forward, 00:00:58/never
   GigabitEthernet0/1, Forward, 00:00:54/00:02:35
(2001:4C18:20:1:221:86FF:FE52:D383, FF7E:240:2001:4C18:20:0:FFFF:FFFF), 00:00:51/00:03:29, flags: SJ
 Incoming interface: Loopback6
 RPF nbr: FE80::213:C3FF:FE7D:2110
 Inherited Outgoing interface list:
   GigabitEthernet0/0, Forward, 00:00:58/never
   GigabitEthernet0/1, Forward, 00:00:54/00:02:35
(2001:4C18:20:2:21A:4BFF:FE63:3894, FF7E:240:2001:4C18:20:0:FFFF:FFFF), 00:00:55/00:02:34, flags: SFJT
 Incoming interface: GigabitEthernet0/0
 RPF nbr: 2001:4C18:20:2:21A:4BFF:FE63:3894
 Inherited Outgoing interface list:
   GigabitEthernet0/1, Forward, 00:00:54/00:02:35

Exemple de configuration multicast IPv6 dans un cœur MPLS

Il faut assigner des adresses IPv6 à chaque interconnexion entre les PEs et les routeurs P et à chaque Loopback des routeurs. En effet, si l'interface n'a pas d'adresse IPv6, le routeur ne va pas implémenter le protocole PIM sur elle. Ensuite il est nécessaire d’implémenter un protocole de routage dynamique pour construire la table de routage que les messages PIM utiliseront lors de la construction de l’arbre multicast.

Ici, le protocole OSPF a été choisi pour sa simplicité d'implémentation. Voici les commandes qu'il faut entrer :

ipv6 router ospf 1
 router-id 192.168.127.1
 log-adjacency-changes detail
!

Pour le "router-id", il suffit de mettre l'adresse IPv4 de la Loopback. Ensuite il faut appliquer le protocole sur chaque interface où on veut que l'adresse soit partagée :

interface GigabitEthernet0/1
 descrition Vers_le_routeur_P
 ip address 192.168.11.2 255.255.255.0
 ip router isis
 duplex auto
 speed auto
 media-type rj45
 ipv6 address 2001:4C18:2C:1::2/64
 ipv6 enable
 ipv6 ospf 1 area 0
 mpls label protocol ldp
 mpls ip
 !
!

Le but étant d'obtenir ce type d'architecture :

Figure 11-1 Configuration OSPF


Et le schéma entier de l’architecture mise en place donne ceci :

Figure 11-1 Architecture cœur MPLS

Autres solutions

L’utilisation de 6vPE peut être une solution définitive. Le principe de 6vPE repose sur l’établissement de vrf (voir 6vPE). Il n’est pas possible aujourd’hui de configurer des RP dans une vrf. Du coup comme les clients viennent des interfaces incluses dans une vrf, le RP ne voit pas la demande d’inscription du client. Par contre, pour l’IPv4, les routeurs cisco offrent déjà des fonctionnalités bien plus compatibles avec le multicast puisqu’on peut configurer un RP dans une vrf. Il faut donc attendre une mise-à-jour de Cisco pour peut-être offrir une solution d’architecture où le routeur P n’a pas besoin d’implémenter d’interface IPv6.

Personal tools