Configurer le mode BFD pour Cloud Router

Avec la détection de transfert bidirectionnel (BFD) pour Cloud Router, vous pouvez rapidement détecter les interruptions de chemin de transfert telles que les événements d'activation ou de désactivation BGP , ce qui permet de développer des réseaux hybrides plus résilients.

Vous pouvez configurer BFD dans les sessions BGP pour les rattachements de VLAN. BFD n'est pas compatible avec les sessions BGP configurées pour les tunnels VPN haute disponibilité ou pour le dispositif de routeur qui fait partie du centre de connectivité réseau.

Pour en savoir plus sur BFD, consultez la présentation de BFD (Bidirectional Forwarding Detection) pour Cloud Router, qui inclut une description complète des paramètres et timers de BFD.

Avant de commencer

gcloud

Si vous souhaitez utiliser les exemples de ligne de commande de ce guide, procédez comme suit :

  1. Installez la dernière version de la CLI Google Cloud ou appliquez la mise à jour correspondante.
  2. Définissez une région et une zone par défaut.

API

Si vous voulez utiliser les exemples d'API de ce guide, configurez l'accès aux API.

Ajouter un routeur Cloud Router à Cloud Interconnect

Avant de pouvoir configurer BFD, vous devez configurer l'une des options de connectivité suivantes, ce qui comporte l'ajout d'un routeur Cloud Router avec une session BGP :

Configurer BFD sur une session BGP existante

Vous pouvez configurer BFD sur une session BGP précédemment configurée pour un rattachement de VLAN.

Pour configurer les paramètres BFD sur une session BGP existante, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Routeurs cloud.

    Accéder aux routeurs cloud

  2. Sélectionnez le routeur Cloud Router à mettre à jour.

  3. Dans la section Sessions BGP de la page Détails du routeur, sélectionnez la session BGP à mettre à jour.

  4. Sur la page d'informations de la session BGP, cliquez sur Modifier.

  5. Renseignez tous les paramètres autres que BFD.

  6. Sous Détection de transfert bidirectionnel, configurez les options BFD comme indiqué dans la section Paramètres et timers BFD.

    Obligatoire : Pour activer BFD, définissez le mode d'initialisation de la session BFD sur active.

gcloud

Exécutez la commande update-bgp-peer :

gcloud compute routers update-bgp-peer ROUTER_NAME \
    --project=PROJECT_ID \
    --peer-name=PEER_NAME \
    --interface=INTERFACE \
    --ip-address=IP_ADDRESS \
    --peer-asn=PEER_ASN \
    --peer-ip-address=PEER_IP_ADDRESS \
    --region=REGION \
    --bfd-session-initialization-mode=BFD_SESSION_INITIALIZATION_MODE  \
    --bfd-min-receive-interval=BFD_MIN_RECEIVE_INTERVAL \
    --bfd-min-transmit-interval=BFD_MIN_TRANSMIT_INTERVAL \
    --bfd-multiplier=BFD_MULTIPLIER

Remplacez les éléments suivants :

  • ROUTER_NAME : nom de votre routeur Cloud Router
  • PROJECT_ID : projet qui contient votre routeur cloud.
  • PEER_NAME : nom de votre pair BGP.
  • INTERFACE : nom de l'interface pour ce pair BGP
  • IP_ADDRESS : adresse IP de votre routeur Cloud Router
  • PEER_ASN : numéro ASN (Autonomous System Number) pour ce pair BGP
  • PEER_IP_ADDRESS : adresse de liaison locale du routeur pair appartenant à la plage 169.254.0.0/16
  • REGION : région où se trouve le routeur cloud.
  • Configurez les options BFD comme indiqué dans la section Paramètres et timers BFD.

    Obligatoire : pour activer BFD, définissez BFD_SESSION_INITIALIZATION_MODE sur active.

API

La méthode routers.patch permet de mettre à jour le champ bgpPeers[].bfd.

Le champ bgpPeers[] accepte un tableau de pairs BGP. Lorsque vous appliquez un correcteur PATCH à ce champ, vous écrasez le tableau existant de pairs BGP avec le nouveau tableau inclus dans votre requête.

  1. Envoyez une requête GET pour obtenir le tableau actuel de pairs BGP pour le routeur. Pour en savoir plus, consultez la section Afficher la configuration de session BGP.

  2. Envoyez une requête PATCH avec un nouveau tableau de pairs BGP. Dans l'élément de tableau contenant la session BGP dont vous souhaitez mettre à jour les paramètres BFD, modifiez le champ bgpPeers[].bfd :

       PATCH https://compute.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
       {
         "bgpPeers": [
           BGP_PEERS
         ]
       }
    

    Remplacez les éléments suivants :

    • PROJECT_ID : projet contenant le routeur cloud.
    • REGION : région où se trouve le routeur cloud.
    • ROUTER_NAME : nom du routeur cloud
    • BGP_PEERS : contenu du nouveau tableau de pairs BGP.

    L'exemple suivant inclut deux pairs BGP et définit les valeurs dans le champ bgpPeers[].bfd. Pour plus d'informations sur ces options, consultez la section Paramètres et timers BFD.

    Obligatoire : pour activer BFD, définissez sessionInitializationMode sur ACTIVE.

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT"
          "bfd": {
            "sessionInitializationMode": ACTIVE,
            "minTransmitInterval": 1000,
            "minReceiveInterval": 1000,
            "multiplier": 5
          }
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 99,
          "advertiseMode": "DEFAULT"
          "bfd": {
            "sessionInitializationMode": ACTIVE,
            "minTransmitInterval": 1000,
            "minReceiveInterval": 1000,
            "multiplier": 5
          }
        }
    

Configurer BFD sur votre routeur pair

Pour activer BFD sur votre routeur pair, configurez l'intervalle minimal de transmission, l'intervalle minimal de réception et le multiplicateur de détection, comme recommandé par la documentation du fournisseur de votre routeur. Utilisez les commandes spécifiques à votre appareil.

Pour la négociation du timer BFD entre les pairs BFD, le débit le plus lent des deux pairs détermine le taux de transmission. En configurant des valeurs plus élevées, vous pouvez forcer ces intervalles à être plus longs, mais pas plus courts.

Voici un exemple de configuration BFD pour un routeur Cisco. Pour obtenir d'autres exemples de configuration, consultez la section Utiliser des configurations de routeur tiers pour BFD.

  int range <physical interface>
    bfd interval 1000 min_rx 1000 multiplier 5

  router bgp <ASN>
    neighbor 169.254.33.6 fall-over bfd
    neighbor 169.254.44.6 fall-over bfd

Vérifier BFD sur votre routeur pair

Après avoir configuré votre routeur pair, vérifiez si la session vers le routeur Cloud Router est opérationnelle en affichant les détails de la session BFD.

  • L'exemple de commande suivant pour un routeur Cisco indique l'état de la session BFD :

    show bfd neighbors 169.254.44.6 details
    
  • Le résultat de la commande devrait ressembler à ceci :

    IPv4 Sessions
    NeighAddr                    LD/RD           RH/RS     State     Int
    169.254.44.6                 4212/2045617738 Up        Up        Tu503
    Session state is UP and not using echo function.
    Session Host: Software
    OurAddr: 169.254.44.5
    Handle: 4
    Local Diag: 0, Demand mode: 0, Poll bit: 0
    MinTxInt: 1000, MinRxInt: 1000, Multiplier: 5
    Received MinRxInt: 1000, Received Multiplier: 5
    Holddown (hits): 244(1), Hello (hits): 100(30409)
    Rx Count: 4562, Rx Interval (ms) min/max/avg: 10/1140/870 last: 56 ms ago
    Tx Count: 4475, Tx Interval (ms) min/max/avg: 10/1040/890 last: 64 ms ago
    Elapsed time watermarks: 4 4 (last: 4)
    Registered protocols: CEF BGP
    Uptime: 00:06:39
    Last packet: Version: 1                  - Diagnostic: 0
                 State bit: Up               - Demand bit: 0
                 Poll bit: 0                 - Final bit: 0
                 C bit: 0
                 Multiplier: 5               - Length: 24
                 My Discr.: 2045617738       - Your Discr.: 4212
                 Min tx interval: 1000     - Min rx interval: 1000
                 Min Echo interval: 0
    
  • Cet exemple de résultat d'un routeur pair Cisco ASR montre les informations de diagnostic que vous pouvez afficher du côté du pair pour déterminer l'état de votre session BFD :

    14:06:12.906921 IP (tos 0xc0, ttl 255, id 58754, offset 0, flags [none], proto UDP (17), length 52)
      169.254.44.5.49152 > 169.254.44.6.3784: [udp sum ok] BFDv1, length: 24
    Control, State Down, Flags: [none], Diagnostic: No Diagnostic (0x00)
    Detection Timer Multiplier: 5 (5000 ms Detection time), BFD Length: 24
    My Discriminator: 0x0000100b, Your Discriminator: 0x00000000
      Desired min Tx Interval:    1000 ms
      Required min Rx Interval:   1000 ms
      Required min Echo Interval:  100 ms
    

Vérifier BFD sur le routeur Cloud Router

Vérifiez la session BFD côté Google Cloud en utilisant l'une des méthodes suivantes :

Étape suivante