Configurer le protocole BGP multiprotocole dans les sessions IPv4 ou IPv6 BGP

Cloud Router permet d'activer et de désactiver l'échange de routes IPv4 ou IPv6 dans des sessions BGP (Border Gateway Protocol) individuelles utilisant le BGP multiprotocole (MP-BGP). Avec MP-BGP, vous pouvez échanger des routes IPv6 sur une session IPv4 BGP ou des routes IPv4 sur une session IPv6 BGP. La compatibilité de la session IPv6 BGP est disponible en version bêta.

Pour échanger du trafic IPv4 et IPv6 dans une session BGP unique, vous devez sélectionner le type de pile IPv4 et IPv6 (double pile) dans votre produit de connectivité réseau, tel qu'un VPN haute disponibilité ou une interconnexion dédiée.

Vous pouvez activer ou désactiver l'échange de routes IPv4 ou IPv6 dans une session BGP spécifique en modifiant la configuration du pair BGP. La désactivation de l'échange de route IPv4 ou IPv6 est utile si vous devez résoudre des problèmes de réseau spécifiques à IPv4 ou IPv6. Vous pouvez également désactiver le trafic temporairement dans un tunnel VPN haute disponibilité à double pile sans supprimer le tunnel et la passerelle.

Si vous désactivez l'échange de route IPv4 ou IPv6 dans une session BGP, puis que vous le réactivez ultérieurement, les adresses de saut suivant IPv4 ou IPv6 précédemment attribuées ne sont pas abandonnées. Vous pouvez réutiliser ces adresses de saut suivant IPv4 ou IPv6 si IPv4 ou IPv6 est de nouveau activé dans la session BGP.

Avant de commencer

Pour utiliser les exemples de ligne de commande de ce guide, procédez comme suit :

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

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

Configurer une session IPv4 BGP

Cette section explique comment modifier la configuration d'une session IPv4 BGP.

Vous ne pouvez pas désactiver l'échange de route IPv4 dans une session BGP IPv4.

Activer l'échange de route IPv6

Cette procédure suppose que vous modifiez des sessions BGP IPv4 qui ont déjà été créées pour des tunnels VPN haute disponibilité ou des rattachements de VLAN.

Nous supposons également que vous avez configuré la passerelle VPN haute disponibilité ou le rattachement de VLAN associé pour utiliser la double pile IPv4 et IPv6, comme décrit dans les procédures suivantes :

Pour activer l'échange de route IPv6 dans une session IPv4 BGP existante, procédez comme suit :

Console

Pour les VPN haute disponibilité

  1. Pour configurer une session BGP pour les VPN haute disponibilité, accédez à la page Tunnels Cloud VPN de la console Google Cloud.

    Accéder à la page "Tunnels Cloud VPN"

  2. Sélectionnez le tunnel Cloud VPN qui contient la session BGP à mettre à jour.

  3. Sur la page Détails du tunnel VPN, cliquez sur Modifier la session BGP.

  4. Pour activer l'échange de routage IPv6, cliquez sur l'option Activer le trafic IPv6.

  5. Facultatif : Vous pouvez allouer les adresses de saut suivant IPv6 manuellement ou automatiquement pour les tunnels VPN haute disponibilité.

    • Pour allouer les adresses automatiquement, sélectionnez Automatiquement.
    • Pour allouer les adresses manuellement, procédez comme suit :
      1. Sélectionnez manuellement.
      2. Saisissez l'adresse IPv6 du saut suivant IPv6 de Cloud Router. Cette adresse est une adresse IPv6 utilisée par Cloud Router pour ce tunnel Cloud VPN. Cette adresse IPv6 est annoncée comme saut suivant pour les routes IPv6 que Cloud Router annonce sur son pair BGP. L'adresse doit être comprise dans la plage 2600:2d00:0:2::/63.
      3. Saisissez l'adresse IPv6 du saut suivant IPv6 du pair. Cette adresse est l'adresse IPv6 de l'appareil de VPN pair ou du routeur sur site. Cette adresse IPv6 est le saut suivant pour les routes IPv6 apprises du pair BGP du routeur Cloud Router. L'adresse doit être comprise dans la plage 2600:2d00:0:2::/63.
  6. Cliquez sur Save and continue (Enregistrer et continuer).

Interconnexion dédiée

  1. Pour configurer une session BGP pour l'interconnexion dédiée, accédez à la page Rattachements de VLAN.

    Accéder aux rattachements de VLAN

  2. Sélectionnez le rattachement de VLAN contenant la session BGP à mettre à jour.

  3. Sur la page Informations sur le rattachement de VLAN, cliquez sur Modifier la session BGP.

  4. Pour activer l'échange de routage IPv6, cliquez sur l'option Activer le trafic IPv6.

  5. Cliquez sur Save and continue (Enregistrer et continuer). Remarque: Vous ne pouvez pas modifier la configuration du saut suivant IPv6 dans Cloud Interconnect. Google Cloud attribue automatiquement des adresses de saut suivant IPv6 aux rattachements de VLAN.

gcloud

Exécutez la commande update-bgp-peer. Utilisez l'option --enable-ipv6 pour autoriser la session BGP à échanger des routes IPv6, comme indiqué dans l'exemple suivant :

gcloud compute routers update-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME \
    --enable-ipv6

Vous pouvez éventuellement spécifier les adresses de saut suivant IPv6 lorsque vous activez le trafic IPv6 pour une session BGP utilisée dans un tunnel VPN haute disponibilité :

gcloud compute routers update-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME \
    --enable-ipv6 \
    --ipv6-nexthop-address=IPV6_NEXTHOP_ADDRESS \
    --peer-ipv6-nexthop-address=PEER_IPV6_NEXTHOP_ADDRESS

Remplacez les éléments suivants :

  • IPV6_NEXTHOP_ADDRESS: adresse IPv6 utilisée par le routeur Cloud pour ce tunnel Cloud VPN. Cette adresse IPv6 est annoncée comme saut suivant pour les routes IPv6 que Cloud Router annonce sur son pair BGP.

    L'adresse doit être comprise dans la plage IPv6 2600:2d00:0:2::/63.

  • PEER_IPV6_NEXTHOP_ADDRESS: adresse IPv6 du routeur sur site. Cette adresse IPv6 est le saut suivant pour les routes IPv6 apprises du pair BGP du routeur Cloud Router. L'adresse doit être comprise dans la plage 2600:2d00:0:2::/63.

Si vous ne spécifiez pas les adresses de saut suivant, Google Cloud attribue automatiquement les adresses non utilisées à partir de la plage IPv6 2600:2d00:0:2::/63.

API

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

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. Pour chaque pair BGP pour lequel vous souhaitez activer IPv6 dans la session BGP, définissez bgpPeers[].enableIpv6 sur TRUE.

    PATCH https://compute.googleapis.com/compute/v1/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 active IPv6 dans la session pour le premier pair BGP :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv6": true
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv6": false
          "
        }
     

    En outre, si vous activez le trafic IPv6 pour une session BGP utilisée dans un tunnel VPN haute disponibilité, vous pouvez spécifier les adresses de saut suivant IPv6 :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv6": true,
          "ipv6NexthopAddress": "2600:2d00:0:0:0:0:1:5",
          "peerIpv6NexthopAddress": "2600:2d00:0:0:0:0:1:6"
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv6": false
        }
    

    Utilisez les valeurs ipv6NexthopAddress et peerIpv6NexthopAddress pour configurer votre votre appareil de VPN pair ou routeur sur site.

    Pour consulter des exemples de configurations pour les VPN haute disponibilité et votre appareil VPN de pair, consultez la page Configurer des VPN tiers pour le trafic IPv4 et IPv6.

    Pour afficher des exemples de configurations pour l'interconnexion dédiée et votre routeur sur site, consultez la page Configurer des routeurs sur site pour le trafic IPv4 et IPv6.

Désactiver l'échange de route IPv6

Cette procédure suppose que vous modifiez une session IPv4 BGP existante qui a précédemment activé IPv6.

Console

Pour les VPN haute disponibilité

  1. Dans la console Google Cloud, accédez à la page Tunnels Cloud VPN.

    Accéder à la page "Tunnels Cloud VPN"

  2. Sélectionnez le tunnel Cloud VPN qui contient la session BGP à mettre à jour.

  3. Sur la page Détails du tunnel VPN, cliquez sur Modifier la session BGP.

  4. Pour désactiver l'échange de route IPv6, cliquez sur l'option Activer le trafic IPv6.

  5. Cliquez sur Save and continue (Enregistrer et continuer).

Interconnexion dédiée

  1. Dans Google Cloud Console, accédez à la page Rattachements de VLAN.

    Accéder aux rattachements de VLAN

  2. Sélectionnez le rattachement de VLAN contenant la session BGP à mettre à jour.

  3. Sur la page Informations sur le rattachement de VLAN, cliquez sur Modifier la session BGP.

  4. Pour désactiver l'échange de route IPv6, cliquez sur l'option Activer le trafic IPv6.

  5. Cliquez sur Save and continue (Enregistrer et continuer).

gcloud

Exécutez la commande "update-bgp-peer". Utilisez l'option "--no-enable-ipv6" pour empêcher la session BGP d'échanger des routes IPv6, comme indiqué dans l'exemple suivant :

gcloud compute routers update-bgp-peer ROUTER_NAME \
--peer-name=PEER_NAME \
--no-enable-ipv6

API

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

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. Pour chaque pair BGP pour lequel vous souhaitez désactiver IPv6 dans la session BGP, définissez bgpPeers[].enableIpv6 sur FALSE.

    PATCH https://compute.googleapis.com/compute/v1/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 désactive IPv6 dans la session pour le premier pair BGP :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv6": false
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv6": false
        }
    

Configurer une session IPv6 BGP

Cette section explique comment modifier la configuration d'une session IPv6 BGP.

Vous ne pouvez pas désactiver l'échange de route IPv6 dans une session IPv6 BGP.

Activer l'échange de route IPv4 sur une session IPv6 BGP

Cette procédure suppose que vous modifiez des sessions IPv4 BGP qui ont déjà été créées pour des tunnels VPN haute disponibilité ou des rattachements de VLAN.

Nous supposons également que vous avez déjà configuré une passerelle VPN haute disponibilité IPv4 et IPv6 (double pile), ou un rattachement de VLAN, comme décrit dans les procédures suivantes:

Pour activer l'échange de route IPv4 dans une session IPv6 BGP existante, procédez comme suit :

gcloud

Exécutez la commande update-bgp-peer. Utilisez l'option --enable-ipv4 pour autoriser la session BGP à échanger des routes IPv4, comme indiqué dans l'exemple suivant:

gcloud beta compute routers update-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME \
    --enable-ipv4

Vous pouvez éventuellement spécifier les adresses de saut suivant IPv4 lorsque vous activez le trafic IPv4 pour une session IPv6 BGP utilisée dans un tunnel VPN haute disponibilité:

gcloud beta compute routers update-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME \
    --enable-ipv4 \
    --ipv4-nexthop-address=IPV4_NEXTHOP_ADDRESS \
    --peer-ipv4-nexthop-address=PEER_IPV4_NEXTHOP_ADDRESS

Remplacez les éléments suivants :

  • IPV4_NEXTHOP_ADDRESS: adresse IPv4 utilisée par Cloud Router pour ce tunnel VPN haute disponibilité. Cette adresse IPv4 est annoncée comme saut suivant pour les routes IPv4 que Cloud Router annonce sur son pair BGP. L'adresse doit être comprise dans la plage de liaison locale IPv4 169.254.0.0/16.
  • PEER_IPV4_NEXTHOP_ADDRESS: adresse IPv4 du routeur sur site. Cette adresse IPv4 est le saut suivant pour les routes IPv4 apprises du pair BGP du routeur Cloud Router. L'adresse doit être comprise dans la plage d'adresses IP de liaison locale IPv4 169.254.0.0/16.

    Si vous ne spécifiez pas les adresses de saut suivant, Google Cloud attribue automatiquement les adresses non utilisées à partir de la plage d'adresses IP de liaison locale (IPv4) 169.254.0.0/16.

API

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

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. Pour chaque pair BGP pour lequel vous souhaitez activer IPv4 dans la session BGP, définissez bgpPeers[].enableIpv4 sur TRUE.

    PATCH https://compute.googleapis.com/compute/beta/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 active IPv4 dans la session pour le premier pair BGP :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "fdff:1::1",
          "peerIpAddress": "fdff:1::2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv4": true
    
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "fdff:1::3",
          "peerIpAddress": "fdff:1::4",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv4": false
        }
     

    En outre, si vous activez le trafic IPv4 pour une session BGP utilisée dans un tunnel VPN haute disponibilité, vous pouvez spécifier les adresses de saut suivant IPv4 :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "fdff:1::1",
          "peerIpAddress": "fdff:1::2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv4": true,
          "ipv4NexthopAddress": "169.254.0.1",
          "peerIpv4NexthopAddress": "169.254.0.2"
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "fdff:1::3",
          "peerIpAddress": "fdff:1::4",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv4": false
        }
    

Désactiver l'échange de route IPv4 sur une session IPv6 BGP

Cette procédure suppose que vous modifiez une session IPv6 BGP existante qui a déjà échangé des routes IPv4.

gcloud

Exécutez la commande update-bgp-peer. Utilisez l'option --no-enable-ipv4 pour empêcher la session IPv6 BGP d'échanger des routes IPv4, comme indiqué dans l'exemple suivant:

gcloud beta compute routers update-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME \
    --no-enable-ipv4

API

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

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. Pour chaque pair BGP pour lequel vous souhaitez désactiver IPv4 dans la session BGP, définissez bgpPeers[].enableIpv4 sur FALSE.

    PATCH https://compute.googleapis.com/compute/beta/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 désactive IPv4 dans la session pour le premier pair BGP :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "fdff:1::1",
          "peerIpAddress": "fdff:1::2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv4": false
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "fdff:1::3",
          "peerIpAddress": "fdff:1::4",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "DEFAULT",
          "advertisedGroups": [],
          "advertisedIpRanges": [],
          "enable": "TRUE",
          "enableIpv4": false
        }
    

Étapes suivantes