Détection de transfert bidirectionnel pour routes statiques
Comprendre BFD pour les routes statiques pour une détection plus rapide des défaillances réseau
Le protocole BFD (Bidirectional Forwarding Detection) est un mécanisme de bonjour simple qui détecte les défaillances d’un réseau. BFD fonctionne avec une grande variété d’environnements réseau et de topologies. Deux appareils de routage échangent des paquets BFD. Les paquets Hello sont envoyés à un intervalle régulier spécifié. Une défaillance de voisin est détectée lorsque le périphérique de routage cesse de recevoir une réponse après un intervalle spécifié. Les minuteurs de détection de défaillance BFD ont des limites de temps plus courtes que les mécanismes de détection de défaillance de route statique, ce qui leur permet une détection plus rapide.
Les minuteries de détection de défaillance BFD peuvent être ajustées pour être plus rapides ou plus lentes. Plus la valeur du minuteur de détection de défaillance BFD est basse, plus la détection de défaillance est rapide et vice versa. Par exemple, les minuteurs peuvent s’adapter à une valeur plus élevée si la contiguïté échoue (c’est-à-dire qu’ils détectent les défaillances plus lentement). Un voisin peut également négocier une valeur supérieure à la valeur configurée pour une minuterie. Les minuteries s’adaptent à une valeur plus élevée lorsqu’un rabat de session BFD se produit plus de trois fois en l’espace de 15 secondes. Un algorithme de désactivation augmente l’intervalle de réception (Rx) de deux si l’instance BFD locale est la raison du rabat de session. L’intervalle de transmission (Tx) est augmenté de deux si l’instance BFD distante est la raison du rabat de session. Vous pouvez utiliser la commande pour rétablir les clear bfd adaptation
valeurs configurées des minuteurs d’intervalle BFD. La clear bfd adaptation
commande est sans impact, ce qui signifie qu’elle n’affecte pas le flux de trafic sur le périphérique de routage.
Par défaut, BFD est pris en charge sur les routes statiques à saut unique.
Sur les périphériques MX Series, le BFD à sauts multiples n’est pas pris en charge sur une route statique si la route statique est configurée avec plusieurs sauts suivants. Il est recommandé d’éviter d’utiliser plusieurs sauts suivants lorsqu’un BFD à sauts multiples est requis pour une route statique.
Pour activer la détection des défaillances, incluez l’instruction dans la configuration de l’itinéraire bfd-liveness-detection
statique.
À partir de Junos OS version 15.1X49-D70 et Junos OS version 17.3R1, la bfd-liveness-detection
commande inclut le champ description. La description est un attribut sous l’objet bfd-liveness-detection et n’est prise en charge que par les pare-feu SRX Series. Ce champ s’applique uniquement aux itinéraires statiques.
Dans Junos OS version 9.1 et ultérieure, le protocole BFD est pris en charge pour les routes statiques IPv6. Les adresses IPv6 unicast globales et lien-local sont prises en charge pour les routes statiques. Le protocole BFD n’est pas pris en charge sur les adresses IPv6 multicast ou anycast. Pour IPv6, le protocole BFD prend uniquement en charge les routes statiques et uniquement dans Junos OS version 9.3 et ultérieure. IPv6 pour BFD est également pris en charge pour le protocole eBGP.
Pour configurer le protocole BFD pour les routes statiques IPv6, incluez l’instruction bfd-liveness-detection
au niveau de la [edit routing-options rib inet6.0 static route destination-prefix]
hiérarchie.
Dans Junos OS version 8.5 et ultérieure, vous pouvez configurer un intervalle de maintien pour spécifier la durée pendant laquelle la session BFD doit rester active avant qu’une notification de changement d’état ne soit envoyée.
Pour spécifier l’intervalle d’attente, incluez l’instruction holddown-interval
dans la configuration BFD. Vous pouvez configurer un nombre compris entre 0 et 255 000 millisecondes. La valeur par défaut est 0. Si la session BFD tombe en panne puis remonte pendant l’intervalle de maintien, le minuteur est redémarré.
Si une seule session BFD inclut plusieurs routes statiques, l’intervalle de maintien avec la valeur la plus élevée est utilisé.
Pour spécifier les intervalles minimaux de transmission et de réception pour la détection des défaillances, incluez l’instruction minimum-interval
dans la configuration BFD.
Cette valeur représente à la fois l’intervalle minimum après lequel le périphérique de routage local transmet des paquets hello et l’intervalle minimum après lequel le périphérique de routage s’attend à recevoir une réponse du voisin avec lequel il a établi une session BFD. Vous pouvez configurer un nombre compris entre 1 et 255 000 millisecondes. Si vous le souhaitez, au lieu d’utiliser cette instruction, vous pouvez configurer séparément les intervalles minimal de transmission et de réception à l’aide de l’intervalle minimal d’intervalle de transmission et minimum-receive-interval
des instructions.
Les commutateurs EX4600 ne prennent pas en charge des valeurs d’intervalle minimales inférieures à 1 seconde.
BFD est un protocole intensif qui consomme des ressources système. La spécification d’un intervalle minimal pour BFD inférieur à 100 ms pour les sessions basées sur le moteur de routage et à 10 ms pour les sessions BFD distribuées peut provoquer des battements de BFD indésirables.
En fonction de votre environnement réseau, les recommandations supplémentaires suivantes peuvent s’appliquer :
-
Pour les déploiements réseau à grande échelle avec un grand nombre de sessions BFD, spécifiez un intervalle minimal de 300 ms pour les sessions basées sur le moteur de routage et de 100 ms pour les sessions BFD distribuées.
-
Pour les déploiements réseau à très grande échelle avec un grand nombre de sessions BFD, contactez le service clientèle de Juniper Networks pour plus d’informations.
-
Pour que les sessions BFD restent actives pendant un événement de basculement du moteur de routage lorsque le routage actif non-stop (NSR) est configuré, spécifiez un intervalle minimal de 2500 ms pour les sessions basées sur le moteur de routage. Pour les sessions BFD distribuées avec NSR configuré, les recommandations d’intervalle minimal restent inchangées et dépendent uniquement de votre déploiement réseau.
Pour spécifier l’intervalle de réception minimal pour la détection des défaillances, incluez l’instruction minimum-receive-interval
dans la configuration BFD. Cette valeur représente l’intervalle minimum après lequel le périphérique de routage s’attend à recevoir une réponse d’un voisin avec lequel il a établi une session BFD. Vous pouvez configurer un nombre compris entre 1 et 255 000 millisecondes. Si vous le souhaitez, au lieu d’utiliser cette instruction, vous pouvez configurer l’intervalle minimal de réception à l’aide de l’instruction minimum-interval
au niveau de la [edit routing-options static route destination-prefix bfd-liveness-detection]
hiérarchie.
Pour spécifier le nombre de paquets hello non reçus par le voisin à l’origine de la déclaration de l’interface d’origine, incluez l’instruction multiplier
dans la configuration BFD. La valeur par défaut est 3. Vous pouvez configurer un nombre compris entre 1 et 255.
Pour spécifier un seuil de détection de l’adaptation du temps de détection, incluez l’instruction threshold
dans la configuration BFD.
Lorsque le temps de détection de session BFD s’adapte à une valeur égale ou supérieure au seuil, une interruption unique et un message de journal système sont envoyés. Le temps de détection est basé sur le multiplicateur de la valeur de l’intervalle minimal ou de l’intervalle de réception minimum . Le seuil doit être une valeur supérieure au multiplicateur de l’une de ces valeurs configurées. Par exemple, si l’intervalle de réception minimal est de 300 ms et que le multiplicateur est de 3, le temps de détection total est de 900 ms. Par conséquent, le seuil de temps de détection doit avoir une valeur supérieure à 900.
Pour spécifier l’intervalle de transmission minimal pour la détection des défaillances, incluez l’instruction transmit-interval minimum-interval
dans la configuration BFD.
Cette valeur représente l’intervalle minimal après lequel le périphérique de routage local transmet les paquets hello au voisin avec lequel il a établi une session BFD. Vous pouvez configurer une valeur comprise entre 1 et 255 000 millisecondes. Si vous le souhaitez, au lieu d’utiliser cette instruction, vous pouvez configurer l’intervalle de transmission minimal à l’aide de l’instruction minimum-interval
au niveau de la [edit routing-options static route destination-prefix bfd-liveness-detection]
hiérarchie.
Pour spécifier le seuil d’adaptation de l’intervalle de transmission, incluez l’instruction transmit-interval threshold
dans la configuration BFD.
La valeur seuil doit être supérieure à l’intervalle de transmission. Lorsque le temps de transmission de session BFD s’adapte à une valeur supérieure au seuil, une seule interruption et un message de journal système sont envoyés. Le temps de détection est basé sur le multiplicateur de la valeur de l’intervalle minimal ou de l’instruction minimum-receive-interval
au niveau de la [edit routing-options static route destination-prefix bfd-liveness-detection]
hiérarchie. Le seuil doit être une valeur supérieure au multiplicateur de l’une de ces valeurs configurées.
Pour spécifier la version BFD, incluez l’instruction version
dans la configuration BFD. Par défaut, la version est détectée automatiquement.
Pour inclure une adresse IP pour le saut suivant de la session BFD, incluez l’instruction neighbor
dans la configuration BFD.
Vous devez configurer l’instruction neighbor
si le saut suivant spécifié est un nom d’interface. Si vous spécifiez une adresse IP comme saut suivant, cette adresse est utilisée comme adresse voisine pour la session BFD.
Dans Junos OS version 9.0 et ultérieure, vous pouvez configurer les sessions BFD pour qu’elles ne s’adaptent pas aux conditions changeantes du réseau. Pour désactiver l’adaptation BFD, incluez l’instruction no-adaptation
dans la configuration BFD.
Nous vous recommandons de ne pas désactiver l’adaptation BFD sauf s’il est préférable de ne pas avoir d’adaptation BFD dans votre réseau.
Si BFD n’est configuré qu’à une extrémité d’un itinéraire statique, le routage est supprimé de la table de routage. BFD établit une session lorsque BFD est configuré aux deux extrémités de la route statique.
BFD n’est pas pris en charge sur les familles d’adresses ISO dans les routes statiques. BFD prend en charge IS-IS.
Si vous configurez GRES ( Graceful Routing Engine Switchover ) en même temps que BFD, GRES ne conserve pas les informations d’état BFD lors d’un basculement.
Voir aussi
Exemple : configuration de BFD pour les routes statiques afin d’accélérer la détection des défaillances réseau
Cet exemple montre comment configurer la détection de transfert bidirectionnel (BFD) pour les routes statiques.
Exigences
Dans cet exemple, aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise.
Aperçu
Il existe de nombreuses applications pratiques pour les routes statiques. Le routage statique est souvent utilisé à la périphérie du réseau pour prendre en charge le raccordement aux réseaux stub qui, compte tenu de leur point d’entrée et de sortie uniques, sont bien adaptés à la simplicité d’un itinéraire statique. Dans Junos OS, les routes statiques ont une préférence globale de 5. Les itinéraires statiques sont activés si le saut suivant spécifié est accessible.
Dans cet exemple, vous configurez l’itinéraire statique 192.168.47.0/24 du réseau fournisseur vers le réseau client, en utilisant l’adresse de saut suivant 172.16.1.2. Vous configurez également un itinéraire statique par défaut de 0.0.0.0/0 du réseau client vers le réseau du fournisseur, à l’aide d’une adresse de saut suivant de 172.16.1.1.
À des fins de démonstration, certaines interfaces de bouclage sont configurées sur les appareils B et D. Ces interfaces de bouclage fournissent des adresses ping et vérifient ainsi que les routes statiques fonctionnent.
La figure 1 montre l’exemple de réseau.
Topologie
Configuration
Configuration rapide de l’interface de ligne de commande
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-collez les commandes dans l’interface de ligne de commande au niveau de la [edit]
hiérarchie.
Appareil B
set interfaces ge-1/2/0 unit 0 description B->D set interfaces ge-1/2/0 unit 0 family inet address 172.16.1.1/24 set interfaces lo0 unit 57 family inet address 10.0.0.1/32 set interfaces lo0 unit 57 family inet address 10.0.0.2/32 set routing-options static route 192.168.47.0/24 next-hop 172.16.1.2 set routing-options static route 192.168.47.0/24 bfd-liveness-detection minimum-interval 1000 set routing-options static route 192.168.47.0/24 bfd-liveness-detection description Site-xxx set protocols bfd traceoptions file bfd-trace set protocols bfd traceoptions flag all
Appareil D
set interfaces ge-1/2/0 unit 1 description D->B set interfaces ge-1/2/0 unit 1 family inet address 172.16.1.2/24 set interfaces lo0 unit 2 family inet address 192.168.47.5/32 set interfaces lo0 unit 2 family inet address 192.168.47.6/32 set routing-options static route 0.0.0.0/0 next-hop 172.16.1.1 set routing-options static route 0.0.0.0/0 bfd-liveness-detection minimum-interval 1000 set protocols bfd traceoptions file bfd-trace set protocols bfd traceoptions flag all
Procédure
Procédure étape par étape
L’exemple suivant nécessite que vous naviguiez à 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 de configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer BFD pour les routes statiques :
Sur l’appareil B, configurez les interfaces.
[edit interfaces] user@B# set ge-1/2/0 unit 0 description B->D user@B# set ge-1/2/0 unit 0 family inet address 172.16.1.1/24 user@B# set lo0 unit 57 family inet address 10.0.0.1/32 user@B# set lo0 unit 57 family inet address 10.0.0.2/32
Sur l’appareil B, créez un itinéraire statique et définissez l’adresse du saut suivant.
[edit routing-options] user@B# set static route 192.168.47.0/24 next-hop 172.16.1.2
Sur l’appareil B, configurez BFD pour l’itinéraire statique.
[edit routing-options] user@B# set static route 192.168.47.0/24 bfd-liveness-detection minimum-interval 1000 set routing-options static route 192.168.47.0/24 bfd-liveness-detection description Site-xxx
Sur l’appareil B, configurez les opérations de suivi pour BFD.
[edit protocols] user@B# set bfd traceoptions file bfd-trace user@B# set bfd traceoptions flag all
Si vous avez terminé de configurer l’appareil B, validez la configuration.
[edit] user@B# commit
Sur l’appareil D, configurez les interfaces.
[edit interfaces] user@D# set ge-1/2/0 unit 1 description D->B user@D# set ge-1/2/0 unit 1 family inet address 172.16.1.2/24 user@D# set lo0 unit 2 family inet address 192.168.47.5/32 user@D# set lo0 unit 2 family inet address 192.168.47.6/32
Sur l’appareil D, créez un itinéraire statique et définissez l’adresse du saut suivant.
[edit routing-options] user@D# set static route 0.0.0.0/0 next-hop 172.16.1.1
Sur le périphérique D, configurez BFD pour l’itinéraire statique.
[edit routing-options] user@D# set static route 0.0.0.0/0 bfd-liveness-detection minimum-interval 1000
Sur l’appareil D, configurez les opérations de suivi pour BFD.
[edit protocols] user@D# set bfd traceoptions file bfd-trace user@D# set bfd traceoptions flag all
Si vous avez terminé de configurer le périphérique D, validez la configuration.
[edit] user@D# commit
Résultats
Confirmez votre configuration en émettant les show interfaces
commandes , show protocols
et show routing-options
. Si la sortie n’affiche pas la configuration voulue, répétez les instructions de cet exemple pour corriger la configuration.
Appareil B
user@B# show interfaces ge-1/2/0 { unit 0 { description B->D; family inet { address 172.16.1.1/24; } } } lo0 { unit 57 { family inet { address 10.0.0.1/32; address 10.0.0.2/32; } } }
user@D# show protocols bfd { traceoptions { file bfd-trace; flag all; } }
user@B# show routing-options static { route 192.168.47.0/24 { next-hop 172.16.1.2; bfd-liveness-detection { description Site- xxx; minimum-interval 1000; } } }
Appareil D
user@D# show interfaces ge-1/2/0 { unit 1 { description D->B; family inet { address 172.16.1.2/24; } } } lo0 { unit 2 { family inet { address 192.168.47.5/32; address 192.168.47.6/32; } } }
user@D# show routing-options static { route 0.0.0.0/0 { next-hop 172.16.1.1; bfd-liveness-detection { description Site - xxx; minimum-interval 1000; } } }
Vérification
Vérifiez que la configuration fonctionne correctement.
Vérification de l’activation des sessions BFD
But
Vérifiez que les sessions BFD sont actives et affichez les détails des sessions BFD.
Action
En mode opérationnel, saisissez la show bfd session extensive
commande.
user@B> show bfd session extensive Detect Transmit Address State Interface Time Interval Multiplier 172.16.1.2 Up lt-1/2/0.0 3.000 1.000 3 Client Static, description Site-xxx, TX interval 1.000, RX interval 1.000 Session up time 00:14:30 Local diagnostic None, remote diagnostic None Remote state Up, version 1 Replicated, routing table index 172 Min async interval 1.000, min slow interval 1.000 Adaptive async TX interval 1.000, RX interval 1.000 Local min TX interval 1.000, minimum RX interval 1.000, multiplier 3 Remote min TX interval 1.000, min RX interval 1.000, multiplier 3 Local discriminator 2, remote discriminator 1 Echo mode disabled/inactive 1 sessions, 1 clients Cumulative transmit rate 1.0 pps, cumulative receive rate 1.0 pps
Le est description Site- <xxx> pris en charge uniquement sur les pare-feu SRX Series.
Si chaque client a plus d’un champ de description, il affiche « et plus » avec le premier champ de description.
user@D> show bfd session extensive Detect Transmit Address State Interface Time Interval Multiplier 172.16.1.1 Up lt-1/2/0.1 3.000 1.000 3 Client Static, TX interval 1.000, RX interval 1.000 Session up time 00:14:35 Local diagnostic None, remote diagnostic None Remote state Up, version 1 Replicated, routing table index 170 Min async interval 1.000, min slow interval 1.000 Adaptive async TX interval 1.000, RX interval 1.000 Local min TX interval 1.000, minimum RX interval 1.000, multiplier 3 Remote min TX interval 1.000, min RX interval 1.000, multiplier 3 Local discriminator 1, remote discriminator 2 Echo mode disabled/inactive 1 sessions, 1 clients Cumulative transmit rate 1.0 pps, cumulative receive rate 1.0 pps
Sens
La TX interval 1.000, RX interval 1.000
sortie représente le paramètre configuré avec l’instruction minimum-interval
. Toutes les autres sorties représentent les paramètres par défaut de BFD. Pour modifier les paramètres par défaut, incluez les instructions facultatives sous l’instruction bfd-liveness-detection
.
Affichage détaillé des événements BFD
But
Affichez le contenu du fichier de trace BFD pour faciliter le dépannage, si nécessaire.
Action
En mode opérationnel, saisissez la file show /var/log/bfd-trace
commande.
user@B> file show /var/log/bfd-trace Nov 23 14:26:55 Data (9) len 35: (hex) 42 46 44 20 70 65 72 69 6f 64 69 63 20 78 6d 69 74 20 72 Nov 23 14:26:55 PPM Trace: BFD periodic xmit rt tbl index 172 Nov 23 14:26:55 Received Downstream TraceMsg (22) len 108: Nov 23 14:26:55 IfIndex (3) len 4: 0 Nov 23 14:26:55 Protocol (1) len 1: BFD Nov 23 14:26:55 Data (9) len 83: (hex) 70 70 6d 64 5f 62 66 64 5f 73 65 6e 64 6d 73 67 20 3a 20 Nov 23 14:26:55 PPM Trace: ppmd_bfd_sendmsg : socket 12 len 24, ifl 78 src 172.16.1.1 dst 172.16.1.2 errno 65 Nov 23 14:26:55 Received Downstream TraceMsg (22) len 93: Nov 23 14:26:55 IfIndex (3) len 4: 0 Nov 23 14:26:55 Protocol (1) len 1: BFD Nov 23 14:26:55 Data (9) len 68: (hex) 42 46 44 20 70 65 72 69 6f 64 69 63 20 78 6d 69 74 20 74
Sens
Les messages BFD sont en cours d’écriture dans le fichier de suivi.
Comprendre l’authentification BFD pour la sécurité des routes statiques
La détection de transfert bidirectionnel (BFD) permet de détecter rapidement les défaillances de communication entre des systèmes adjacents. Par défaut, l’authentification pour les sessions BFD est désactivée. Cependant, lorsque vous exécutez BFD sur des protocoles de couche réseau, le risque d’attaques de service peut être important.
Nous vous recommandons fortement d’utiliser l’authentification si vous exécutez BFD sur plusieurs sauts ou via des tunnels non sécurisés.
À partir de Junos OS version 9.6, Junos OS prend en charge l’authentification pour les sessions BFD exécutées sur des routes statiques IPv4 et IPv6. L’authentification BFD n’est pas prise en charge sur les sessions OAM MPLS. L’authentification BFD n’est prise en charge que dans les versions canadienne et américaine de l’image Junos OS et n’est pas disponible dans la version d’exportation.
L’EX3300 prend uniquement en charge BFD sur les routes statiques.
Vous authentifiez les sessions BFD en spécifiant un algorithme d’authentification et un trousseau, puis en associant ces informations de configuration à un trousseau d’authentification de sécurité à l’aide du nom du trousseau.
Les sections suivantes décrivent les algorithmes d’authentification, les trousseaux de sécurité et le niveau d’authentification pouvant être configurés pris en charge :
- Algorithmes d’authentification BFD
- Trousseaux d’authentification de sécurité
- Authentification stricte ou souple
Algorithmes d’authentification BFD
Junos OS prend en charge les algorithmes suivants pour l’authentification BFD :
simple-password : mot de passe en texte brut. Un à 16 octets de texte brut sont utilisés pour authentifier la session BFD. Un ou plusieurs mots de passe peuvent être configurés. Cette méthode est la moins sécurisée et ne doit être utilisée que lorsque les sessions BFD ne sont pas soumises à l’interception de paquets.
keyed-md5 : algorithme de hachage Keyed Message Digest 5 pour les sessions dont les intervalles de transmission et de réception sont supérieurs à 100 ms. Pour authentifier la session BFD, MD5 à clé utilise une ou plusieurs clés secrètes (générées par l’algorithme) et un numéro de séquence mis à jour périodiquement. Avec cette méthode, les paquets sont acceptés à la fin de la réception de la session si l’une des clés correspond et que le numéro de séquence est supérieur ou égal au dernier numéro de séquence reçu. Bien que plus sûre qu’un simple mot de passe, cette méthode est vulnérable aux attaques par relecture. L’augmentation de la vitesse à laquelle le numéro de séquence est mis à jour peut réduire ce risque.
meticulous-keyed-md5 : algorithme de hachage méticuleux du Message Digest 5. Cette méthode fonctionne de la même manière que MD5 à clé, mais le numéro de séquence est mis à jour avec chaque paquet. Bien que plus sûre que MD5 à clé et des mots de passe simples, cette méthode peut prendre plus de temps pour authentifier la session.
keyed-sha-1 : algorithme de hachage sécurisé à clé I pour les sessions dont les intervalles d’émission et de réception sont supérieurs à 100 ms. Pour authentifier la session BFD, keyed SHA utilise une ou plusieurs clés secrètes (générées par l’algorithme) et un numéro de séquence mis à jour périodiquement. La clé n’est pas transportée dans les paquets. Avec cette méthode, les paquets sont acceptés à la fin de la réception de la session si l’une des clés correspond et que le numéro de séquence est supérieur au dernier numéro de séquence reçu.
meticulous-keyed-sha-1—Algorithme de hachage sécurisé méticuleux à clé I. Cette méthode fonctionne de la même manière que le SHA à clé, mais le numéro de séquence est mis à jour avec chaque paquet. Bien que plus sûre que les SHA à clé et les mots de passe simples, cette méthode peut prendre plus de temps pour authentifier la session.
Le routage actif non-stop (NSR) n’est pas pris en charge avec les algorithmes d’authentification méticuleux-keyed-md5 et meticulous-keyed-sha-1. Les sessions BFD utilisant ces algorithmes peuvent tomber en panne après un basculement.
Les commutateurs QFX5000 Series et EX4600 ne prennent pas en charge des valeurs d’intervalle minimales inférieures à 1 seconde.
Trousseaux d’authentification de sécurité
Le trousseau d’authentification de sécurité définit les attributs d’authentification utilisés pour les mises à jour des clés d’authentification. Lorsque le trousseau d’authentification de sécurité est configuré et associé à un protocole via le nom du trousseau, les mises à jour des clés d’authentification peuvent avoir lieu sans interrompre les protocoles de routage et de signalisation.
Le trousseau d’authentification contient un ou plusieurs trousseaux. Chaque trousseau contient une ou plusieurs clés. Chaque clé contient les données secrètes et l’heure à laquelle la clé devient valide. L’algorithme et le trousseau doivent être configurés aux deux extrémités de la session BFD, et ils doivent correspondre. Toute incompatibilité de configuration empêche la création de la session BFD.
BFD permet plusieurs clients par session, et chaque client peut avoir son propre trousseau et son propre algorithme défini. Pour éviter toute confusion, nous vous recommandons de ne spécifier qu’un seul trousseau d’authentification de sécurité.
Authentification stricte ou souple
Par défaut, l’authentification stricte est activée et l’authentification est vérifiée aux deux extrémités de chaque session BFD. Si vous le souhaitez, pour faciliter la migration des sessions non authentifiées vers les sessions authentifiées, vous pouvez configurer la vérification libre. Lorsque la vérification en temps partiel est configurée, les paquets sont acceptés sans que l’authentification soit vérifiée à chaque fin de session. Cette fonctionnalité est destinée uniquement aux périodes transitoires.
Exemple : Configuration de l’authentification BFD pour sécuriser les routes statiques
Cet exemple montre comment configurer l’authentification BFD (Bidirectional Forwarding Detection) pour les routes statiques.
Exigences
Junos OS version 9.6 ou ultérieure (version canadienne et américaine).
L’authentification BFD n’est prise en charge que dans les versions canadienne et américaine de l’image Junos OS et n’est pas disponible dans la version d’exportation.
Aperçu
Vous pouvez configurer l’authentification pour les sessions BFD exécutées sur des routes statiques IPv4 et IPv6. Les instances de routage et les systèmes logiques sont également pris en charge.
Les étapes suivantes sont nécessaires pour configurer l’authentification sur une session BFD :
Spécifiez l’algorithme d’authentification BFD pour l’itinéraire statique.
Associez le trousseau d’authentification à la route statique.
Configurez le trousseau d’authentification de sécurité associé. Cela doit être configuré sur le routeur principal.
Nous vous recommandons de spécifier la vérification de l’authentification en vrac si vous passez de sessions non authentifiées à des sessions authentifiées.
[edit] user@host> set routing-options static route ipv4 bfd-liveness-detection authentication loose-check
La figure 2 montre l’exemple de réseau.
Topologie
Configuration
Configuration rapide de l’interface de ligne de commande
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-collez les commandes dans l’interface de ligne de commande au niveau de la [edit]
hiérarchie.
Appareil B
set interfaces ge-1/2/0 unit 0 description B->D set interfaces ge-1/2/0 unit 0 family inet address 172.16.1.1/24 set interfaces lo0 unit 57 family inet address 10.0.0.1/32 set interfaces lo0 unit 57 family inet address 10.0.0.2/32 set routing-options static route 192.168.47.0/24 next-hop 172.16.1.2 set routing-options static route 192.168.47.0/24 bfd-liveness-detection minimum-interval 1000 set routing-options static route 192.168.47.0/24 bfd-liveness-detection description Site-xxx set routing-options static route 192.168.47.0/24 bfd-liveness-detection authentication key-chain bfd-kc4 set routing-options static route 192.168.47.0/24 bfd-liveness-detection authentication algorithm keyed-sha-1 set security authentication-key-chains key-chain bfd-kc4 key 5 secret "$ABC123$ABC123$ABC123" set security authentication-key-chains key-chain bfd-kc4 key 5 start-time "2011-1-1.12:00:00 -0800"
Appareil D
set interfaces ge-1/2/0 unit 1 description D->B set interfaces ge-1/2/0 unit 1 family inet address 172.16.1.2/24 set interfaces lo0 unit 2 family inet address 192.168.47.5/32 set interfaces lo0 unit 2 family inet address 192.168.47.6/32 set routing-options static route 0.0.0.0/0 next-hop 172.16.1.1 set routing-options static route 0.0.0.0/0 bfd-liveness-detection minimum-interval 1000 set routing-options static route 0.0.0.0/0 bfd-liveness-detection authentication key-chain bfd-kc4 set routing-options static route 0.0.0.0/0 bfd-liveness-detection authentication algorithm keyed-sha-1 set security authentication-key-chains key-chain bfd-kc4 key 5 secret "$ABC123$ABC123$ABC123" set security authentication-key-chains key-chain bfd-kc4 key 5 start-time "2011-1-1.12:00:00 -0800"
Procédure
Procédure étape par étape
L’exemple suivant nécessite que vous naviguiez à 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 de configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer BFD pour les routes statiques :
Sur l’appareil B, configurez les interfaces.
[edit interfaces] user@B# set ge-1/2/0 unit 0 description B->D user@B# set ge-1/2/0 unit 0 family inet address 172.16.1.1/24 user@B# set lo0 unit 57 family inet address 10.0.0.1/32 user@B# set lo0 unit 57 family inet address 10.0.0.2/32
Sur l’appareil B, créez un itinéraire statique et définissez l’adresse du saut suivant.
[edit routing-options] user@B# set static route 192.168.47.0/24 next-hop 172.16.1.2
Sur l’appareil B, configurez BFD pour l’itinéraire statique.
[edit routing-options] user@B# set static route 192.168.47.0/24 bfd-liveness-detection minimum-interval 1000 set routing-options static route 192.168.47.0/24 bfd-liveness-detection description Site-xxx
Sur le périphérique B, spécifiez l’algorithme (keyed-md5, keyed-sha-1, meticulous-keyed-md5, meticulous-keyed-sha-1 ou simple-password) à utiliser pour l’authentification BFD sur la route statique.
[edit routing-options] user@B# set static route 192.168.47.0/24 bfd-liveness-detection authentication algorithm keyed-sha-1
Note:Le routage actif non-stop (NSR) n’est pas pris en charge avec les algorithmes d’authentification meticulous-keyed-md5 et meticulous-keyed-sha-1. Les sessions BFD utilisant ces algorithmes peuvent tomber en panne après un basculement.
-
Sur le périphérique B, spécifiez le trousseau à utiliser pour associer des sessions BFD sur l’itinéraire spécifié aux attributs uniques du trousseau d’authentification de sécurité.
Cela doit correspondre au nom du trousseau configuré au niveau de la
[edit security authentication key-chains]
hiérarchie.[edit routing-options] user@B# set static route 192.168.47.0/24 bfd-liveness-detection authentication key-chain bfd-kc4
Sur l’appareil B, spécifiez les informations uniques d’authentification de sécurité pour les sessions BFD :
-
Nom du trousseau correspondant comme spécifié à l’étape 5.
Au moins une clé, un entier unique compris entre 0 et 63. La création de plusieurs clés permet à plusieurs clients d’utiliser la session BFD.
Données secrètes utilisées pour autoriser l’accès à la session.
Heure à laquelle la clé d’authentification devient active, au format yyyy-mm-dd.hh:mm:ss.
[edit security authentication-key-chains key-chain bfd-kc4] user@B# set key 5 secret "$ABC123$ABC123$ABC123" user@B# set key 5 start-time "2011-1-1.12:00:00 -0800"
-
Si vous avez terminé de configurer l’appareil B, validez la configuration.
[edit] user@B# commit
Répétez la configuration sur le périphérique D.
L’algorithme et le trousseau doivent être configurés aux deux extrémités de la session BFD, et ils doivent correspondre. Toute incompatibilité de configuration empêche la création de la session BFD.
Résultats
Confirmez votre configuration en émettant les show interfaces
commandes , show routing-options
et show security
. Si la sortie n’affiche pas la configuration voulue, répétez les instructions de cet exemple pour corriger la configuration.
Appareil B
user@B# show interfaces ge-1/2/0 { unit 0 { description B->D; family inet { address 172.16.1.1/24; } } } lo0 { unit 57 { family inet { address 10.0.0.1/32; address 10.0.0.2/32; } } }
user@B# show routing-options static { route 192.168.47.0/24 { next-hop 172.16.1.2; bfd-liveness-detection { description Site- xxx; minimum-interval 1000; authentication { key-chain bfd-kc4; algorithm keyed-sha-1; } } } }
user@B# show security authentication-key-chains { key-chain bfd-kc4 { key 5 { secret "$ABC123$ABC123$ABC123"; ## SECRET-DATA start-time "2011-1-1.12:00:00 -0800"; } } }
Vérification
Vérifiez que la configuration fonctionne correctement.
- Vérification de l’activation des sessions BFD
- Affichage des détails de la session BFD
- Affichage d’informations détaillées sur les sessions BFD
Vérification de l’activation des sessions BFD
But
Vérifiez que les sessions BFD sont terminées.
Action
En mode opérationnel, saisissez la show bfd session
commande.
user@B> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 172.16.1.2 Up ge-1/2/0.0 3.000 1.000 3 1 sessions, 1 clients Cumulative transmit rate 1.0 pps, cumulative receive rate 1.0 pps
Sens
La sortie de la commande indique que la session BFD est terminée.
Affichage des détails de la session BFD
But
Affichez les détails des sessions BFD et assurez-vous que l’authentification est configurée.
Action
En mode opérationnel, saisissez la show bfd session detail
commande.
user@B> show bfd session detail Detect Transmit Address State Interface Time Interval Multiplier 172.16.1.2 Up ge-1/2/0.0 3.000 1.000 3 Client Static, TX interval 1.000, RX interval 1.000, Authenticate Session up time 00:53:58 Local diagnostic NbrSignal, remote diagnostic None Remote state Up, version 1 Logical system 9, routing table index 22 1 sessions, 1 clients Cumulative transmit rate 1.0 pps, cumulative receive rate 1.0 pps
Sens
Dans la sortie de la commande, Authentifier s’affiche pour indiquer que l’authentification BFD est configurée.
Affichage d’informations détaillées sur les sessions BFD
But
Voir des informations plus détaillées sur les sessions BFD.
Action
En mode opérationnel, saisissez la show bfd session extensive
commande.
user@B> show bfd session extensive Address State Interface Time Interval Multiplier 172.16.1.2 Up ge-1/2/0.0 3.000 1.000 3 Client Static, description Site-xxx, TX interval 1.000, RX interval 1.000, Authenticate keychain bfd-kc4, algo keyed-sha-1, mode strict Session up time 01:39:45 Local diagnostic NbrSignal, remote diagnostic None Remote state Up, version 1 Logical system 9, routing table index 22 Min async interval 1.000, min slow interval 1.000 Adaptive async TX interval 1.000, RX interval 1.000 Local min TX interval 1.000, minimum RX interval 1.000, multiplier 3 Remote min TX interval 1.000, min RX interval 1.000, multiplier 3 Local discriminator 3, remote discriminator 4 Echo mode disabled/inactive Authentication enabled/active, keychain bfd-kc4, algo keyed-sha-1, mode strict 1 sessions, 1 clients Cumulative transmit rate 1.0 pps, cumulative receive rate 1.0 pps
Sens
Dans la sortie de la commande, Authentifier s’affiche pour indiquer que l’authentification BFD est configurée. La sortie de la commande fournit le nom du trousseau, l’algorithme d’authentification et le mode de chaque client de la extensive
session.
Le est description Site- <xxx> pris en charge uniquement sur les pare-feu SRX Series.
Si chaque client a plus d’un champ de description, il affiche « et plus » avec le premier champ de description.
Exemple : activation de BFD sur les sauts suivants qualifiés dans les routes statiques pour la sélection de routage
Cet exemple montre comment configurer un itinéraire statique avec plusieurs sauts suivants possibles. La détection de transfert bidirectionnel (BFD) est activée pour chaque saut suivant.
Exigences
Dans cet exemple, aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise.
Aperçu
Dans cet exemple, le périphérique B a la route statique 192.168.47.0/24 avec deux sauts suivants possibles. Les deux sauts suivants sont définis à l’aide de deux qualified-next-hop
instructions. BFD est activé pour chaque saut suivant.
BFD est également activé sur l’appareil D car BFD doit être activé aux deux extrémités de la connexion.
Un saut suivant est inclus dans la table de routage si la session BFD est terminée. Le saut suivant est supprimé de la table de routage si la session BFD est interrompue.
Voir la figure 3.
Topologie
Configuration
Procédure
Configuration rapide de l’interface de ligne de commande
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-collez les commandes dans l’interface de ligne de commande au niveau de la [edit]
hiérarchie.
Appareil B
set interfaces fe-0/1/0 unit 2 description secondary-B->D set interfaces fe-0/1/0 unit 2 family inet address 192.168.2.1/24 set interfaces ge-1/2/0 unit 0 description B->D set interfaces ge-1/2/0 unit 0 family inet address 172.16.1.1/24 set routing-options static route 192.168.47.0/24 qualified-next-hop 192.168.2.2 bfd-liveness-detection minimum-interval 60 set routing-options static route 192.168.47.0/24 qualified-next-hop 172.16.1.2 bfd-liveness-detection minimum-interval 60
Appareil D
set interfaces fe-0/1/0 unit 3 description secondary-D->B set interfaces fe-0/1/0 unit 3 family inet address 192.168.2.2/24 set interfaces ge-1/2/0 unit 1 description D->B set interfaces ge-1/2/0 unit 1 family inet address 172.16.1.2/24 set routing-options static route 0.0.0.0/0 qualified-next-hop 192.168.2.1 set routing-options static route 0.0.0.0/0 qualified-next-hop 172.16.1.1 set routing-options static route 0.0.0.0/0 bfd-liveness-detection minimum-interval 60
Procédure étape par étape
L’exemple suivant nécessite que vous naviguiez à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur la procédure à suivre, reportez-vous à la section Utilisation de l’éditeur CLI en mode Configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer un itinéraire statique avec deux sauts suivants possibles, tous deux avec BFD activé :
Sur l’appareil B, configurez les interfaces.
[edit interfaces fe-0/1/0] user@B# set unit 2 description secondary-B->D user@B# set unit 2 family inet address 192.168.2.1/24 [edit interfaces ge-1/2/0] user@B# set unit 0 description B->D user@B# set unit 0 family inet address 172.16.1.1/24
Sur l’appareil B, configurez l’itinéraire statique avec deux sauts suivants, tous deux avec BFD activé.
[edit routing-options static route 192.168.47.0/24] user@B# set qualified-next-hop 192.168.2.2 bfd-liveness-detection minimum-interval 60 user@B# set qualified-next-hop 172.16.1.2 bfd-liveness-detection minimum-interval 60
Sur l’appareil D, configurez les interfaces.
[edit interfaces fe-0/1/0] user@D# set unit 3 description secondary-D->B user@D# set unit 3 family inet address 192.168.2.2/24 [edit interfaces ge-1/2/0] user@D# set unit 1 description D->B user@D# set unit 1 family inet address 172.16.1.2/24
Sur l’appareil D, configurez un itinéraire statique par défaut compatible BFD avec deux sauts suivants vers le réseau du fournisseur.
Dans ce cas, BFD est activé sur l’itinéraire, pas sur les sauts suivants.
[edit routing-options static route 0.0.0.0/0] user@D# set qualified-next-hop 192.168.2.1 user@D# set qualified-next-hop 172.16.1.1 user@D# set bfd-liveness-detection minimum-interval 60
Résultats
Confirmez votre configuration en émettant les show interfaces
commandes et show routing-options
. Si la sortie n’affiche pas la configuration voulue, répétez les instructions de cet exemple pour corriger la configuration.
user@B# show interfaces fe-0/1/0 { unit 2 { description secondary-B->D; family inet { address 192.168.2.1/24; } } } ge-1/2/0 { unit 0 { description B->D; family inet { address 172.16.1.1/24; } } }
user@B# show routing-options static { route 192.168.47.0/24 { qualified-next-hop 192.168.2.2 { bfd-liveness-detection { minimum-interval 60; } } qualified-next-hop 172.16.1.2 { bfd-liveness-detection { minimum-interval 60; } } } }
user@D# show interfaces fe-0/1/0 { unit 3 { description secondary-D->B; family inet { address 192.168.2.2/24; } } } ge-1/2/0 { unit 1 { description D->B; family inet { address 172.16.1.2/24; } } }
user@D# show routing-options static { route 0.0.0.0/0 { qualified-next-hop 192.168.2.1; qualified-next-hop 172.16.1.1; bfd-liveness-detection { minimum-interval 60; } } }
Si vous avez terminé de configurer les appareils, entrez commit from configuration mode.
Vérification
Vérifiez que la configuration fonctionne correctement.
- Vérification des tables de routage
- Vérification des sessions BFD
- Suppression de BFD de l’appareil D
- Suppression de BFD de One Next Hop
Vérification des tables de routage
But
Assurez-vous que l’itinéraire statique apparaît dans la table de routage sur le périphérique B avec deux sauts suivants possibles.
Action
user@B> show route 192.168.47.0 extensive inet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden) 192.168.47.0/24 (1 entry, 1 announced) TSI: KRT in-kernel 192.168.47.0/24 -> {192.168.2.2} *Static Preference: 5 Next hop type: Router Address: 0x9334010 Next-hop reference count: 1 Next hop: 172.16.1.2 via ge-1/2/0.0 Next hop: 192.168.2.2 via fe-0/1/0.2, selected State: <Active Int Ext> Age: 9 Task: RT Announcement bits (1): 3-KRT AS path: I
Sens
Les deux sauts suivants sont répertoriés. Le saut suivant 192.168.2.2 est l’itinéraire sélectionné.
Vérification des sessions BFD
But
Assurez-vous que les sessions BFD sont terminées.
Action
user@B> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 172.16.1.2 Up ge-1/2/0.0 0.720 0.240 3 192.168.2.2 Up fe-0/1/0.2 0.720 0.240 3 2 sessions, 2 clients Cumulative transmit rate 8.3 pps, cumulative receive rate 8.3 pps
Sens
La sortie montre que les sessions BFD sont en place.
Suppression de BFD de l’appareil D
But
Démonstration de ce qui se passe lorsque la session BFD est interrompue pour les deux sauts suivants.
Action
Désactivez BFD sur l’appareil D.
[edit routing-options static route 0.0.0.0/0] user@D# deactivate bfd-liveness-detection user@D# commit
Réexécutez la commande sur le
show bfd session
périphérique B.user@B> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 172.16.1.2 Down ge-1/2/0.0 3.000 1.000 3 192.168.2.2 Down fe-0/1/0.2 3.000 1.000 3 2 sessions, 2 clients Cumulative transmit rate 2.0 pps, cumulative receive rate 2.0 pps
Réexécutez la commande sur le
show route 192.168.47.0
périphérique B.user@B> show route 192.168.47.0
Sens
Comme prévu, lorsque les sessions BFD sont arrêtées, la route statique est supprimée de la table de routage.
Suppression de BFD de One Next Hop
But
Démonstration de ce qui se passe lorsque BFD n’est activé que sur un seul saut suivant.
Action
S’il n’est pas déjà désactivé, désactivez BFD sur l’appareil D.
[edit routing-options static route 0.0.0.0/0] user@D# deactivate bfd-liveness-detection user@D# commit
Désactivez BFD sur l’un des sauts suivants sur l’appareil B.
[edit routing-options static route 192.168.47.0/24 qualified-next-hop 172.16.1.2] user@B# deactivate bfd-liveness-detection user@B# commit
Réexécutez la commande sur le
show bfd session
périphérique B.user@B> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 192.168.2.2 Down fe-0/1/0.2 3.000 1.000 3
Réexécutez la commande sur le
show route 192.168.47.0 extensive
périphérique B.user@B> show route 192.168.47.0 extensive inet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden) 192.168.47.0/24 (1 entry, 1 announced) TSI: KRT in-kernel 192.168.47.0/24 -> {172.16.1.2} *Static Preference: 5 Next hop type: Router, Next hop index: 624 Address: 0x92f0178 Next-hop reference count: 3 Next hop: 172.16.1.2 via ge-1/2/0.0, selected State: <Active Int Ext> Age: 2:36 Task: RT Announcement bits (1): 3-KRT AS path: I
Sens
Comme prévu, la session BFD est en panne pour le prochain saut 192.168.2.2. Le saut suivant 172.16.1.2 reste dans la table de routage et l’itinéraire reste actif, car BFD n’est pas une condition pour que ce saut suivant reste valide.
bfd-liveness-detection
commande inclut le champ description. La description est un attribut sous l’objet
bfd-liveness-detection et n’est prise en charge que par les pare-feu SRX Series. Ce champ s’applique uniquement aux itinéraires statiques.