MPLS - Configuration Multicast VPN MPLS ccnp_cch ccnp_cch
Sommaire • Introduction • Vérification • Résolution de problèmes - Prérequis - Composants utilisés • Configuration - Schéma du réseau - Configurations • Vérification • Résolution de problèmes ccnp_cch
Introduction Configuration ccnp_cch Ce document fournit un exemple de configuration et un guide général pour configurer le support multicast pour des VPNs MPLS (Multiprotocol Label Switching). Cette fonc- tionnalité a été introduite dans l'IOS Cisco release 12.0(23)S et 12.2(13)T. Prérequis Avant de tenter cette configuration, assurez-vous que ces conditions sont remplies: ● Les opérateurs doivent avoir un cœur de réseau avec des capacités multicast pour pouvoir utiliser la fonctionnalité Cisco VPN multicast. Composants utilisés Les informations de ce document sont basées l'IOS Cisco release 12.2(13)T. Configuration Dans cette section sont présentées les informations nécessaires pour configurer les fonctionnalités décrites dans ce document. Schéma du réseau R1 Lo0-100.0.0.1 S0/0 S1/0 S2/0 R3 Lo0-50.0.0.3 R2 Lo0-50.0.0.2 R5 Lo-100.0.0.5 R4 Lo-50.0.0.4 10.1.0.x/24 10.3.0.x/24 10.4.0.x/24 10.2.0.x/24 ccnp_cch
Configurations Le schéma du réseau représente un backbone d'opérateur Configurations Le schéma du réseau représente un backbone d'opérateur. Celui-ci est constitué des routeurs R2, R3 et R4. Le backbone est configuré pur supporter les VPN MPLS. R2 et R4 sont des routeurs PE (Provider Edge) tandis que R3 est un routeur P (Provider). R1 et R5 représentent des routeurs CE (Customer Edge) qui appartiennent à la même instance VRF (VPN Routing and Forwarding) "yellow". Dans le but de fournir des services multicast, le backbone doit être configuré pour opérer avec du routage multicast. Le protocole multicast sélectionné est PIM (Protocol Independant Multicast) et R3est configuré comme RP (Rendez-vous Point). R2 et R4 sont également configurés pour effectuer du routage multicast dans le VRF yellow. PIM mode sparse-dense est configuré comme protocole routage multicast entre les PEs et Ces. R2 a été configuré pour être le RP pour le VRF "yellow". Dans le but de tester la connectivité multicast, l'interface S0/0 de R5 est configurée pour joindre le groupe 224.2.2.2. Les "ping" sont transmis depuis l'adresse loopback de R1 vers 224.2.2.2. le message ICMP (Internet Control Message Protocol) echo est un paquet multicast tandis que le message ICMP reply est un paquet unicast car l'a- dresse IP destination est de l'interface loopback de R1. R1 - (CE) version 12.2 service timestamps debug datetime msec service timestamps log datetime msec no service password−encryption ! hostname R1 clock timezone CET 1 ip subnet−zero no ip domain lookup ip multicast−routing !−−− Valide le routage multicast. interface Loopback0 ip address 100.0.0.1 255.255.255.255 interface Serial0/0 ip address 10.1.0.1 255.255.255.0 ip pim sparse−dense−mode !−−− PIM mode sparce−dense est utilisé entre the PE et CE. !−−− PIM mode sparce−dense est le protocole de routage !--- multicast. ccnp_cch
ccnp_cch ! router rip version 2 network 10.0.0.0 network 100.0.0.0 no auto−summary ip classless no ip http server ip pim bidir−enable line con 0 exec−timeout 0 0 line aux 0 line vty 0 4 login end R2 - (PE) version 12.2 service timestamps debug datetime msec service timestamps log datetime msec no service password−encryption ! hostname R2 clock timezone CET 1 ip subnet−zero no ip domain lookup ip vrf yellow rd 2:200 route−target export 2:200 route−target import 2:200 mdt default 239.1.1.1 !−−− Configure Multicast Distribution Tree (MDT) par défaut !−−− pour le VRF yellow. mdt data 239.2.2.0 0.0.0.255 threshold 1 !−−− Configure l'intervalle d'adresses global pour les données !−−− MDTs et le seuil. ip multicast−routing !−−− Valide le routage global multicast. ip multicast−routing vrf yellow !−−− Valide le routage multicast pour le VRF yellow. ccnp_cch
ccnp_cch ip cef mpls label protocol ldp tag−switching tdp router−id Loopback0 ! interface Loopback0 ip address 50.0.0.2 255.255.255.255 ip pim sparse−dense−mode !−−− Multicast a besoin d'être validé sur l'interface loopback !−−− Celle-ci est utilisée comme source pour les sessions !−−− MBGP entre les routeurs PE qui participent au MVPN. interface Loopback100 ip vrf forwarding yellow ip address 100.0.0.2 255.255.255.255 !−−− Ce routeur doit être le RP pour le multicast dans le VRF !−−− yellow. Par conséquent, le multicast doit être validé !−−− sur l'interface qui est utilisé comme RP. interface Serial1/0 ip address 10.1.0.2 255.255.255.0 !−−− Le Multicast est validé sur les interfaces PE−CE dans le !--- VRF. interface Serial2/0 ip address 10.2.0.2 255.255.255.0 !−−− Le cœur de réseau doit opérer avec du multicast pour !−−− supporter les services MVPN, ainsi le multicast est !−−− validé sur les liaisons PE−P. tag−switching ip router ospf 1 router−id 50.0.0.2 log−adjacency−changes network 10.0.0.0 0.255.255.255 area 0 network 50.0.0.0 0.0.0.255 area 0 router rip version 2 no auto−summary ccnp_cch
ccnp_cch address−family ipv4 vrf yellow version 2 redistribute bgp 1 network 10.0.0.0 network 100.0.0.0 default−metric 5 no auto−summary exit−address−family ! router bgp 1 no synchronization no bgp default ipv4−unicast bgp log−neighbor−changes redistribute rip neighbor 50.0.0.4 remote−as 1 neighbor 50.0.0.4 update−source Loopback0 neighbor 50.0.0.4 activate neighbor 50.0.0.6 remote−as 1 neighbor 50.0.0.6 update−source Loopback0 neighbor 50.0.0.6 activate redistribute connected address−family vpnv4 neighbor 50.0.0.4 send−community extended neighbor 50.0.0.6 send−community extended ip classless no ip http server ip pim bidir−enable ip pim vrf yellow send−rp−announce Loopback100 scope 100 ip pim vrf yellow send−rp−discovery Loopback100 scope 100 !−−− Configure auto−RP. L'interface loopback R2 100 !−−− est le RP dans le VRF yellow. line con 0 exec−timeout 0 0 line aux 0 line vty 0 4 login end ccnp_cch
ccnp_cch R3 - (P) version 12.2 service timestamps debug datetime msec service timestamps log datetime msec no service password−encryption ! hostname R3 clock timezone CET 1 ip subnet−zero ip multicast−routing !−−− Valide le routage global multicast. ip cef mpls label protocol ldp tag−switching tdp router−id Loopback0 interface Loopback0 ip address 50.0.0.3 255.255.255.255 ip pim sparse−dense−mode interface Serial1/0 ip address 10.2.0.3 255.255.255.0 !−−− Valide le multicast sur les liaisons entre routeurs PE !−−− qui ont des MVPNs configurés. tag−switching ip interface Serial2/0 ip address 10.3.0.3 255.255.255.0 router ospf 1 router−id 50.0.0.3 log−adjacency−changes network 10.0.0.0 0.255.255.255 area 0 network 50.0.0.0 0.0.0.255 area 0 ip classless no ip http server ip pim bidir−enable ip pim send−rp−announce Loopback0 scope 100 ip pim send−rp−discovery Loopback0 scope 100 !−−− R3 est configuré pour s'annoncer comme le RP !−−− au travers de auto−RP. ccnp_cch
ccnp_cch ! line con 0 exec−timeout 0 0 line aux 0 line vty 0 4 login end R4 - (PE) version 12.2 service timestamps debug datetime msec service timestamps log datetime msec no service password−encryption ! hostname R4 clock timezone CET 1 ip subnet−zero no ip domain lookup ip vrf yellow rd 2:200 route−target export 2:200 route−target import 2:200 mdt default 239.1.1.1 !−−− Configure l'adresse MDT par défaut MDT. mdt data 238.2.2.0 0.0.0.255 threshold 1 !−−− Configure l'intervalle data MDT et le seuil. ip multicast−routing !−−− Valide le routage global multicast. ip multicast−routing vrf yellow !−−− Valide le routage multicast dans le VRF yellow. ip cef mpls label protocol ldp tag−switching tdp router−id Loopback0 interface Loopback0 ip address 50.0.0.4 255.255.255.255 ip pim sparse−dense−mode ccnp_cch
ccnp_cch interface Loopback100 ip vrf forwarding yellow ip address 100.0.0.4 255.255.255.255 ip pim sparse−dense−mode ! interface Serial1/0 ip address 10.3.0.4 255.255.255.0 tag−switching ip interface Serial2/0 ip address 10.4.0.4 255.255.255.0 !−−− Valide PIM vers le CE. router ospf 1 router−id 50.0.0.4 log−adjacency−changes network 10.0.0.0 0.255.255.255 area 0 network 50.0.0.0 0.0.0.255 area 0 router rip version 2 no auto−summary address−family ipv4 vrf yellow redistribute bgp 1 network 10.0.0.0 network 100.0.0.0 default−metric 5 exit−address−family router bgp 1 no synchronization no bgp default ipv4−unicast bgp log−neighbor−changes redistribute rip neighbor 50.0.0.2 remote−as 1 neighbor 50.0.0.2 update−source Loopback0 neighbor 50.0.0.2 activate ccnp_cch
ccnp_cch address−family ipv4 vrf yellow redistribute connected redistribute rip no auto−summary no synchronization exit−address−family ! address−family vpnv4 neighbor 50.0.0.2 activate neighbor 50.0.0.2 send−community extended ip classless no ip http server ip pim bidir−enable line con 0 exec−timeout 0 0 line aux 0 line vty 0 4 login end R5 - (CE) version 12.2 service timestamps debug datetime msec service timestamps log datetime msec no service password−encryption ! hostname R5 clock timezone CET 1 ip subnet−zero no ip domain lookup ip multicast−routing !−−− Valide le routage global multicast dans le CE. interface Loopback0 ip address 100.0.0.5 255.255.255.255 interface Serial0/0 ip address 10.4.0.5 255.255.255.0 ip pim sparse−dense−mode ip igmp join−group 224.2.2.2 ccnp_cch
ccnp_cch router rip version 2 network 10.0.0.0 network 100.0.0.0 no auto−summary ! ip classless no ip http server ip pim bidir−enable line con 0 exec−timeout 0 0 line aux 0 line vty 0 4 login end Conseils pour la conception ● Multicast pour VPN MPLS est configuré par-dessus la configuration VPN. Le réseau VPN MPLS a besoin d'être soigneusement conçue pour respecter toutes les recom- mandations des VPN MPLS en premier. ● Le cœur du réseau de l'opérateur doit être configuré pour du service multicast natif. Le cœur de réseau doit être configuré pou PIM-SM (PIM-Sparse mode), PIM-SSM (PIM Source Specific Multicast) ou PIM-Bidir (PIM-Bidirectionnel). PIM- DM (PIM Dense Mode) n'est pas supporté comme protocole multicast dans les configurations VPN Multicast. Il est possible de configurer une combinaison des protocoles suppor- tés dans le cœur de réseau de l'opérateur. Ceci peut être fait quand quelques grou- pes multicast sont gérés dans un mode PIM et d'autres groupes sont gérés dans un autre mode PIM supporté. ● Tous les protocoles multicast sont supportés dans le VRF multicast. Ce qui veut dire que dans le VRF multicast vous pouvez utiliser MSDP avec PIM-DM en plus de PIM- SM, PIM-SSM ou de PIM-Bidir. ● Le service multicast VPN peut être ajouté séparément VRF par VRF. Ce qui veut dire qu'un routeur PE peut avoir des VRF avec multicast validé et des VRFs unicast uni- quement. ● Tous les sites d'un VRF unicast ne doivent pas être configurés pour le multicast. Il est possible d'avoir quelques sites (et même des interfaces de routeur PE VPN Multi- cast) sur lesquels le multicast n'est pas validé. Vous devez vous assurer que les rou- tes multicast ne sont pas calculées pour pointer vers des interfaces non-multicast. Dans le cas contraire l'acheminement du trafic multicast serait interrompu. ● Plusieurs VRFs peuvent appartenir au même domaine multicast MVPN. L'adressage IP doit être unique dans un domaine multicast. La fuite de routes ou de paquets entre domaines multicast ou dans une table de routage multicast globale n'est pas possible. ccnp_cch
Vérification ccnp_cch ● Une configuration de MDT par défaut est obligatoire pour que les VPNs Multicast fonctionnent. La configuration des données MDT est optionnelle. Il est fortement recommandé de fixer les seuils pour les données MDT si vous choisissez dans con- figurer une. ● L'adresse IP de la MDT par défaut détermine à quel domaine multicast un VRF. Par conséquent il est possible d'avoir la même adresse MDT par défaut pour plusieurs VRFs. Cependant ils partageront les paquets multicast entre eux et devrons respec- ter certaines exigences sur les domaines multicast (tel qu'un schéma d'adressage IP unique). ● Les données MDT sont ou ne sont pas configurées avec le même espace d'adresse IP sur les différents routeurs PE. Ceci dépend du mode PIM utilisé dans le cœur de réseau de l'opérateur. Si le cœur de réseau de l'opérateur utilise PIM-SM alors cha- que routeur PE doit utiliser un intervalle d'adresses IP unique pour les données MDT des groupes. Si le cœur de réseau de l'opérateur utilise PIM-SSM alors les routeurs PEs pourraient être configurés avec le même intervalle d'adresses IP pour les données MDT de chaque domaine multicast. Vérification Cette section fournit des informations que vous pourrez utiliser pour vérifier votre confi- guration fonctionne correctement. Commandes show Exécutez les étapes suivantes pour vérifier que votre configuration fonctionne correcte- ment. 1. Vérifiez que les PEs ont joint le groupe IGMP pour le tunnel MDT par défaut. S'il a été configuré après la commande default-mdt ait été éxécutée dans la configu- ration du VRF, le routeur PE pourrait échoué pour joindre le groupe MDT par dé- faut. Si la loopback est configurée, retirez la commande default-mdt du VRF et ren- trez-la de nouveau pour résoudre le problème. Pour PE−R2, exécutez la commande show ip igmp groups. IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.0.1.40 Serial2/0 02:21:23 stopped 10.2.0.2 239.1.1.1 Loopback0 02:36:59 stopped 0.0.0.0 ¨ Pour PE−R4, exécutez la commande show ip igmp groups. 224.0.1.40 Loopback0 02:51:48 00:02:39 50.0.0.4 239.1.1.2 Loopback0 02:51:45 stopped 0.0.0.0 239.1.1.1 Loopback0 02:51:45 stopped 0.0.0.0 239.2.2.0 Loopback0 01:40:03 stopped 0.0.0.0 ccnp_cch
ccnp_cch 2. Vérifiez les annonces BGP reçues sur chaque PE. Pour PE−R2, exécutez la commande show ip igmp groups. MDT−default group 239.1.1.1 rid: 50.0.0.4 next_hop: 50.0.0.4 WAVL tree nodes MDT−default: 239.1.1.1 Tunnel0 source−interface: Loopback0 Pour PE−R4, exécutez la commande show ip igmp groups. rid: 50.0.0.2 next_hop: 50.0.0.2 MDT−data : 239.2.2.0 Tunnel0 source−interface: Loopback0 3. Vérifiez les données MDT. Note: Pour cet exemple, vérifiez les données MDT issues ou jointes par PE−R2 et PE−R4. Pour PE−R2, exécutez la commande show ip pim vrf yellow mdt send. MDT−data send list for VRF: yellow (source, group) MDT−data group ref_count (100.0.0.1, 224.2.2.2) 239.2.2.0 1 Pour PE−R2, exécutez la commande show ip pim vrf yellow mdt receive. Flags: D − Dense, S − Sparse, B − Bidir Group, s − SSM Group, C − Connected, L − Local, P − Pruned, R − RP−bit set, F − Register flag, T − SPT−bit set, J − Join SPT, M − MSDP created entry, X − Proxy Join Timer Running, A − Candidate MSDP Advertisement, U − URD, I − Received Source Specific Host Report, Z − Multicast Tunnel Y − Joined MDT−data group, y − Sending to MDT−data group Joined MDT−data groups for VRF: yellow group: 239.2.2.0 source: 0.0.0.0 ref_count: 1 Vérifiez la table de routage globale multicast pour le MDT par défaut. Note: Notez cette information: a. La liste d'interface de sortie est MVRF yellow sur les PEs. b. Le routeur P voit le groupe comme groupe Multicast classique c. Chaque PE est une source pour le MDT par défaut situé uniquement dans les routeurs PE. c. d. Un nouveau , Z, indique que c'est un tunnel multicast ccnp_cch
ccnp_cch Pour PE−R2, exécutez la commande show ip mroute 239.1.1.1. IP Multicast Routing Table Flags: D − Dense, S − Sparse, B − Bidir Group, s − SSM Group, C − Connected, L − Local, P − Pruned, R − RP−bit set, F − Register flag, T − SPT−bit set, J − Join SPT, M − MSDP created entry, X − Proxy Join Timer Running, A − Candidate MSDP Advertisement, U − URD, I − Received Source Specific Host Report, Z − Multicast Tunnel Y − Joined MDT−data group, y − Sending to MDT−data group Outgoing interface flags: H − Hardware switched Timers: Uptime/Expires Interface state: Interface, Next−Hop or VCD, State/Mode (*, 239.1.1.1), 02:37:16/stopped, RP 50.0.0.3, flags: SJCFZ Incoming interface: Serial2/0, RPF nbr 10.2.0.3 Outgoing interface list: MVRF yellow, Forward/Sparse−Dense, 02:21:26/00:00:28 (50.0.0.2, 239.1.1.1), 02:37:12/00:03:29, flags: FTZ Incoming interface: Loopback0, RPF nbr 0.0.0.0 Serial2/0, Forward/Sparse−Dense, 02:36:09/00:02:33 (50.0.0.4, 239.1.1.1), 02:36:02/00:02:59, flags: JTZ Pour P−R3, exécutez la commande show ip mroute 239.1.1.1. (*, 239.1.1.1), 02:50:24/stopped, RP 50.0.0.3, flags: S Incoming interface: Null, RPF nbr 0.0.0.0 Serial1/0, Forward/Sparse−Dense, 02:34:41/00:03:16 Serial2/0, Forward/Sparse−Dense, 02:49:24/00:02:37 (50.0.0.2, 239.1.1.1), 02:49:56/00:03:23, flags: T Incoming interface: Serial1/0, RPF nbr 10.2.0.2 (50.0.0.4, 239.1.1.1), 02:49:47/00:03:23, flags: T Incoming interface: Serial2/0, RPF nbr 10.3.0.4 ccnp_cch
ccnp_cch Pour PE−R4, exécutez la commande show ip mroute 239.1.1.1. IP Multicast Routing Table Flags: D − Dense, S − Sparse, B − Bidir Group, s − SSM Group, C − Connected, L − Local, P − Pruned, R − RP−bit set, F − Register flag, T − SPT−bit set, J − Join SPT, M − MSDP created entry, X − Proxy Join Timer Running, A − Candidate MSDP Advertisement, U − URD, I − Received Source Specific Host Report, Z − Multicast Tunnel Y − Joined MDT−data group, y − Sending to MDT−data group Outgoing interface flags: H − Hardware switched Timers: Uptime/Expires Interface state: Interface, Next−Hop or VCD, State/Mode (*, 239.1.1.1), 02:51:06/stopped, RP 50.0.0.3, flags: SJCFZ Incoming interface: Serial1/0, RPF nbr 10.3.0.3 Outgoing interface list: MVRF yellow, Forward/Sparse−Dense, 02:51:06/00:00:48 (50.0.0.2, 239.1.1.1), 02:50:06/00:02:58, flags: JTZ MVRF yellow, Forward/Sparse−Dense, 02:50:06/00:00:48 (50.0.0.4, 239.1.1.1), 02:51:00/00:03:10, flags: FTZ Incoming interface: Loopback0, RPF nbr 0.0.0.0 Serial1/0, Forward/Sparse−Dense, 02:35:24/00:03:00 4. Vérifiez la table de routage multicast globale pour les données MDT. Note: Pour PE-R2, notez que l'interface de sortie est tunnel0. Pour PE-R2, la source est localisée côté VRF side, exécutez la commande show ip mroute vrf yellow 224.2.2.2. (*, 224.2.2.2), 2d01h/stopped, RP 100.0.0.2, flags: S Incoming interface: Null, RPF nbr 0.0.0.0 Tunnel0, Forward/Sparse−Dense, 2d01h/00:02:34 (100.0.0.1, 224.2.2.2), 00:05:32/00:03:26, flags: Ty Incoming interface: Serial1/0, RPF nbr 10.1.0.1 Tunnel0, Forward/Sparse−Dense, 00:05:37/00:02:34 ccnp_cch
Résolution de problèmes Pour PE−R2 où la source est localisée (route multicast globale), exécutez la comman- de show ip mroute 239.2.2.0. IP Multicast Routing Table Flags: D − Dense, S − Sparse, B − Bidir Group, s − SSM Group, C − Connected, L − Local, P − Pruned, R − RP−bit set, F − Register flag, T − SPT−bit set, J − Join SPT, M − MSDP created entry, X − Proxy Join Timer Running, A − Candidate MSDP Advertisement, U − URD, I − Received Source Specific Host Report, Z − Multicast Tunnel Y − Joined MDT−data group, y − Sending to MDT−data group Outgoing interface flags: H − Hardware switched Timers: Uptime/Expires Interface state: Interface, Next−Hop or VCD, State/Mode (*, 239.2.2.0), 02:13:27/stopped, RP 50.0.0.3, flags: SJPFZ Incoming interface: Serial2/0, RPF nbr 10.2.0.3 Outgoing interface list: Null (50.0.0.2, 239.2.2.0), 02:13:27/00:03:22, flags: FTZ Incoming interface: Loopback0, RPF nbr 0.0.0.0 Outgoing interface list: Serial2/0, Forward/Sparse−Dense, 02:13:27/00:03:26 Note: seul le routeur PE qui a une source multicast attachée apparaît comme la source pour le traffic multicast pour les données MDT des groupes adresses. Résolution de problèmes ● Exécutez la commande show ip pim vrf neighbor pour vérifier que les routeurs PEs ont établi une relation de voisinage PIM au travers de l'interface Tunnel dynamique. S'ils ont fait cela alors le MDT par défaut opère normalement. ● Si le MDT par défaut ne fonctionne pas, exécutez la commande show ip pim mdt bgp pour vérifier que les loopbacks des routeurs PE distants participant au MVPN sont connus par le routeur local. Si ce n'est pas le cas, vérifiez que PIM est validé sur les interfaces loopbacks comme sources pour les sessions MP-BGP. ● Vérifier que le cœur de réseau opérateur est correctement configuré pour délivrer du multicast entre routeurs PEs. Pour des besoins de test vous pourrez configurer ip igmp join-group sur l'interface loopback sur un routeur PE et exécutez des ping mul- ticast issus de l'interface loopback d'un autre routeur PE. ccnp_cch