Routage multitopologique dans cRPD
Multitopologie dans cRPD
cRPD permet à BGP d’utiliser plusieurs RIB pour prendre en charge le routage multitopologique (MTR) en fonction de la stratégie de routage avec les FIB (routes dans le plan de transfert) Linux. Les applications peuvent sélectionner la table de routage requise en fonction de la stratégie de routage de la FIB Linux dans cRPD pour différents types de trafic. Chaque type de trafic est défini par une topologie qui permet de créer une table de routage pour cette topologie. Chaque topologie utilise le plan de contrôle unifié pour prendre des décisions de routage pour le trafic associé à cette topologie. En outre, chaque topologie dispose d’une table de transfert distincte et, de fait, d’un plan de transfert dédié pour chaque topologie.
Les fournisseurs de services et les entreprises peuvent utiliser le routage multitopologique (MTR) pour organiser le flux de trafic sur un réseau. Le MTR peut être utilisé avec des routes directes et statiques, IS-IS, OSPF et BGP. Dans un réseau acheminant plusieurs types de trafic, vous devez souvent diriger différents types de trafic applicatif sur plusieurs liaisons en fonction de leurs caractéristiques. Les communautés sont utilisées pour BGP lors de l’exportation de routes vers une multitopologie. OSPFv3 ne prend pas en charge MTR. MTR détecte les routes IGP et peut résoudre les routes BGP sur des topologies personnalisées avec static et OSPF.
Vous pouvez configurer des topologies distinctes pour partager les mêmes liaisons réseau selon vos besoins. Le MTR utilise une combinaison de filtres de plan de contrôle (routage) et de plan de transfert.
MTR permet de générer des tables de transfert basées sur les entrées résolues dans les tables de routage pour les topologies que vous créez. Le MTR et le transfert ne sont disponibles que sur l’instance de routage maître. Un RIB dédié est créé pour stocker les routes multitopologiques. Le multichemin BGP n’est pas activé sur les topologies.
Lorsque les topologies de routage sont configurées sous routing-options, une nouvelle table de routage est créée pour chaque topologie. Chaque protocole de routage crée une table de routage en fonction du nom de la topologie, du nom de l’instance et de l’objectif de la table.
Exemple : Configurer le routage multitopologique avec BGP dans cRPD
Cet exemple montre comment configurer plusieurs topologies basées sur la communauté avec BGP dans cRPD et unicast le trafic à l’aide du routage multitopologique (MTR) sur les chemins réseau.
Exigences
Cet exemple nécessite la version logicielle suivante :
-
cRPD 19.4R1 ou version ultérieure.
Aperçu
La prise en charge du routage multitopologique BGP repose sur la valeur communautaire d’un routage BGP. Cette configuration détermine l’association entre la topologie et une ou plusieurs valeurs de communauté et remplit les tables de routage de topologie. Les mises à jour BGP arrivant qui ont une valeur de communauté correspondante sont répliquées dans la table de routage topologique associée.
Configurez les topologies avec la famille BGP inet et vérifiez l’itinéraire correspondant à l’importation BGP dans le RIB de topologie (également appelé table de routage). Pour chaque topologie, une liste d’objets de communauté doit être fournie afin que le logiciel de routage puisse mettre en place une politique d’importation de table interne ribgroup et la table secondaire correspondante.
Topologie
La figure 1 illustre la topologie de configuration du routage multitopologique avec BGP.
multitopologique
Configuration
Pour configurer le routage multitopologique pour BGP :
Configuration rapide de la CLI
set routing-options topologies family inet topology red table-id 40
set routing-options topologies family inet topology blue table-id 41
set routing-options topologies family inet topology green table-id 42
set routing-options router-id 10.2.2.2
set routing-options autonomous-system 65500
set routing-options rib :red.inet.0 static route 10.1.1.1/32 next-hop 10.15.0.2
set routing-options rib :green.inet.0 static route 10.1.1.1/32 next-hop 10.13.0.2
set routing-options rib :blue.inet.0 static route 10.1.1.1/32 next-hop 10.17.0.2
set protocols bgp group ibgp-app-rr-ser type internal
set protocols bgp group ibgp-app-rr-ser traceoptions file bgp size 100m
set protocols bgp group ibgp-app-rr-ser traceoptions flag update
set protocols bgp group ibgp-app-rr-ser traceoptions flag state
set protocols bgp group ibgp-app-rr-ser local-address 10.77.1.1
set protocols bgp group ibgp-app-rr-ser family inet unicast add-path send path-count 6
set protocols bgp family inet unicast topology red community 1:1
set protocols bgp family inet unicast topology green community 1:2
set protocols bgp family inet unicast topology blue community 1:3
Configuration de BGP via le routage multitopologique
Procédure étape par étape
-
Configurez plusieurs topologies.
[edit routing-options topologies] user@crpd# set family inet topology red table-id 40 user@crpd# set family inet topology blue table-id 41 user@crpd# set family inet topology green table-id 42 -
Configurez les routes statiques.
[edit routing-options] user@crpd# set router-id 10.2.2.2 user@crpd# set autonomous-system 65500 user@crpd# set rib :red.inet.0 static route 10.1.1.1/32 next-hop 10.15.0.2 user@crpd# set rib :green.inet.0 static route 10.1.1.1/32 next-hop 10.13.0.2 user@crpd# set rib :blue.inet.0 static route 10.1.1.1/32 next-hop 10.17.0.2 -
Configurez les paramètres de groupe BGP pour importer l’itinéraire correspondant dans les tables de routage de topologie. BGP utilise l’identificateur de communauté cible pour installer les routes qu’il apprend dans la table de routage appropriée.
[edit protocols bgp] user@crpd# set group ibgp-app-rr-ser type internal user@crpd# set group ibgp-app-rr-ser traceoptions file bgp size 100m user@crpd# set group ibgp-app-rr-ser traceoptions flag update user@crpd# set group ibgp-app-rr-ser traceoptions flag state user@crpd# set group ibgp-app-rr-ser local-address 10.77.1.1 user@crpd# set group ibgp-app-rr-ser family inet unicast add-path send path-count 6 user@crpd# set family inet unicast topology red community 1:1 user@crpd# set family inet unicast topology green community 1:2 user@crpd# set family inet unicast topology blue community 1:3
Résultats
En mode configuration, confirmez votre configuration en entrant les show protocols bgp commandes and show routing-options . Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
show routing-options
topologies {
family inet {
topology red {
table-id 40;
}
topology blue {
table-id 41;
}
topology green {
table-id 42;
}
}
}
rib :red.inet.0 {
static {
route 10.1.1.1/32 next-hop 10.15.0.2;
}
}
rib :green.inet.0 {
static {
route 10.1.1.1/32 next-hop 10.13.0.2;
}
}
rib :blue.inet.0 {
static {
route 10.1.1.1/32 next-hop 10.17.0.2;
}
}
user@crpd# show protocols bgp
family inet {
unicast {
topology red {
community 1:1;
}
topology green {
community 1:2;
}
topology blue {
community 1:3;
}
}
group ibgp-app-rr-ser {
type internal;
traceoptions {
file bgp size 100m;
flag update;
}
local-address 10.77.1.1;
family inet {
unicast {
add-path {
send {
path-count 6;
}
}
}
}
}
}
Si vous avez terminé de configurer l’appareil, entrez la commit commande à partir du mode de configuration.
Vérification
Vérification des routes BGP
But
Pour vérifier les routes BGP correspondantes :
Action
À partir du mode opérationnel, entrez la show route protocol bgp all table commande :
user@crpd> show route protocol bgp all table
:red.inet.0: 11 destinations, 11 routes (8 active, 0 holddown, 3 hidden)
+ = Active Route, - = Last Active, * = Both
10.99.9.1/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.15.0.2 via ens4f1
10.99.9.2/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.15.0.2 via ens4f1
10.99.9.5/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.15.0.2 via ens4f1
:green.inet.0: 10 destinations, 10 routes (8 active, 0 holddown, 2 hidden)
+ = Active Route, - = Last Active, * = Both
10.9.9.1/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.13.0.2 via ens4f1
10.9.9.4/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.13.0.2 via ens4f1
:blue.inet.0: 11 destinations, 11 routes (8 active, 0 holddown, 3 hidden)
+ = Active Route, - = Last Active, * = Both
10.99.9.3/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.17.0.2 via ens4f1
10.99.9.4/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.17.0.2 via ens4f1
10.99.9.5/32 [BGP/170] 00:05:07, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 10.17.0.2 via ens4f1
À partir du mode opérationnel, entrez la show route protocol bgp all table inet.0 commande :
user@crpd> show route protocol bgp all table inet.0
inet.0: 20 destinations, 20 routes (20 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.99.9.1/32 *[BGP/170] 00:00:14, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 1.15.0.2 via ens4f1
10.99.9.2/32 *[BGP/170] 00:00:14, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 1.15.0.2 via ens4f1
10.99.9.3/32 *[BGP/170] 00:00:14, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 1.15.0.2 via ens4f1
10.99.9.4/32 *[BGP/170] 00:00:14, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 1.15.0.2 via ens4f1
10.99.9.5/32 *[BGP/170] 00:00:14, localpref 100, from 10.49.114.118
AS path: I, validation-state: unverified
> to 1.15.0.2 via ens4f1
Signification
Vous pouvez afficher les routes BGP correspondantes installées sur les tables de routage et lorsque les routes sans cibles de communauté sont disponibles uniquement dans la inet.0 table de routage.