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

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

Pour spécifier des annonces sur un routeur cloud existant :

Console


  1. Accédez à la page "Cloud Router" de Google Cloud Console.
    Liste des routeurs cloud
  2. Sélectionnez le routeur Cloud Router à mettre à jour.
  3. Sur la page d'informations du routeur Cloud Router, sélectionnez Modifier.
  4. Développez la section Routages annoncés.
  5. Dans le champ Routages, sélectionnez Créer des routages personnalisés.
  6. Sélectionnez Diffuser tous les sous-réseaux visibles par le routeur cloud 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 pour spécifier une plage d'adresses IP personnalisée.
    • Plage d'adresses IP : spécifiez la plage d'adresses IP personnalisée au format CIDR.
    • Description : ajoutez une description pour vous aider à identifier l'objectif de cette annonce de routage.
  9. Après avoir ajouté les routages, sélectionnez Enregistrer.

gcloud


Exécutez la commande update à l'aide de l'indicateur --set-advertisement-ranges ou --add-advertisement-ranges pour spécifier les plages d'adresses IP personnalisées :

  • Pour définir des plages d'adresses IP personnalisées, utilisez l'indicateur --set-advertisement-ranges. Toute annonce personnalisée existante est remplacée. L'exemple suivant met à jour le routeur Cloud Router 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'indicateur --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'indicateur set-advertisement-groups dans la documentation du SDK Google.

  • Pour ajouter des plages d'adresses IP personnalisées à une annonce existante, utilisez l'indicateur --add-advertisement-ranges. Notez que cet indicateur nécessite que le mode d'annonce du routeur cloud soit déjà défini sur custom. L'exemple suivant ajoute la plage d'adresses 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

Pour spécifier des annonces sur un routeur Cloud Router, utilisez la méthode routers.patch pour 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. Consultez la page Afficher la configuration d'un routeur Cloud Router.

  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 les valeurs suivantes :

    • PROJECT_ID : projet contenant le routeur Cloud Router.
    • REGION : région où se trouve le routeur Cloud Router.
    • ROUTER_NAME : nom du routeur Cloud Router
    • ADVERTISED_GROUPS : groupe défini par Google que le routeur Cloud Router 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

      Consultez l'exemple suivant, qui 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"
      }
      

Pour spécifier des annonces sur une session BGP existante, procédez comme suit :

Console


  1. Accédez à la page "Cloud Router" de Google Cloud Console.
    Liste des routeurs cloud
  2. Sélectionnez le routeur cloud qui contient la session BGP à mettre à jour.
  3. Sur la page d'informations du routeur cloud, sélectionnez la session BGP à mettre à jour.
  4. Sur la page d'informations de la session BGP, sélectionnez Modifier.
  5. Dans le champ Routages, sélectionnez Créer des routages personnalisés.
  6. Sélectionnez Diffuser tous les sous-réseaux visibles par le routeur cloud 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 pour spécifier une plage d'adresses IP personnalisée.
    • Plage d'adresses IP : spécifiez la plage d'adresses IP personnalisée au format CIDR.
    • Description : ajoutez une description pour vous aider à identifier l'objectif de cette annonce de routage.
  9. Après avoir ajouté les routages, sélectionnez Enregistrer.

gcloud


Exécutez la commande update-bgp-peer à l'aide de l'indicateur --set-advertisement-ranges ou --add-advertisement-ranges pour spécifier les plages d'adresses IP personnalisées.

  • Pour définir des plages d'adresses IP personnalisées, utilisez l'indicateur --set-advertisement-ranges. Toute annonce personnalisée existante est remplacée. 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 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'indicateur "--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'indicateur set-advertisement-groups dans la documentation du SDK Google.

  • Pour ajouter des plages d'adresses IP personnalisées à des plages existantes, utilisez l'indicateur --add-advertisement-ranges. Notez que cet indicateur nécessite que le mode d'annonce du routeur cloud soit déjà défini sur custom. L'exemple suivant ajoute la plage d'adresses 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

Pour préciser des annonces sur une session BGP, utilisez la méthode routers.patch pour 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. Consultez la section Afficher la configuration d'un routeur Cloud Router.

  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, ALL_VPC_SUBNETS et ALL_PEER_VPC_SUBNETS. Pour en savoir plus sur ces valeurs, consultez la section routers.patch dans la documentation de l'API.
    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgpPeers": [
        BGP_PEERS
      ]
    }
    

    Remplacez les valeurs suivantes :

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

      Consultez l'exemple suivant, qui 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