Annoncer des plages d'adresses IP personnalisées

Vous pouvez mettre à jour des routeurs cloud ou des sessions BGP qui existent déjà sur un routeur cloud pour annoncer des plages d'adresses IP autres que celles du sous-réseau de votre réseau cloud privé virtuel (VPC). Par exemple, vous pouvez annoncer des adresses IP externes, des adresses IP internes arbitraires ou des adresses IP internes à partir des plages d'adresses IP des sous-réseaux des réseaux VPC pairs connectés à l'aide de l'appairage de réseaux VPC.

Pour spécifier des annonces lorsque vous créez un routeur cloud ou configurez une session BGP, consultez les pages Créer des routeurs cloud et Établir des sessions BGP.

Spécifier des annonces sur un routeur cloud

Pour spécifier des annonces sur un routeur cloud existant, 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. Sur la page Détails du sous-réseau, cliquez sur  Modifier.

  4. Dans la section Routes annoncées, sélectionnez Créer des routes personnalisées pour le paramètre Routes.

  5. Sélectionnez Diffuser tous les sous-réseaux visibles par Cloud Router pour continuer à annoncer les sous-réseaux disponibles pour le routeur cloud. Cette option imite le comportement par défaut du routeur cloud.

  6. Sélectionnez Ajouter un routage personnalisé pour ajouter un routage diffusé.

  7. Configurez l'annonce du routage :

    • Source : sélectionnez Plage d'adresses IP personnalisée.
    • Plage d'adresses IP : utilisez la notation CIDR pour spécifier la plage d'adresses IP personnalisée.
    • Description : ajoutez une description pour vous aider à identifier l'objectif de cette annonce de routage, puis cliquez sur OK.
  8. Après avoir ajouté les routages personnalisés, cliquez sur Enregistrer.

gcloud

Exécutez la commande update. Pour spécifier les plages d'adresses IP personnalisées, utilisez l'option --set-advertisement-ranges ou l'option --add-advertisement-ranges.

  1. Utilisez l'option --set-advertisement-ranges pour remplacer les annonces personnalisées existantes :

    gcloud compute routers update ROUTER_NAME \
       --project=PROJECT_ID \
       --advertisement-mode custom \
       --set-advertisement-groups=ADVERTISED_GROUPS \
       --set-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Remplacez l'élément suivant :

    • ROUTER_NAME : nom du routeur cloud.
    • PROJECT_ID : projet contenant le routeur cloud.
    • ADVERTISED_GROUPS : groupe défini par Google que le routeur cloud annonce de manière dynamique.

      La seule valeur valide est all_subnets, qui permet d'annoncer les sous-réseaux en fonction du mode de routage dynamique du réseau VPC (comme pour les annonces par défaut).

    • ADVERTISED_IP_RANGES : contenu du nouveau tableau de plages d'adresses IP.

    L'exemple suivant met à jour le routeur cloud my-router pour annoncer tous les sous-réseaux et les plages d'adresses IP personnalisées 1.2.3.4 et 6.7.0.0/16 :

    gcloud compute routers update my-router \
       --advertisement-mode custom \
       --set-advertisement-groups all_subnets \
       --set-advertisement-ranges 1.2.3.4,6.7.0.0/16
    

    L'option --set-advertisement-groups accepte les groupes définis par Google que le routeur cloud annonce de manière dynamique. Vous pouvez supprimer l'indicateur --set-advertisement-groups pour exclure les annonces de sous-réseau. Pour obtenir la liste de tous les groupes d'annonces, reportez-vous à l'option set-advertisement-groups dans la documentation du SDK Google.

  2. Utilisez l'option --add-advertisement-ranges, qui nécessite que le mode d'annonce du routeur cloud soit déjà défini sur custom :

    gcloud compute routers update ROUTER_NAME \
       --add-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Remplacez l'élément suivant :

    • ROUTER_NAME : nom du routeur cloud.
    • ADVERTISED_IP_RANGES : contenu du nouveau tableau de plages d'adresses IP.

    L'exemple suivant ajoute l'adresse IP personnalisée 1.2.3.5 aux annonces du routeur cloud :

    gcloud compute routers update my-router \
       --add-advertisement-ranges 1.2.3.5
    

API

La méthode routers.patch permet de mettre à jour les champs bgp.advertisedGroups[] et bgp.advertisedIpRanges[].

Les champs bgp.advertisedGroups[] et bgp.advertisedIpRanges[] acceptent des tableaux de groupes annoncés et de plages d'adresses IP annoncées. Lorsque vous appliquez un correcteur (PATCH) à ces champs, vous écrasez les tableaux existants avec les nouveaux dans votre requête.

  1. Envoyez une requête GET pour obtenir les tableaux actuels des groupes annoncés et des plages d'adresses IP annoncées sur le routeur. Pour en savoir plus, consultez la section Afficher la configuration de session BGP.

  2. Envoyez une requête PATCH avec de nouveaux tableaux de groupes annoncés et de plages d'adresses IP annoncées. Utilisez les tableaux de la requête GET de l'étape précédente et ajoutez les groupes ou les plages d'adresses IP que vous souhaitez sur le routeur.

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgp": {
        "advertisedGroups": [
        "ADVERTISED_GROUPS"
       ],
        "advertisedIpRanges": [
        ADVERTISED_IP_RANGES
       ]
     }
    }
    

    Remplacez l'élément suivant :

    • PROJECT_ID : projet contenant le routeur cloud.
    • REGION : région où se trouve le routeur cloud.
    • ROUTER_NAME : nom du routeur cloud.
    • ADVERTISED_GROUPS : groupe défini par Google que le routeur cloud annonce de manière dynamique.

      La seule valeur valide est ALL_SUBNETS, qui permet d'annoncer les sous-réseaux en fonction du mode de routage dynamique du réseau VPC (comme pour les annonces par défaut).

    • ADVERTISED_IP_RANGES : contenu du nouveau tableau de plages d'adresses IP.

    L'exemple suivant contient deux plages d'adresses IP :

        {
          "range": "1.2.3.4",
          "description": "First example range"
        },
        {
          "range": "6.7.0.0/16",
          "description": "Second example range"
        }
    

Spécifier des annonces sur une session BGP

Pour spécifier des annonces 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 qui contient la session BGP à mettre à jour.

  3. Sur la page Détails du routeur, sélectionnez la session BGP à mettre à jour.

  4. Sur la page Détails de la session BGP, cliquez sur  Modifier.

  5. Dans le champ Routes, sélectionnez Créer des routes personnalisées.

  6. Sélectionnez Diffuser tous les sous-réseaux visibles par Cloud Router pour continuer à annoncer les sous-réseaux disponibles pour le routeur cloud. Cette option imite le comportement par défaut du routeur cloud.

  7. Sélectionnez Ajouter un routage personnalisé pour ajouter un routage diffusé.

  8. Configurez l'annonce du routage :

    • Source : sélectionnez Plage d'adresses IP personnalisée.
    • Plage d'adresses IP : utilisez la notation CIDR pour spécifier la plage d'adresses IP personnalisée.
    • Description : ajoutez une description pour vous aider à identifier l'objectif de cette annonce de routage, puis cliquez sur OK.
  9. Après avoir ajouté les routages personnalisés, cliquez sur Enregistrer.

gcloud

Exécutez la commande update-bgp-peer. Pour spécifier les plages d'adresses IP personnalisées, utilisez l'option --set-advertisement-ranges ou l'option --add-advertisement-ranges.

  1. Utilisez l'option --set-advertisement-ranges pour remplacer les annonces personnalisées existantes :

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --peer-name=PEER_NAME \
        --advertisement-mode custom \
        --set-advertisement-groups=ADVERTISED_GROUPS \
        --set-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Remplacez l'élément suivant :

    • ROUTER_NAME : nom du routeur cloud.
    • PEER_NAME : nom de votre pair BGP.
    • ADVERTISED_GROUPS : groupe défini par Google que le routeur cloud annonce de manière dynamique.

      La seule valeur valide est all_subnets, qui permet d'annoncer les sous-réseaux en fonction du mode de routage dynamique du réseau VPC (comme pour les annonces par défaut).

    • ADVERTISED_IP_RANGES : contenu du nouveau tableau de plages d'adresses IP.

    L'exemple suivant met à jour la session BGP my-bgp-session sur le routeur cloud my-router pour annoncer tous les sous-réseaux et les plages d'adresses IP personnalisées 1.2.3.4 et 6.7.0.0/16 :

    gcloud compute routers update-bgp-peer my-router \
        --peer-name my-bgp-session \
        --advertisement-mode custom \
        --set-advertisement-groups all_subnets \
        --set-advertisement-ranges 1.2.3.4,6.7.0.0/16
    

    L'option --set-advertisement-groups accepte les groupes définis par Google que la session BGP annonce de manière dynamique. Vous pouvez supprimer l'indicateur --add-advertisement-groups pour exclure les annonces de sous-réseau. Pour obtenir la liste de tous les groupes d'annonces, reportez-vous à l'option set-advertisement-groups dans la documentation du SDK Google.

  2. Utilisez l'option --add-advertisement-ranges, qui nécessite que le mode d'annonce du routeur cloud soit déjà défini sur custom :

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --peer-name=PEER_NAME \
        --add-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Remplacez l'élément suivant :

    • ROUTER_NAME : nom du routeur cloud.
    • PEER_NAME : nom de votre pair BGP.
    • ADVERTISED_IP_RANGES : contenu du nouveau tableau de plages d'adresses IP.

    L'exemple suivant ajoute l'adresse IP personnalisée 1.2.3.5 aux annonces du routeur cloud :

    gcloud compute routers update-bgp-peer my-router \
        --peer-name my-bgp-session \
        --add-advertisement-ranges 1.2.3.5
    

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 ajouter des annonces, procédez comme suit :

    • Ajoutez les annonces de la plage d'adresses IP que vous souhaitez au champ bgpPeers[].advertisedIpRanges[].
    • Ajoutez les annonces de groupes que vous souhaitez au champ bgpPeers[].advertisedGroups[]. Les valeurs valides sont ALL_SUBNETS et ALL_VPC_SUBNETS. Pour en savoir plus sur ces valeurs, consultez la section routers.patch de la documentation de l'API.
    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgpPeers": [
        BGP_PEERS
      ]
    }
    

    Remplacez l'élément suivant :

    • 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 contient deux pairs BGP avec des annonces personnalisées :

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedGroups": ["ALL_SUBNETS"],
          "advertisedIpRanges": [
            {
              "range": "1.2.3.4",
              "description": "First example range"
            },
            {
              "range": "6.7.0.0/16",
              "description": "Second example range"
            }
          ]
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedIpRanges": [
            {
              "range": "192.168.10.0/24",
              "description": "Third example range"
            }
          ]
        }
    

Étape suivante

  • Pour afficher la configuration d'un routeur cloud, de ses sessions BGP et des routes annoncées par Cloud Router, consultez la page Afficher les détails d'un routeur cloud.

  • Pour résoudre les problèmes d'annonce de routage personnalisée, consultez la section de dépannage.