configuration des tables de routage Junos OS
Présentation des tables de routage Junos OS
Junos OS crée et gère automatiquement plusieurs tables de routage. Chaque table de routage est utilisée dans un but précis. En plus de ces tables de routage créées automatiquement, vous pouvez créer vos propres tables de routage.
Chaque table de routage remplit une partie de la table de transfert. Ainsi, la table de transfert est partitionnée en fonction des tables de routage. Cela permet un comportement de transfert spécifique pour chaque table de routage. Par exemple, pour les VPN, chaque table de routage basée sur un VPN possède sa propre partition spécifique au VPN dans la table de transfert.
Il est courant que le logiciel de routage gère les routes unicast et multicast dans différentes tables de routage. Vous pouvez également avoir des considérations de stratégie qui vous amèneraient à créer des tables de routage distinctes pour gérer la propagation des informations de routage.
La création de tables de routage est facultative. Si vous n’en créez pas, Junos OS utilise ses tables de routage par défaut, qui sont les suivantes :
inet.0 : pour les routes unicast IP version 4 (IPv4). Cette table stocke les routes locales et directes de l’interface, les routes statiques et les routes apprises dynamiquement.
inet.1 : pour le cache de transfert de multicast IPv4. Cette table stocke les entrées de groupe IPv4 (S,G) qui sont créées dynamiquement à la suite des informations sur l’état de jointure.
inet.2 : pour les routes SAFI (Subsequent Address Family Indicator) 2, lorsque le BGP multiprotocole (MBGP) est activé. Cette table stocke les routes unicast utilisées pour la recherche RPF (Reverse-Path-Forwarding) multicast. Les itinéraires de cette table peuvent être utilisés par le protocole DVMRP (Distance Vector Multicast Routing), qui nécessite une table RPF spécifique. En revanche, le PIM (Protocol Independent Multicast) n’a pas besoin de cette table, car il peut effectuer des vérifications RPF par rapport à la table inet.0. Vous pouvez importer des routes d’inet.0 vers inet.2 à l’aide de groupes de bases d’informations de routage (RIB) ou installer des routes directement dans inet.2 à partir d’un protocole de routage multicast.
inet.3 : pour MPLS IPv4. Cette table stocke l’adresse de sortie d’un chemin d’accès à l’étiquette MPLS (LSP), le nom LSP et le nom de l’interface sortante. Cette table de routage n’est utilisée que lorsque l’équipement local est le nœud d’entrée d’un LSP.
inet6.0 : pour les routes unicast IP version 6 (IPv6). Cette table stocke les routes locales et directes de l’interface, les routes statiques et les routes apprises dynamiquement.
inet6.1 : pour le cache de transfert multicast IPv6. Cette table stocke les entrées de groupe IPv6 (S,G) créées dynamiquement à la suite des informations sur l’état de jointure.
-
inet6.2 : la table inet6.2 est souvent utilisée conjointement avec d’autres tables de routage IPv6 dans le cadre des groupes de tables de routage par défaut pour les routes d’interface, en particulier sur les routeurs PTX.
-
inet6.3 : la table inet6.3 est utilisée pour stocker les routes IPv6 étiquetées.
instance-name.inet.0 : si vous configurez une instance de routage, Junos OS crée la table de routage instance-nameunicast par défaut .inet.0.
instance-name.inet.2 : si vous configurez des protocoles d’instances instance-name de routage de la famille bgp inet multicast dans une instance de routage de type VRF, Junos OS crée la instance-nametable .inet.2 .
Une autre façon de créer la instance-nametable .inet.2 consiste à utiliser l’instruction
rib-group. Reportez-vous à la section Exemple : Exportation de routes spécifiques d’une table de routage vers une autre table de routage.Note:L’importation de routes multicast inet-vpn de la table bgp.l3vpn.2 dans la instance-nametable .inet.2 ne crée pas la instance-nametable .inet.2 . L’opération d’importation ne fonctionne que si la instance-nametable .inet.2 existe déjà.
instance-name.inetflow.0 : si vous configurez un itinéraire de flux, Junos OS crée la table de routage de instance-nameflux .inetflow.0.
bgp.l2vpn.0 : pour les routes VPN de couche 2 apprises à partir de BGP. Cette table stocke les routes apprises à partir d’autres routeurs PE (Provider Edge). Les informations de routage de couche 2 sont copiées dans les instances de routage et de transfert VPN de couche 2 (VRF) en fonction des communautés cibles.
bgp.l3vpn.0 : pour les routes VPN de couche 3 apprises à partir de BGP. Cette table stocke les routes apprises à partir d’autres routeurs PE. Les itinéraires de cette table sont copiés dans un VRF de couche 3 lorsqu’il existe une table de routage correspondante.
l2circuit.0: pour les routes l2circuit apprises à partir de LDP. Les routes de cette table sont utilisées pour envoyer ou recevoir des messages de signalisation l2circuit.mpls.0 : pour les opérations de commutation d’étiquettes MPLS. Cette table est utilisée lorsque l’équipement local est un routeur de transit.
iso.0 : pour les routes IS-IS. Lorsque vous utilisez IS-IS pour prendre en charge le routage IP, cette table contient uniquement le titre d’entité réseau (NET) de l’appareil local.
juniper_private : permet aux Junos OS de communiquer en interne entre le moteur de routage et le matériel PIC.
-
l2xc.0—La table contient les routes d’interconnexion de couche 2 pour CCC et les services de commutation de couche 2 associés dans Junos OS sur un réseau SRv6.
-
lsdist.0—La table de Junos OS contient les NLRI BGP-LS, qui servent de point d’intégration clé entre la base de données d’ingénierie du trafic et l’annonce et la réception des routes BGP-LS.
-
vxlan.inet : pour les opérations de tunnelisation VXLAN sur certaines plates-formes QFX. Ce tableau stocke l’accessibilité aux points de terminaison de tunnel VXLAN sur un réseau IP. Il est utilisé pour l’encapsulation et la décapsulation VXLAN.
-
bgp.evpn0 : pour les routes BGP EVPN. Cette table stocke les routes apprises via BGP pour les opérations EVPN, y compris les liaisons d’adresses MAC et IP, les routes multicast inclusives et les routes de segment Ethernet.
-
instance-name.evpn : pour les routes EVPN dans une instance de routage spécifique. Lorsque vous configurez une instance de routage EVPN, Junos et EVO OS créent cette table pour stocker les routes EVPN spécifiques à cette instance.
Fonctionnalités de table de routage dans Junos OS
Junos OS gère deux bases de données pour les informations de routage :
Table de routage : contient toutes les informations de routage apprises par tous les protocoles de routage. (Certains fournisseurs appellent ce type de tableau une base d’informations de routage [RIB].)
Table de transfert : contient les routes réellement utilisées pour transférer les paquets. (Certains fournisseurs appellent ce type de tableau une base d’informations de transfert [FIB].)
Par défaut, Junos OS gère trois tables de routage : une pour les routes unicast IP version 4 (IPv4), une seconde pour les routes multicast et une troisième pour MPLS. Vous pouvez configurer des tables de routage supplémentaires.
Junos OS gère des tables de routage distinctes pour les routes IPv4 et IP version 6 (IPv6).
Junos OS installe toutes les routes actives de la table de routage dans la table de transfert. Les routes actives sont des routes qui sont utilisées pour transférer les paquets vers leurs destinations. Le noyau du système d’exploitation Junos conserve une copie principale de la table de transfert. Il copie la table de transfert vers le moteur de transfert de paquets, qui est le composant responsable du transfert des paquets.
Le processus du protocole de routage Junos détermine généralement l’itinéraire actif en sélectionnant l’itinéraire dont la valeur de préférence est la plus faible. Junos OS prend en charge les préférences alternatives et de départage, et certains protocoles de routage, notamment BGP et MPLS, utilisent ces préférences supplémentaires.
Vous pouvez ajouter des adresses martiennes et des routes statiques, agrégées et générées aux tables de routage Junos, en configurant les routes avec une ou plusieurs des propriétés indiquées dans le Tableau 1.
Description |
Statique |
Agrégat |
Generated |
|---|---|---|---|
Adresse de destination |
X |
X |
X |
Itinéraire par défaut vers la destination |
X |
X |
X |
Adresse IP ou interface du saut suivant vers la destination |
X |
– |
– |
Chemin de commutation d’étiquettes (LSP) en tant que saut suivant |
X |
– |
– |
Supprimez les paquets, installez une route de rejet pour cette destination et envoyez des messages ICMP (Internet Control Message Protocol) inaccessibles |
X |
X |
X |
Supprimez les paquets, installez une route de rejet pour cette destination, mais n’envoyez pas de messages ICMP inaccessibles |
X |
X |
X |
Provoquer la réception des paquets par le routeur local |
X |
– |
– |
Associer une valeur de métrique à l’itinéraire |
X |
X |
X |
Type d’itinéraire |
X |
X |
X |
Valeurs de préférence |
X |
X |
X |
Valeurs de préférence supplémentaires |
X |
X |
X |
Préférence indépendante (instruction qualified-next-hop ) |
X |
– |
– |
Informations de la communauté BGP à associer à l’itinéraire |
X |
X |
X |
Informations sur le chemin du système autonome (AS) à associer à l’itinéraire |
X |
X |
X |
Chaînes de balises OSPF à associer à l’itinéraire |
X |
X |
X |
N’installez pas de routes statiques actives dans la table de transfert |
X |
– |
– |
Installer l’itinéraire dans la table de transfert |
X |
– |
– |
Conserver en permanence une route statique dans la table de transfert |
X |
– |
– |
N’incluez que les séquences d’introduction communes les plus longues des chemins AS contributeurs |
– |
X |
– |
Inclure tous les numéros AS d’un itinéraire spécifique |
– |
X |
– |
Conserver un itinéraire inactif dans les tables de routage et de transfert |
X |
X |
X |
Supprimer un itinéraire inactif des tables de routage et de transfert |
X |
X |
X |
Stratégie active à associer à l’itinéraire |
– |
X |
X |
Spécifier qu’un itinéraire n’est pas éligible à une nouvelle annonce |
X |
– |
– |
Spécifiez le routage vers un préfixe qui n’est pas un saut suivant directement connecté |
X |
– |
– |
Comprendre les groupes de tables de routage par défaut pour les routes d’interface sur les routeurs PTX
Sur les routeurs de transport de paquets PTX Series, les groupes de tables de routage interface-route par défaut diffèrent de ceux des autres périphériques de routage Junos OS.
Les routeurs PTX Series sont des plates-formes de transit MPLS qui effectuent le transfert IP, généralement à l’aide de routes IGP (Interior Gateway Protocol). Les routes d’interface sont directement connectées et les routes locales.
Contrairement aux autres périphériques de routage Junos OS, les routeurs PTX Series sont capables d’effectuer une résolution indirecte des sauts suivants. Les routeurs PTX Series doivent résoudre le saut suivant indirect pour créer le saut suivant composite chaîné. Cela peut entraîner le masquage des routes lorsque le type de saut suivant est inutilisable.
Pour éviter que les routes ne soient masquées, les plates-formes PTX Series copient automatiquement les routes d’inet.0 dans inet.2 et inet.3, et les routes d’inet6.0 dans inet6.2 et inet6.3.
La configuration par défaut de la table de routage d’interface sur les routeurs PTX Series est la suivante :
user@host# show routing-options | display inheritance defaults
##
## 'interface-routes' was inherited from group 'junos-defaults'
##
interface-routes {
##
## 'rib-group' was inherited from group 'junos-defaults'
##
rib-group {
##
## 'junos-ifrg-inet0-to-inet2-and-inet3' was inherited from group 'junos-defaults'
##
inet junos-ifrg-inet0-to-inet2-and-inet3;
##
## 'junos-ifrg-inet60-to-inet62-and-inet63' was inherited from group 'junos-defaults'
##
inet6 junos-ifrg-inet60-to-inet62-and-inet63;
}
}
rib-groups {
##
## 'junos-ifrg-inet0-to-inet2-and-inet3' was inherited from group 'junos-defaults'
##
junos-ifrg-inet0-to-inet2-and-inet3 {
##
## 'inet.0' was inherited from group 'junos-defaults'
## 'inet.2' was inherited from group 'junos-defaults'
## 'inet.3' was inherited from group 'junos-defaults'
##
import-rib [ inet.0 inet.2 inet.3 ];
}
##
## 'junos-ifrg-inet60-to-inet62-and-inet63' was inherited from group 'junos-defaults'
##
junos-ifrg-inet60-to-inet62-and-inet63 {
##
## 'inet6.0' was inherited from group 'junos-defaults'
## 'inet6.2' was inherited from group 'junos-defaults'
## 'inet6.3' was inherited from group 'junos-defaults'
##
import-rib [ inet6.0 inet6.2 inet6.3 ];
}
}
Voir aussi
Exemple : Création de tables de routage
Cet exemple montre comment créer une table de routage personnalisée.
Exigences
Dans cet exemple, aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise.
Aperçu
La création de tables de routage est facultative. Vous avez peut-être des considérations de stratégie qui vous amèneraient à créer des tables de routage distinctes pour gérer la propagation des informations de routage. Cette capacité est rarement utilisée, mais elle est démontrée ici par souci d’exhaustivité.
Si vous ne créez aucune table de routage, Junos OS utilise ses tables de routage par défaut.
Si vous souhaitez ajouter des routes statiques, agrégées, générées ou martiennes uniquement à la table de routage unicast IPv4 par défaut (inet.0), vous n’avez pas besoin de créer de tables de routage car, par défaut, ces routes sont ajoutées à inet.0. Vous pouvez ajouter ces routes en incluant les instructions statiques, d’agrégation, de génération et martians de génération.
Pour créer explicitement une table de routage, incluez l’instruction et les rib instructions enfant sous l’instruction rib .
Le nom de la table de routage, , inclut la famille de protocoles, routing-table-nameéventuellement suivie d’un point et d’un nombre. La famille de protocoles peut être inet pour la famille IPv4, inet6 pour la famille IPv6 ou iso pour la famille de protocoles de l’Organisation internationale de normalisation (ISO). Le nombre représente l’instance de routage. La première occurrence est 0.
Cet exemple montre comment configurer une table de routage IPv4 personnalisée appelée inet.14. L’exemple montre également comment remplir la table de routage avec une seule route statique.
Sur les commutateurs EX Series, seules les routes apprises dynamiquement peuvent être importées d’un groupe de tables de routage à un autre.
Configuration
Configuration rapide de la CLI
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, puis copiez et collez les commandes dans l’interface de ligne de commande au niveau de la [edit] hiérarchie.
set routing-options rib inet.14 static route 10.2.0.0/16 discard
Procédure
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour plus d’informations sur la navigation dans l’interface de ligne de commande, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration dans le Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour créer une table de routage, procédez comme suit :
Configurez la table de routage.
[edit routing-options] user@host# set rib inet.14 static route 10.2.0.0/16 discard
Si vous avez terminé de configurer l’appareil, validez la configuration.
[edit] user@host# commit
Résultats
Confirmez votre configuration en exécutant la show routing-options commande. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
user@host# show routing-options
rib inet.14 {
static {
route 10.2.0.0/16 discard;
}
}
Vérification
Vérifiez que la configuration fonctionne correctement.
Vérification de la table de routage
But
Assurez-vous que l’itinéraire statique apparaît dans la table de routage personnalisée.
Action
user@host> show route table inet.14
inet.14: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
Restart Complete
+ = Active Route, - = Last Active, * = Both
10.2.0.0/16 *[Static/5] 00:00:09
Discard
Signification
L’itinéraire statique se trouve dans la table de routage personnalisée.
Exemple : Exportation de routes spécifiques d’une table de routage vers une autre table de routage
Cet exemple montre comment dupliquer des routes spécifiques d’une table de routage vers une autre table de routage au sein de la même instance de routage.
Exigences
Aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise avant de configurer cet exemple.
Aperçu
Cet exemple utilise l’instruction auto-export et l’instruction rib-group pour atteindre l’objectif d’exportation de routes spécifiques d’une table de routage à une autre.
Tenez compte des points suivants :
Lorsque l’exportation automatique est configurée dans une instance de routage, les stratégies vrf-import et vrf-export sont examinées. En fonction de la cible de route et des informations de communauté contenues dans les stratégies, la fonction d’exportation automatique effectue une fuite de route entre les tables inet.0 de l’instance de routage locale.
Vous pouvez utiliser l’instruction
rib-groups’il est nécessaire d’importer des routes dans des tables autres que instance.inet.0. Pour utiliser un groupe RIB avec l’exportation automatique, l’instance de routage doit spécifier des politiques vrf-import et vrf-export explicites. Les stratégies vrf-import et vrf-export peuvent être étendues pour contenir des termes supplémentaires afin de filtrer les routes selon les besoins du groupe RIB.
Dans cet exemple, les routes internes d’accès sont ajoutées à la table de routage vpna.inet.0. Les routes internes d’accès sont également dupliquées dans la table de routage vpna.inet.2.
Configuration
- Configuration rapide de la CLI
- Configuration d’une exportation de route spécifique entre les tables de routage
Configuration rapide de la CLI
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, puis copiez et collez les commandes dans l’interface de ligne de commande au niveau de la [edit] hiérarchie.
set interfaces fe-1/3/1 vlan-tagging set interfaces fe-1/3/1 unit 0 vlan-id 512 set interfaces fe-1/3/1 unit 0 family inet address 10.168.100.3/24 set interfaces lo0 unit 0 family inet address 192.168.3.3/32 set routing-options rib-groups rib-group-vpna-access-internal import-rib vpna.inet.2 set routing-options autonomous-system 63000 set policy-options policy-statement vpna-export term a from protocol bgp set policy-options policy-statement vpna-export term a then community add vpna-comm set policy-options policy-statement vpna-export term a then accept set policy-options policy-statement vpna-export term b from protocol access-internal set policy-options policy-statement vpna-export term b then accept set policy-options policy-statement vpna-export term c then reject set policy-options policy-statement vpna-import term a from protocol bgp set policy-options policy-statement vpna-import term a from community vpna-comm set policy-options policy-statement vpna-import term a then accept set policy-options policy-statement vpna-import term b from instance vpna set policy-options policy-statement vpna-import term b from protocol access-internal set policy-options policy-statement vpna-import term b then accept set policy-options policy-statement vpna-import term c then reject set policy-options community vpna-comm members target:63000:100 set routing-instances vpna instance-type vrf set routing-instances vpna interface fe-1/3/1.1 set routing-instances vpna route-distinguisher 100:1 set routing-instances vpna vrf-import vpna-import set routing-instances vpna vrf-export vpna-export set routing-instances vpna routing-options auto-export family inet unicast rib-group rib-group-vpna-access-internal set routing-instances vpna protocols bgp group bgp-vpna type external set routing-instances vpna protocols bgp group bgp-vpna family inet multicast set routing-instances vpna protocols bgp group bgp-vpna peer-as 100 set routing-instances vpna protocols bgp group bgp-vpna neighbor 10.0.0.10
Configuration d’une exportation de route spécifique entre les tables de routage
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette procédure, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration dans le Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer l’appareil :
Configurez les interfaces.
[edit interfaces fe-1/3/1] user@host# set vlan-tagging user@host# set unit 0 vlan-id 512 user@host# set unit 0 family inet address 10.168.100.3/24 [edit interfaces lo0 unit 0] user@host# set family inet address 192.168.3.3/32
-
Configurez la stratégie de routage qui spécifie les routes particulières pour l’importation dans vpna.inet.0 et l’exportation à partir de vpna.inet.0.
[edit policy-options policy-statement vpna-export] user@host# set term a from protocol bgp user@host# set term a then community add vpna-comm user@host# set term a then accept user@host# set term b from protocol access-internal user@host# set term b then accept user@host# set term c then reject [edit policy-options policy-statement vpna-import] user@host# set term a from protocol bgp user@host# set term a from community vpna-comm user@host# set term a then accept user@host# set term b from instance vpna user@host# set term b from protocol access-internal user@host# set term b then accept user@host# set term c then reject [edit policy-options] user@host# set community vpna-comm members target:63000:100
-
Configurez l’instance de routage.
[edit routing-instances vpna] user@host# set instance-type vrf user@host# set interface fe-1/3/1.1 user@host# set route-distinguisher 100:1 user@host# set vrf-import vpna-import user@host# set vrf-export vpna-export
Les instructions vrf-import et permettent d’appliquer les stratégies de routage vpna-import et
vrf-exportvpna-export. Configurez le groupe RIB et importez les routes dans la table de routage vpna.inet.2 .
[edit routing-options] user@host# set rib-groups rib-group-vpna-access-internal import-rib vpna.inet.2
Configurez l’instruction
auto-exportpour permettre l’exportation des routes d’une table de routage vers une autre.[edit routing-options] user@host# set auto-export family inet unicast rib-group rib-group-vpna-access-internal
Configurez BGP.
[edit routing-instances vpna protocols bgp group bgp-vpna] user@host# set type external user@host# set family inet multicast user@host# set peer-as 100 user@host# set neighbor 100.0.0.10
Configurez le numéro du système autonome (AS).
[edit routing-options] user@host# set autonomous-system 63000
Résultats
À partir du mode configuration, confirmez votre configuration en entrant les show interfacescommandes , show policy-options, show routing-optionset show routing-instances . Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
user@host# show interfaces
fe-1/3/1 {
vlan-tagging;
unit 0 {
vlan-id 512;
family inet {
address 10.168.100.3/24;
}
}
}
lo0 {
unit 0 {
family inet {
address 192.168.3.3/32;
}
}
}
user@host# show policy-options
policy-statement vpna-export {
term a {
from {
protocol bgp;
}
then {
community add vpna-comm;
accept;
}
}
term b {
from protocol access-internal;
then accept;
}
term c {
then reject;
}
}
policy-statement vpna-import {
term a {
from {
protocol bgp;
community vpna-comm;
}
then accept;
}
term b {
from {
instance vpna;
protocol access-internal;
}
then accept;
}
term c {
then reject;
}
}
community vpna-comm members target:63000:100;
user@host# show routing-options
rib-groups {
rib-group-vpna-access-internal {
import-rib vpna.inet.2;
}
}
autonomous-system 63000;
user@host# show routing-instances
vpna {
instance-type vrf;
interface fe-1/3/1.1;
route-distinguisher 100:1;
vrf-import vpna-import;
vrf-export vpna-export;
routing-options {
auto-export {
family inet {
unicast {
rib-group rib-group-vpna-access-internal;
}
}
}
}
protocols {
bgp {
group bgp-vpna {
type external;
family inet {
multicast;
}
peer-as 100;
neighbor 100.0.0.10;
}
}
}
}
Si vous avez terminé de configurer l’appareil, entrez commit à partir du mode de configuration.
Vérification
Vérifiez que la configuration fonctionne correctement en exécutant les show table route vpna.inet.0 commandes and show route table vpna.inet.2 .