Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BFD pour les sessions BGP

Comprendre BFD pour BGP

Le protocole BFD (Bidirectional Forwarding Detection) est un mécanisme hello simple qui détecte les défaillances dans un réseau. Les paquets Hello sont envoyés à un intervalle spécifié et régulier. Une défaillance de voisinage est détectée lorsque le périphérique de routage cesse de recevoir une réponse après un intervalle spécifié. BFD fonctionne avec une grande variété d’environnements et de topologies réseau. Les temporisateurs de détection de défaillance pour BFD ont des limites de temps plus courtes que les mécanismes de détection de défaillance par défaut pour BGP, de sorte qu’ils offrent une détection plus rapide.

REMARQUE :

La configuration de BFD et du redémarrage progressif pour BGP sur le même périphérique est contre-productive. Lorsqu’une interface tombe en panne, BFD le détecte instantanément, arrête le transfert du trafic et la session BGP tombe en panne, alors qu’un redémarrage normal transfère le trafic malgré la défaillance de l’interface, ce comportement peut entraîner des problèmes de réseau. Par conséquent, nous vous déconseillons de configurer à la fois BFD et le redémarrage progressif sur le même appareil.

REMARQUE :

Les commutateurs EX4600 et QFX5000 Series exécutant Junos OS ou Junos OS Evolved ne prennent pas en charge les valeurs d’intervalle minimum inférieures à 1 seconde en mode centralisé et distribué.

REMARQUE :

Les commutateurs EX4650, QFX5110, QFX5120, QFX5200 et QFX5210 prennent en charge la détection de transfert bidirectionnel à sauts multiples et la prise en charge de la rétention en ligne BFD, ce qui permet de configurer les sessions en moins d’une seconde. Les performances peuvent varier en fonction de la charge du système. 10 sessions BFD en ligne sont prises en charge et peuvent être configurées avec un minuteur de 150 x 3 millisecondes. Les sessions à saut unique sont également prises en charge.

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 faible, plus la détection de défaillance est rapide et vice versa. Par exemple, les temporisateurs peuvent s’adapter à une valeur plus élevée en cas d’échec de la contiguïté (c’est-à-dire que le minuteur détecte les défaillances plus lentement). Ou un voisin peut négocier une valeur supérieure pour un minuteur à la valeur configurée. Les temporisateurs s’adaptent à une valeur plus élevée lorsqu’un battement de session BFD se produit plus de trois fois en l’espace de 15 secondes (15000 millisecondes). Un algorithme d’interruption augmente l’intervalle de réception (Rx) de deux si l’instance BFD locale est à l’origine de l’interruption de session. L’intervalle de transmission (Tx) est augmenté de deux si l’instance BFD distante est à l’origine de l’interruption de session. Vous pouvez utiliser la clear bfd adaptation commande pour ramener les temporisateurs d’intervalle BFD à leurs valeurs configurées. 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.

REMARQUE :

Sur tous les pare-feu SRX Series, une forte utilisation du processeur déclenchée pour des raisons telles que des commandes gourmandes en ressources CPU et des marches SNMP provoque l’instabilité du protocole BFD lors du traitement des mises à jour BGP volumineuses. (La prise en charge de la plate-forme dépend de la version de Junos OS dans votre installation.)

À partir de Junos OS version 15.1X49-D100, SRX340, SRX345 et SRX1500 périphériques prennent en charge le BFD dédié.

À partir de Junos OS version 15.1X49-D100, les équipements SRX300 et SRX320 prennent en charge le BFD en temps réel.

À partir de Junos OS version 15.1X49-D110, SRX550M périphériques prennent en charge le BFD dédié.

Dans Junos OS version 8.3 et ultérieure, BFD est pris en charge sur les sessions BGP internes (IBGP) et externes multi-sauts (EBGP), ainsi que sur les sessions EBGP à saut unique. Dans Junos OS version 9.1 à Junos OS version 11.1, BFD prend uniquement en charge les interfaces IPv6 dans les routes statiques. Dans Junos OS version 11.2 et ultérieure, BFD prend en charge les interfaces IPv6 avec BGP.

Exemple : Configuration de BFD sur des sessions homologues BGP internes

Cet exemple montre comment configurer des sessions homologues BGP (IBGP) internes avec le protocole BFD (Bidirectional Forwarding Detection) pour détecter les défaillances dans un réseau.

Conditions préalables

Aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise avant de configurer cet exemple.

Présentation

La configuration minimale pour activer BFD sur les sessions IBGP est d’inclure l’instruction bfd-liveness-detection minimum-interval dans la configuration BGP de tous les voisins participant à la session BFD. L’instruction minimum-interval spécifie les intervalles minimaux d’émission et de réception pour la détection des défaillances. Plus précisément, cette valeur représente l’intervalle minimum après lequel le périphérique de routage local transmet les paquets hello, ainsi que l’intervalle minimum pendant 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 une valeur comprise entre 1 et 255 000 millisecondes.

Si vous le souhaitez, vous pouvez spécifier séparément les intervalles d’émission et de réception minimaux à l’aide des transmit-interval minimum-interval instructions and minimum-receive-interval . Pour plus d’informations sur ces instructions de configuration BFD et d’autres facultatifs, reportez-vous à la section bfd-liveness-detection.

REMARQUE :

BFD est un protocole intensif qui consomme des ressources système. La spécification d’un intervalle minimum pour BFD inférieur à 100 millisecondes pour les sessions basées sur le moteur de routage et inférieur à 10 millisecondes pour les sessions BFD distribuées peut entraîner des battements BFD indésirables.

En fonction de votre environnement réseau, les recommandations supplémentaires suivantes peuvent s’appliquer :

  • Pour éviter les instabilités BFD pendant l’événement de basculement général du moteur de routage, spécifiez un intervalle minimal de 5000 millisecondes pour les sessions basées sur le moteur de routage. Cette valeur minimale est requise car, lors de l’événement de basculement général du moteur de routage, des processus tels que RPD, MIBD et SNMPD utilisent des ressources CPU supérieures à la valeur seuil spécifiée. Par conséquent, le traitement et la planification BFD sont affectés en raison de ce manque de ressources CPU.

  • Pour que les sessions BFD restent actives pendant le scénario de liaison de contrôle du cluster à double châssis, lorsque la première liaison de contrôle échoue, spécifiez l’intervalle minimal de 6000 millisecondes pour empêcher le LACP de battre sur le nœud secondaire pour les sessions basées sur le moteur de routage.

  • Pour les déploiements réseau à grande échelle avec un grand nombre de sessions BFD, spécifiez un intervalle minimal de 300 millisecondes pour les sessions basées sur le moteur de routage et de 100 millisecondes 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 support client 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 continu (NSR) est configuré, spécifiez un intervalle minimum de 2500 millisecondes pour les sessions basées sur le moteur de routage. Pour les sessions BFD distribuées avec NSR configuré, les recommandations relatives à l’intervalle minimal restent inchangées et dépendent uniquement du déploiement de votre réseau.

BFD est pris en charge sur l’instance de routage par défaut (le routeur principal), les instances de routage et les systèmes logiques. Cet exemple montre BFD sur des systèmes logiques.

Figure 1 Montre un réseau type avec des sessions homologues internes.

Figure 1 : Réseau type avec sessions IBGPRéseau type avec sessions IBGP

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 et collez les commandes dans l’interface de ligne de commande au niveau de la [edit] hiérarchie.

Appareil A

Appareil B

Appareil C

Configuration de l’appareil A

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 dans le Guide de l’utilisateur de l’interface de ligne de commande.

Pour configurer l’appareil A :

  1. Définissez l’interface de ligne de commande sur Système logique A.

  2. Configurez les interfaces.

  3. Configurez BGP.

    Les neighbor instructions sont incluses à la fois pour l’appareil B et l’appareil C, même si l’appareil A n’est pas directement connecté à l’appareil C.

  4. Configurez BFD.

    Vous devez configurer le même intervalle minimum sur l’homologue de connexion.

  5. (Facultatif) Configurez le suivi BFD.

  6. Configurez OSPF.

  7. Configurez une stratégie qui accepte les routes directes.

    D’autres options utiles pour ce scénario peuvent consister à accepter les routes apprises via OSPF ou les routes locales.

  8. Configurez l’ID du routeur et le numéro du système autonome (AS).

  9. Si vous avez terminé de configurer l’appareil, passez commit en mode de configuration. Répétez ces étapes pour configurer l’appareil B et l’appareil C.

Résultats

À partir du mode de configuration, confirmez votre configuration en saisissant les show interfacescommandes , show policy-options, show protocolset 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.

Vérification

Vérifiez que la configuration fonctionne correctement.

Vérification de l’activation de BFD

But

Vérifiez que BFD est activé entre les homologues IBGP.

Action

À partir du mode opérationnel, entrez la show bgp neighbor commande. Vous pouvez utiliser le | match bfd filtre pour affiner la sortie.

Sens

La sortie montre que le système logique A a deux voisins avec BFD activé. Lorsque BFD n’est pas activé, la sortie affiche BFD: disabled, down, et l’option <BfdEnabled> est absente. Si BFD est activé et que la session est inactive, la sortie affiche BFD: enabled, down. La sortie indique également que les événements liés à BFD sont écrits dans un fichier journal, car les opérations de traçage sont configurées.

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

À partir du mode opérationnel, entrez la show bfd session extensive commande.

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

À partir du mode opérationnel, entrez la file show /var/log/A/bgp-bfd commande.

Sens

Avant que les routes ne soient établies, le message s’affiche No route to host dans la sortie. Une fois les itinéraires établis, les deux dernières lignes indiquent que les deux sessions BFD apparaissent.

Affichage détaillé des événements BFD après la désactivation et la réactivation d’une interface de bouclage

But

Vérifiez ce qui se passe après avoir mis hors service un routeur ou un commutateur, puis l’avoir rétabli. Pour simuler la mise hors service d’un routeur ou d’un commutateur, désactivez l’interface de bouclage sur le système logique B.

Action
  1. À partir du mode configuration, entrez la deactivate logical-systems B interfaces lo0 unit 2 family inet commande.

  2. À partir du mode opérationnel, entrez la file show /var/log/A/bgp-bfd commande.

  3. À partir du mode configuration, entrez la activate logical-systems B interfaces lo0 unit 2 family inet commande.

  4. À partir du mode opérationnel, entrez la file show /var/log/A/bgp-bfd commande.

Comprendre l’authentification BFD pour BGP

Le protocole BFD (Bidirectional Forwarding Detection Protocol) permet de détecter rapidement les défaillances de communication entre des systèmes adjacents. Par défaut, l’authentification des sessions BFD est désactivée. Toutefois, lorsque vous exécutez BFD sur des protocoles de couche réseau, le risque d’attaques de service peut être important. Nous vous recommandons vivement 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 s’exécutant sur BGP. L’authentification BFD n’est pas prise en charge sur les sessions MPLS OAM. L’authentification BFD est uniquement prise en charge dans les versions Canada et États-Unis de l’image Junos OS et n’est pas disponible dans la version d’exportation.

Vous authentifiez les sessions BFD en spécifiant un algorithme d’authentification et un trousseau de clés, 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 pris en charge, les trousseaux de sécurité et le niveau d’authentification pouvant être configurés :

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ûre et ne doit être utilisée que lorsque les sessions BFD ne sont pas sujettes à l’interception des paquets.

  • keyed-md5: algorithme de hachage Keyed Message Digest 5 pour les sessions dont les intervalles d’émission et de réception sont supérieurs à 100 ms. Pour authentifier la session BFD, MD5 avec 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 session de réception 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 rejeu. L’augmentation de la vitesse de mise à jour du numéro de séquence peut réduire ce risque.

  • meticulous-keyed-md5—Algorithme de hachage Message Digest 5 méticuleux. Cette méthode fonctionne de la même manière que MD5 à clé, mais le numéro de séquence est mis à jour à chaque paquet. Bien qu’elle soit plus sécurisée que MD5 à clé et les 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, le SHA à 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. La clé n’est pas contenue dans les paquets. Avec cette méthode, les paquets sont acceptés à la fin de la session de réception 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é à clé méticuleuse 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 à chaque paquet. Bien qu’elle soit plus sécurisée que le SHA à clé et les mots de passe simples, cette méthode peut prendre plus de temps pour authentifier la session.

REMARQUE :

Le NSR (NonStop Active Routing ) n’est pas pris en charge avec les algorithmes d’authentification md5 à clé méticuleuse et sha-1 à clé méticuleuse. Les sessions BFD utilisant ces algorithmes peuvent être interrompues après un basculement.

REMARQUE :

Les commutateurs QFX5000 Series et EX4600 ne prennent pas en charge les valeurs d’intervalle minimum 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 de la clé d’authentification peuvent avoir lieu sans interrompre les protocoles de routage et de signalisation.

Le trousseau d’authentification contient un ou plusieurs trousseaux de clés. 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 correspondre. Toute incompatibilité de configuration empêche la création de la session BFD.

BFD autorise plusieurs clients par session, et chaque client peut avoir son propre trousseau et son propre algorithme définis. Afin d’éviter toute confusion, nous vous recommandons de ne spécifier qu’un seul trousseau d’authentification de sécurité.

Authentification stricte/authentification lâche

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 lâche. Lorsqu’une vérification lâche est configurée, les paquets sont acceptés sans que l’authentification ne soit vérifiée à chaque fin de session. Cette fonctionnalité n’est destinée qu’aux périodes transitoires.

Exemple : Configuration de l’authentification BFD pour BGP

À partir de Junos OS version 9.6, vous pouvez configurer l’authentification pour les sessions BFD s’exécutant via BGP. Seules trois étapes sont nécessaires pour configurer l’authentification sur une session BFD :

  1. Spécifiez l’algorithme d’authentification BFD pour le protocole BGP.

  2. Associez le trousseau d’authentification au protocole BGP.

  3. Configurez le trousseau d’authentification de sécurité associé.

Les sections suivantes fournissent des instructions pour configurer et afficher l’authentification BFD sur BGP :

Configuration des paramètres d’authentification BFD

L’authentification BFD peut être configurée pour l’ensemble du protocole BGP, ou pour un groupe, un voisin ou une instance de routage BGP spécifique.

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 du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.

Pour configurer l’authentification BFD :

  1. Spécifiez l’algorithme (keyed-md5, keyed-sha-1, meticulous-keyed-md5, meticulous-keyed-sha-1ou simple-password) à utiliser.
    REMARQUE :

    Le routage actif ininterrompu n’est pas pris en charge par les algorithmes d’authentification md5 à clé méticuleuse et sha-1 à clé méticuleuse. Les sessions BFD utilisant ces algorithmes peuvent être interrompues après un basculement.

  2. Spécifiez le trousseau à utiliser pour associer les sessions BFD sur BGP aux attributs uniques du trousseau d’authentification de sécurité.

    Le nom du trousseau que vous spécifiez doit correspondre à un nom de trousseau configuré au niveau de la [edit security authentication key-chains] hiérarchie.

    REMARQUE :

    L’algorithme et le trousseau doivent être configurés aux deux extrémités de la session BFD et correspondre. Toute incompatibilité de configuration empêche la création de la session BFD.

  3. Spécifiez les informations d’authentification de sécurité uniques pour les sessions BFD :
    • Nom du trousseau correspondant, comme spécifié à l’étape 2.

    • 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.

  4. (Facultatif) Spécifiez une vérification d’authentification lâche si vous passez de sessions non authentifiées à des sessions authentifiées.
  5. (Facultatif) Affichez votre configuration à l’aide de la show bfd session detail commande ou show bfd session extensive .
  6. Répétez ces étapes pour configurer l’autre extrémité de la session BFD.
REMARQUE :

L’authentification BFD est uniquement prise en charge dans les versions Canada et États-Unis de l’image Junos OS et n’est pas disponible dans la version d’exportation.

Affichage des informations d’authentification pour les sessions BFD

Vous pouvez afficher la configuration d’authentification BFD existante à l’aide des show bfd session detail commandes and show bfd session extensive .

L’exemple suivant montre l’authentification BFD configurée pour le bgp-gr1 groupe BGP. Il spécifie l’algorithme d’authentification SHA-1 à clé et un nom de trousseau de bfd-bgp. Le trousseau d’authentification est configuré avec deux clés. La clé 1 contient les données secrètes «$ABC123$ABC123 » et l’heure de début est le 1er juin 2009 à 9 h 46 min 02 s PST. La clé 2 contient les données secrètes «$ABC123$ABC123 » et l’heure de début est le 1er juin 2009 à 15 h 29 min 20 s PST.

Si vous validez ces mises à jour dans votre configuration, vous obtenez une sortie similaire à la suivante. Dans la sortie de la commande, Authenticate s’affiche pour indiquer que l’authentification show bfd session detail BFD est configurée. Pour plus d’informations sur la configuration, utilisez la show bfd session extensive commande. La sortie de cette commande fournit le nom du trousseau, l’algorithme et le mode d’authentification pour chaque client de la session, ainsi que l’état global de la configuration de l’authentification BFD, le nom du trousseau, ainsi que l’algorithme et le mode d’authentification.

Afficher les détails de la session BFD

Afficher BFD Session Extensive

Tableau de l'historique des modifications

La prise en charge des fonctionnalités est déterminée par la plateforme et la version que vous utilisez. Utilisez l' Feature Explorer pour déterminer si une fonctionnalité est prise en charge sur votre plateforme.

Version
Description
15.1X49-D100
À partir de Junos OS version 15.1X49-D100, SRX340, SRX345 et SRX1500 périphériques prennent en charge le BFD dédié.
15.1X49-D100
À partir de Junos OS version 15.1X49-D100, les équipements SRX300 et SRX320 prennent en charge le BFD en temps réel.
11.2
Dans Junos OS version 11.2 et ultérieure, BFD prend en charge les interfaces IPv6 avec BGP.
9.1
Dans Junos OS version 9.1 à Junos OS version 11.1, BFD prend uniquement en charge les interfaces IPv6 dans les routes statiques.
8.3
Dans Junos OS version 8.3 et ultérieure, BFD est pris en charge sur les sessions BGP internes (IBGP) et externes multi-sauts (EBGP), ainsi que sur les sessions EBGP à saut unique.