Établir la connectivité à l'aide d'un dispositif tiers

Network Connectivity Center vous permet d'utiliser un dispositif virtuel de réseau tiers pour établir la connectivité entre un site externe et vos ressources réseau de cloud privé virtuel (VPC). Pour établir la connectivité de cette manière, vous utilisez la fonctionnalité d'appareil de Routeur.

L'appareil de routeur est l'un des types de spoke acceptés pour Network Connectivity Center. Pour en savoir plus sur le centre de connectivité réseau, consultez la section Présentation du centre de connectivité réseau. Pour en savoir plus sur l'appareil de routeur, consultez la présentation de l'appliance de routeur.

Exemple de configuration

Dans la topologie suivante, un site externe se connecte à deux réseaux VPC à l'aide d'un spoke de dispositif de routeur.

La VM qui héberge l'instance de dispositif de routeur possède une interface dans chaque réseau VPC. L'instance de dispositif de routeur gère les sessions BGP (Border Gateway Protocol) avec les routeurs cloud dans les deux réseaux.

Chaque routeur cloud possède deux interfaces. L'interface du dispositif du routeur de chaque réseau est appairé aux deux interfaces du routeur cloud approprié, pour un total de quatre sessions d'appairage.

Créer des sessions BGP pour les appareils de routeur
Exemple de topologie de site à cloud (cliquez pour agrandir)

Tâches requises

Pour configurer l'exemple de configuration, assurez-vous de remplir les conditions préalables requises pour cette procédure, puis effectuez les tâches requises :

  1. Créez la machine virtuelle (VM) Compute Engine faisant office d'instance d'appareil de routeur. Vous pouvez créer la VM à l'aide d'une solution partenaire compatible ou de votre propre image personnalisée.

  2. Assurez-vous que l'instance d'appareil de routeur est accessible au trafic BGP via le port TCP 179. Pour les rendre accessibles, vous devrez peut-être créer des règles de pare-feu.

  3. Créez deux spokes, un dans chaque réseau VPC. Chaque spoke utilise la même instance de dispositif de routeur que sa ressource de sauvegarde.

  4. Configurez deux routeurs cloud, un dans chaque réseau VPC. Pour chaque routeur cloud, cette tâche comprend les sous-tâches suivantes :

    1. Créez un routeur cloud dans la même région que l'instance d'appareil de routeur.

    2. Créez deux interfaces, une sur chaque routeur cloud.

    3. Configurer l'appairage BGP sur le routeur Cloud Router

  5. Configurez l'appairage BGP sur l'instance d'appareil de routeur.

La procédure à suivre pour compléter ces tâches peut varier considérablement. Par exemple, si vous créez une instance d'appareil de routeur à l'aide d'une solution partenaire, certaines des tâches suivantes peuvent être automatisées.

Avant de commencer

Avant de commencer, consultez les sections suivantes.

Créer ou sélectionner un projet

Pour faciliter la configuration de Network Connectivity Center, commencez par identifier un projet valide.

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  4. Installez Google Cloud CLI.
  5. Pour initialiser gcloudCLI, exécutez la commande suivante :

    gcloud init
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  8. Installez Google Cloud CLI.
  9. Pour initialiser gcloudCLI, exécutez la commande suivante :

    gcloud init
  1. Si vous utilisez Google Cloud CLI, définissez votre ID de projet à l'aide de la commande gcloud config set.

    gcloud config set project PROJECT_ID

    Remplacez PROJECT_ID par votre ID de projet unique.

    Dans les instructions gcloud CLI présentées sur cette page, nous partons du principe que vous avez défini l'ID de votre projet.

  1. Pour vérifier que vous avez correctement défini l'ID du projet, utilisez la commande gcloud config list.

    gcloud config list --format='text(core.project)'

Activer l'API Network Connectivity

Pour pouvoir effectuer des tâches quelconques à l'aide de Network Connectivity Center, vous devez activer l'API Network Connectivity.

Console

Pour activer l'API Network Connectivity, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Cliquez sur Activer.

Vous pouvez également activer l'API à l'aide de la bibliothèque d'API de la console Google Cloud, comme décrit dans la section Activer des API.

Obtenir l'accès

Pour utiliser Network Connectivity Center, vous devez disposer des autorisations décrites dans la section Rôles et autorisations.

Lorsque vous configurez le centre de connectivité réseau, vous utilisez également des ressources Google Cloud telles que les réseaux VPC, les sous-réseaux et les règles de pare-feu. Pour plus d'informations sur les autorisations dont vous avez besoin pour utiliser ces ressources, consultez la documentation sur le contrôle des accès dans Compute Engine.

Adresses IP et instances d'appliance de routeur

Pour configurer une instance d'appareil de routeur, vous devez appairer l'instance et le routeur cloud. Pour configurer l'appairage, la VM doit utiliser une adresse IP interne RFC 1918. Vous ne pouvez pas appairer ces deux ressources si la VM utilise un autre type d'adresse. En outre, les deux adresses IP doivent se trouver dans la même région.

Pour en savoir plus sur l'affichage des adresses IP d'une VM, consultez les documents suivants :

Pour obtenir des définitions et des informations détaillées sur les types d'adresses IP, consultez la section Adresses IP.

Réserver une adresse IP interne statique (recommandé)

Nous vous recommandons d'attribuer une adresse IP interne statique à votre instance d'appareil de routeur afin qu'elle ne change pas lors du redémarrage. Si l'adresse change, l'appairage BGP échoue.

Plusieurs options s'offrent à vous pour attribuer une adresse IP réservée. Vous pouvez réserver l'adresse IP à l'avance ou la réserver lors de la création de la VM. Si vous attribuez par erreur une adresse éphémère à la VM, vous pouvez par la suite la convertir en adresse statique. Pour en savoir plus sur les adresses IP statiques, consultez la page Réserver des adresses IP statiques.

Adresses IP pour l'appairage BGP

Une instance d'appareil de routeur utilise son adresse IP interne pour l'appairer avec Cloud Router. L'instance n'utilise pas d'adresse de liaison locale (telle que 169.254.x.x) pour l'appairage BGP.

Cloud Router utilise également deux adresses IP internes RFC 1918 pour établir un appairage avec l'instance d'appareil de routeur (une adresse pour chaque interface). Ces adresses IP peuvent être attribuées manuellement ou automatiquement à partir du sous-réseau contenant à la fois l'interface de l'instance d'appareil de routeur et celle de Cloud Router.

Créer des ressources VPC

Les sections suivantes expliquent comment créer des réseaux et des sous-réseaux VPC.

Créer deux réseaux VPC

Si vous ne l'avez pas déjà fait, créez deux réseaux VPC. Définissez le mode de routage dynamique de chaque réseau sur global.

Pour en savoir plus sur la création de réseaux VPC, consultez la section Créer des réseaux.

Console

Pour créer un réseau VPC personnalisé à l'aide de Google Cloud Console, consultez la section Créer un réseau en mode personnalisé. Assurez-vous de définir le mode de routage dynamique sur Mondial. Si vous souhaitez suivre les conventions de dénomination utilisées dans l'exemple de configuration, appelez vos réseaux network-a et network-b.

gcloud

Pour créer un réseau VPC personnalisé, utilisez la commande gcloud compute networks create.

  gcloud compute networks create NAME \
      --subnet-mode custom \
      --bgp-routing-mode global

Remplacez NAME par le nom du réseau VPC, par exemple, network-a ou network-b.

API

Pour créer un réseau VPC personnalisé à l'aide de l'API Compute Engine, consultez la section Utiliser VPC.

Créer un sous-réseau

Créez un sous-réseau dans la région network-a et un sous-réseau dans la région network-b.

Console

Pour ajouter un sous-réseau à l'aide de la console Google Cloud, consultez la section Ajouter des sous-réseaux.

Si vous souhaitez suivre les conventions de nommage utilisées dans l'exemple de configuration, utilisez les valeurs suivantes pour le sous-réseau dans network-a :

  • Nom : subnet-a
  • Région : us-central1
  • Plage : 10.1.3.0/24

Utilisez les valeurs suivantes pour le sous-réseau dans network-b :

  • Nom : subnet-b
  • Région : us-central1
  • Plage : 192.168.10.0/24

gcloud

Pour créer un sous-réseau VPC, utilisez la commande gcloud compute networks subnets create.

  gcloud compute networks subnets create NAME \
      --network=NETWORK \
      --region=REGION \
      --range=RANGE

Remplacez les éléments suivants :

  • NAME : nom du sous-réseau contenant la VM du dispositif de routeur, par exemple subnet-a ou subnet-b.
  • NETWORK : réseau qui contient le sous-réseau, par exemple network-a ou network-b.
  • REGION : région contenant le sous-réseau (par exemple, us-central1)
  • RANGE : plage d'adresses IP du sous-réseau au format CIDR (par exemple, 10.1.3.0/24 ou 192.168.10.0/24)

API

Pour créer un sous-réseau VPC à l'aide de l'API Compute Engine, consultez la section Utiliser VPC.

Créer la VM du dispositif de routeur

Créez la VM Compute Engine qui sert d'instance de dispositif de routeur. La VM est représentée dans l'exemple de topologie sous la forme router-app-a. Elle comporte deux interfaces, une dans network-a et une dans network-b.

Lorsque vous créez la VM, vous devez sélectionner une image de dispositif virtuel de réseau. Il peut s'agir de l'une des images suivantes :

Pour plus d'informations sur la spécification des images, consultez les ressources suivantes :

Pour en savoir plus sur la création d'une VM, consultez la page Créer et démarrer une instance de VM.

Les exemples de cette section partent du principe que vous avez réservé des adresses IP pour l'instance d'appliance de routeur. Pour plus d'informations, consultez la section Adresses IP pour l'appliance de routeur.

Console

Pour créer la VM utilisée dans l'exemple de configuration, consultez la section Créer et démarrer une instance de VM. Lorsque vous créez la VM, effectuez les choix suivants :

  • Si vous souhaitez suivre les conventions d'attribution de noms utilisées dans l'exemple de configuration, utilisez les valeurs suivantes :

    • Nom : router-app-a
    • Région :us-central1
    • Zone : us-central1-a
  • Pour sélectionner une image, accédez à la zone Disque de démarrage de la page, cliquez sur Modifier, puis accédez à l'image appropriée pour la VM.

  • Développez la section Options avancées, puis Mise en réseau. Utilisez les valeurs suivantes :

    • Sous Transfert IP, sélectionnez Activer.
    • Sous Interfaces réseau, créez deux interfaces : l'une dans network-a et l'autre dans network-b. Pour créer chaque interface, sélectionnez le réseau approprié, puis cliquez sur Ajouter une interface réseau. Renseignez les champs suivants :
      • Sélectionnez le sous-réseau dans lequel vous souhaitez installer l'instance d'appareil de routeur (par exemple subnet-a ou subnet-b).
      • Sous Adresse IP interne principale, sélectionnez l'adresse IP interne RFC 1918 réservée que vous souhaitez utiliser (par exemple, 10.1.3.8 ou 192.168.10.3).
      • Sous Niveau de service réseau, sélectionnez Premium. Ce choix optimise l'utilisation du réseau Google par le trafic.

gcloud

Pour créer les deux VM de dispositif de routeur utilisées dans l'exemple de configuration, utilisez la commande gcloud compute instances create.

Exécutez la commande deux fois : une fois pour chaque instance de dispositif de routeur. Remplacez INSTANCE_NAME par le nom de la VM qui fait office d'instance de dispositif de routeur.

Dans l'exemple suivant, vous attribuez l'adresse IP interne statique et l'adresse IP externe statique que vous avez réservées précédemment sur la VM. Vous spécifiez également le projet contenant une image fournie par le fournisseur pour la VM, avec le nom de l'image.

  gcloud compute instances create INSTANCE_NAME \
      --project=PROJECT \
      --zone=ZONE \
      --machine-type=MACHINE_TYPE \
      --network-tier=NETWORK_TIER \
      --network-interface=[subnet=SUBNET,private-network-ip=INTERNAL_IP_ADDRESS] \
      --can-ip-forward \
      --image-project=IMAGE_PROJECT \
      --image=IMAGE

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de la VM agissant en tant qu'instance d'appliance de routeur (par exemple, router-app-a ou router-app-b).
  • PROJECT : nom du projet contenant les VM d'appliance de routeur (par exemple, my-project)
  • ZONE : zone Google Cloud dans laquelle se trouve la VM (par exemple, us-west1-a)
  • MACHINE_TYPE : ressource de type de machine à utiliser pour la VM (par exemple, n1-standard-2)
  • NETWORK_TIER : lors de la création des VM d'appliance de routeur, définissez le niveau de réseau sur premium. Ce choix maximise la portée du trafic sur le réseau Google
  • SUBNET : sous-réseau attribué à l'interface réseau principale de la VM (par exemple, subnet-a-1)
  • INTERNAL_IP_ADDRESS : adresse IP interne RFC 1918 attribuée à l'interface de VM qui se connecte au routeur cloud (par exemple, 10.0.1.10)
  • IMAGE_PROJECT : nom du projet contenant l'image spécifiée dans le champ image (par exemple, debian-cloud
  • IMAGE : nom de l'image à installer (par exemple, debian-10-buster-v20210217)

API

Pour créer les deux VM de dispositif de routeur utilisées dans l'exemple de configuration, utilisez la méthode compute.instances.insert.

Pour découvrir d'autres méthodes, consultez la section Créer et démarrer une instance de VM.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances
 {
   "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
   "name": "INSTANCE_NAME",
   "canIpForward": "true",
   "networkInterfaces": [{
     "subnetwork": "regions/REGION/subnetworks/SUBNET",
     "networkIP": "INTERNAL_IP_ADDRESS",
     "accessConfigs": [{
         "networkTier": "NETWORK_TIER,
       }]
     }],
    "disks": [{
      "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      },
      "boot": true
   }]
 }

Remplacez les éléments suivants :

  • PROJECT : nom du projet contenant les VM d'appliance de routeur (par exemple, my-project)
  • ZONE : zone Google Cloud dans laquelle se trouve la VM (par exemple, us-west1-a)
  • MACHINE_TYPE : ressource de type de machine à utiliser pour la VM (par exemple, zones/us-west1-a/machineTypes/n1-standard-2)
  • INSTANCE_NAME : nom de la VM (par exemple, router-app-a ou router-app-b)
  • REGION : région contenant la VM (par exemple, us-west1)
  • SUBNET : sous-réseau attribué à l'interface réseau principale de la VM (par exemple, regions/us-west1/subnetworks/subnet-a-1)
  • INTERNAL_IP_ADDRESS : adresse IP interne RFC 1918 attribuée à la VM. Configure l'adresse pour l'interface de VM qui se connecte au routeur cloud (par exemple, 10.0.1.10)
  • NETWORK_TIER : lors de la création des VM d'appliance de routeur, définissez le niveau de réseau sur premium. Ce choix maximise la portée du trafic sur le réseau Google
  • IMAGE_PROJECT : nom du projet contenant l'image que vous spécifiez lors de la création de la VM (par exemple, debian-cloud)
  • IMAGE : nom de l'image à utiliser lors de la création de la VM (par exemple, debian-10-buster-v20210217)

Créer une règle de pare-feu pour autoriser BGP

Créez deux règles de pare-feu, une dans network-a et une network-b. Chaque règle doit autoriser le trafic BGP sur le port TCP 179.

Pour plus d'informations sur les commandes de pare-feu, consultez la section Utiliser des règles de pare-feu.

Console

Pour créer une règle de pare-feu VPC à l'aide de la console Google Cloud, consultez la section Créer des règles de pare-feu.

gcloud

Pour créer une règle de pare-feu VPC à l'aide de l'interface de ligne de commande Google Cloud, consultez la page Créer des règles de pare-feu.

API

Pour créer une règle de pare-feu VPC à l'aide de l'API Compute Engine, consultez la section Créer des règles de pare-feu.

Créer les ressources du centre de connectivité réseau

Avant de pouvoir utiliser une VM de dispositif de routeur, vous devez créer les ressources requises du centre de connectivité réseau.

Créer un hub

Avant de pouvoir créer des spokes Network Connectivity Center, vous devez créer un hub.

Console

  1. Dans Google Cloud Console, accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Dans le menu du projet, sélectionnez un projet.

  3. Saisissez un nom de hub.

  4. Saisissez une description facultative.

  5. Vérifiez l'ID du projet. Si l'ID du projet est incorrect, sélectionnez un autre projet à l'aide du menu déroulant situé en haut de l'écran.

  6. Cliquez sur Continuer.

  7. La console affiche un formulaire vous permettant de créer un spoke. Pour le remplir maintenant, suivez les étapes décrites dans la section Créer un spoke d'appareil de routeur.

  8. Cliquez sur OK.

gcloud

Pour créer un hub, utilisez la commande gcloud network-connectivity hubs create.

  gcloud network-connectivity hubs create HUB_NAME \
    --description="DESCRIPTION" \
    --labels="KEY"="VALUE"

Remplacez les valeurs suivantes :

  • HUB_NAME : nom du nouveau hub
  • DESCRIPTION : texte facultatif décrivant le hub
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte du libellé facultatif

API

Pour créer un hub, utilisez la méthode networkconnectivity.hubs.create.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs
  {
    "name":"HUB_NAME",
    "description":"DESCRIPTION",
    "labels": {
      "KEY": "VALUE"
    }
  }

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID du projet contenant le nouveau hub
  • HUB_NAME : nom du nouveau hub
  • DESCRIPTION : texte facultatif décrivant le hub
  • KEY : clé de la paire clé/valeur pour le texte du libellé facultatif
  • VALUE : valeur de la paire clé/valeur pour le texte du libellé facultatif

Créer deux spokes de dispositif de routeur

Créez deux spokes de dispositif de routeur. Les deux spokes utilisent la même ressource de sauvegarde : l'instance de dispositif de routeur que vous venez de créer. Un spoke utilise l'interface dans network-a et l'autre utilise l'interface dans network- b.

Vous devez créer un spoke pour activer l'appairage BGP entre l'instance d'appareil de routeur et le routeur cloud, que vous créez à l'étape suivante.

Pour en savoir plus sur la création d'un spoke, consultez la section Travailler avec des hubs et des spokes.

Console

Saisir les détails de base des spokes

  1. Dans Google Cloud Console, accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Dans le menu "projet", sélectionnez un projet.

  3. Cliquez sur l'onglet Spokes.

  4. Cliquez sur Ajouter des spokes.

  5. Dans le formulaire Nouveau spoke, définissez le type de spoke sur dispositif de Routeur.

  6. Saisissez un Nom de spoke. Par exemple : spoke-a ou spoke-b.

  7. (Facultatif) Saisissez une description.

  8. Sélectionnez le champ Région du nouveau spoke.

  9. Sous Transfert de données de site à site, sélectionnez Désactivé.

  10. Dans la liste déroulante Réseau VPC, sélectionnez un réseau.

Saisissez les détails de l'appareil de routeur

  1. Sous Associer une ou plusieurs instances au spoke, utilisez la liste déroulante pour sélectionner un dispositif de routeur(par exemple, router-app-a).
  2. Pour ajouter d'autres instances de dispositif de routeur à ce spoke, cliquez sur Ajouter une instance et répétez l'étape précédente.
  3. Lorsque vous avez terminé, cliquez sur OK et passez à l'étape Enregistrer votre spoke.

Enregistrer vos spokes

  1. Pour ajouter les deuxièmes spokes, cliquez sur Ajouter un spoke et recommencez le processus en commençant par la saisie d'un nom de spoke.
  2. Lorsque vous avez terminé d'ajouter des spokes, cliquez sur Créer. La page Network Connectivity Center est mise à jour et affiche les détails des spokes que vous avez créés.

gcloud

Pour créer les spokes du dispositif de routeur, utilisez la commande gcloud network-connectivity spokes linked-router-appliances create. Exécutez la commande deux fois : une fois pour chaque spoke.

  gcloud network-connectivity spokes linked-router-appliances create NAME \
    --hub="HUB_URI" \
    --description="DESCRIPTION" \
    --router-appliance=instance="ROUTER_APPLIANCE_URI",ip=IP_ADDRESS \
    --region=REGION \
    --labels="KEY"="VALUE" \
 

Remplacez les valeurs suivantes :

  • NAME : nom du spoke, par exemple, spoke-a
  • HUB_URI : URI du hub auquel vous associez le spoke
  • DESCRIPTION : texte facultatif décrivant le spoke
  • ROUTER_APPLIANCE_URI : URI de l'instance d'appareil de routeur. Par exemple :
    https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME 
  • IP_ADDRESS : adresse IP interne de l'instance de dispositif de routeur, dans le réseau VPC approprié, par exemple 10.1.3.8 ou 192.168.10.3
  • REGION : région Google Cloud dans laquelle vous souhaitez localiser le spoke, par exemple us-central1
  • KEY : clé de la paire clé/valeur pour le texte du libellé facultatif
  • VALUE : valeur de la paire clé/valeur pour le texte du libellé facultatif

    Par exemple, la commande suivante crée un spoke d'appareil de routeur qui utilise router-app-acomme ressources sous-jacentes : Cette commande référence l'instance de dispositif du routeur à l'aide de son interface network-a :

    gcloud network-connectivity spokes linked-router-appliances create spoke-a \
        --hub=my-hub \
        --description="Test spoke 1" \
        --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=10.1.3.8 \
        --region=us-central1 \
    

    Par exemple, la commande suivante crée un spoke d'appareil de routeur qui utilise router-app-acomme ressources sous-jacentes : Cette commande référence l'instance de dispositif du routeur à l'aide de son interface network-b :

    gcloud network-connectivity spokes linked-router-appliances create spoke-b \
        --hub=my-hub \
        --description="Test spoke 1" \
        --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=192.168.10.3\
        --region=us-central1 \
    

API

Pour créer un spoke de dispositif de routeur, utilisez la méthode networkconnectivity.spokes.create. Pour chaque instance d'appareil de routeur que vous souhaitez associer au spoke, ajoutez une instance à l'aide du tableau linkedRouterApplianceInstances.instances.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
  {
    "hub": "HUB_URI",
    "labels": {"KEY": "VALUE"},
    "linkedRouterApplianceInstances": {
      "instances": [
        {
          "virtualMachine": "ROUTER_APPLIANCE_URI",
          "ipAddress": INTERNAL_IP_ADDRESS,
        },
      ],
      "siteToSiteDataTransfer": BOOLEAN
    }
  }
 

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID de votre projet
  • REGION : région Google Cloud dans laquelle vous souhaitez localiser le spoke, par exemple us-west1
  • SPOKE_NAME : nom que vous souhaitez donner au spoke
  • HUB_URI : URI du hub auquel vous associez le spoke. Par exemple :
    http://networkconnectivity.googleapis.com/v1/projects/PROJECT_NAME/locations/global/hubs/HUB_NAME 
  • KEY : clé de la paire clé/valeur pour le texte du libellé facultatif
  • VALUE : valeur de la paire clé/valeur pour le texte du libellé facultatif
  • ROUTER_APPLIANCE_URI : URI de l'instance d'appareil de routeur. Par exemple :
    https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME 
  • IP_ADDRESS : adresse IP interne de l'instance de dispositif de routeur pour le réseau VPC approprié, par exemple 10.1.3.8 ou 192.168.10.3
  • BOOLEAN : valeur qui détermine si le transfert de données de site à site est activé pour ce spoke. Pour ce cas d'utilisation, définissez l'option sur false.

    Par exemple, pour créer un spoke qui utilise router-app-a pour l'interface dans network-a, le corps de votre requête doit être structuré comme suit :

    {
      "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub",
    
      "labels": {
        "environment" : "test"
      },
    
      "linkedRouterApplianceInstances": {
        "instances": [
          {
            "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",
            "ipAddress": "10.1.3.8",
          },
        ],
        "siteToSiteDataTransfer": false
      }
    }
    
    

    Pour créer un spoke qui utilise router-app-a pour l'interface dans network-b, le corps de votre requête doit être structuré comme suit :

    {
      "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub",
    
      "labels": {
        "environment" : "test"
      },
    
      "linkedRouterApplianceInstances": {
        "instances": [
          {
            "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",
            "ipAddress": "192.168.10.3",
          },
        ],
        "siteToSiteDataTransfer": false
      }
    }
    
    

Configurer des routeurs cloud

L'appareil de routeur utilise des routeurs Cloud pour échanger des routes avec des réseaux VPC. Pour cette raison, vous devez créer un routeur Cloud Router dans chaque réseau VPC et effectuer quelques autres tâches de configuration.

Créer les routeurs cloud

Si vous utilisez les mêmes valeurs que l'exemple de topologie, créez deux routeurs cloud, un dans network-a et un dans network-b. Les deux routeurs cloud doivent se trouver dans us-central1.

Pour plus d'informations, consultez la page Créer des routeurs Cloud Routers.

Console

Pour créer un routeur Cloud Router dans la console Google Cloud, utilisez l'une des approches suivantes :

  • Utilisez la page Cloud Router, comme décrit dans la section Créer un routeur cloud.

  • Utilisez la page Network Connectivity Center. L'avantage de cette approche est qu'elle vous permet de créer le routeur, les interfaces et les sessions BGP en même temps. Pour en savoir plus sur la réalisation de toutes ces étapes, consultez la section Configurer l'appairage BGP sur le routeur Cloud Router.

gcloud

Pour créer un routeur Cloud Router, utilisez la commande gcloud compute routers create.

  gcloud compute routers create NAME \
      --region=REGION \
      --network=NETWORK \
      --asn=ASN \
      --project=PROJECT_ID

Remplacez les éléments suivants :

  • NAME : nom du routeur Cloud Router, par exemple cloud-router-a ou cloud-router-b.
  • REGION : région contenant le routeur cloud (par exemple, us-central1)
  • NETWORK : réseau VPC contenant le routeur cloud (par exemple, network-a ou network-b)
  • ASN : numéro ASN (Autonomous System Number) du routeur cloud. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996 (par exemple, 65000)
  • PROJECT_ID : ID de projet pour le routeur cloud (par exemple, my-project)

API

Pour créer un routeur Cloud Router, utilisez la méthode compute.routers.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers
{
 "name": "NAME",
 "network": "NETWORK",
 "bgp": {
   "asn": ASN
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID de projet pour le routeur cloud (par exemple, my-project)
  • REGION : région contenant le routeur cloud (par exemple, us-central1)
  • NAME : nom du routeur Cloud Router, par exemple cloud-router-a ou cloud-router-b.
  • NETWORK : URI du réseau VPC contenant le routeur cloud (par exemple, /global/networks/network-a ou /global/networks/network-b)
  • ASN : numéro ASN (Autonomous System Number) du routeur cloud. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996 (par exemple, 65000)

Créez deux interfaces, une sur chaque routeur Cloud Router

Pour établir une redondance, créez deux interfaces sur chaque routeur Cloud Router. Sur chaque routeur Cloud Router, les deux interfaces doivent être associées au même sous-réseau que l'interface de l'appareil de routeur correspondant. Si vous utilisez les valeurs de l'exemple de topologie, procédez comme suit :

  • Pour cloud-router-a, créez deux interfaces dans subnet-a.
  • Pour cloud-router-b, créez deux interfaces dans subnet-b.

L'interface Cloud Router utilise une adresse IP interne régionale. Si vous spécifiez explicitement l'adresse IP interne de l'interface, l'adresse IP doit appartenir à la plage d'adresses IP principale du sous-réseau. Il ne peut pas déjà être utilisé par une autre ressource, telle qu'une VM ou une autre interface de routeur cloud.

Il n'existe aucune instruction de la console Google Cloud pour cette étape. Si vous utilisez la console Google Cloud, lorsque vous terminez la tâche suivante (Créer un appairage BGP sur chaque routeur cloud), les interfaces sont créées automatiquement.

gcloud

Pour créer des interfaces redondantes sur vos routeurs Cloud Router, utilisez la commande gcloud compute routers add-interface.

Effectuez deux fois les étapes suivantes, une fois pour cloud-router-a et à nouveau pour cloud-router-b :

  1. Pour chaque routeur cloud, créez la première interface :

    gcloud compute routers add-interface ROUTER_NAME \
        --interface-name=FIRST_INTERFACE_NAME \
        --ip-address=FIRST_INTERFACE_IP_ADDRESS \
        --subnetwork=SUBNET \
        --region=REGION \
        --project=PROJECT_ID
    

    Remplacez les éléments suivants :

    • ROUTER_NAME : nom du routeur Cloud Router à mettre à jour, par exemple, cloud-router-a ou cloud-router-b
    • FIRST_INTERFACE_NAME : nom de l'interface. Par exemple, interface-1
    • FIRST_INTERFACE_IP_ADDRESS : adresse IP interne RFC 1918 à utiliser pour la première interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseau
    • SUBNET : sous-réseau contenant l'interface de routeur Cloud Router et l'interface d'instance d'appareil de routeur correspondante
    • REGION : région Google Cloud dans laquelle réside le routeur Cloud Router (par exemple, us-central1)
    • PROJECT_ID : ID de projet pour le routeur cloud (par exemple, my-project)
  2. Pour chaque routeur Cloud Router, créez l'interface redondante :

    gcloud compute routers add-interface ROUTER_NAME \
        --interface-name=SECOND_INTERFACE_NAME \
        --ip-address=SECOND_INTERFACE_IP_ADDRESS \
        --subnetwork=SUBNET \
        --redundant-interface=FIRST_INTERFACE_NAME \
        --region=REGION \
        --project=PROJECT_ID
    

    Remplacez les éléments suivants :

    • ROUTER_NAME : nom du routeur Cloud Router à mettre à jour, par exemple, cloud-router-a ou cloud-router-b
    • SECOND_INTERFACE_NAME : nom de l'interface. Par exemple, interface-2
    • SECOND_INTERFACE_IP_ADDRESS : adresse IP interne RFC 1918 à utiliser pour la deuxième interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseau
    • SUBNET : sous-réseau contenant les deux interfaces de routeur Cloud Router et l'interface d'instance d'appareil de routeur correspondante.
    • FIRST_INTERFACE_NAME : nom de l'interface que vous avez créée à l'étape 1
    • REGION : région Google Cloud dans laquelle réside le routeur Cloud Router (par exemple, us-central1)
    • PROJECT_ID : ID de projet pour le routeur cloud (par exemple, my-project)

    Exemples de commandes pour cloud-router-a

    La commande suivante crée la première interface sur cloud-router-a :

    gcloud compute routers add-interface cloud-router-a \
        --interface-name=interface-1 \
        --ip-address=10.1.3.14 \
        --subnetwork=subnet-a \
        --region=us-central1 \
        --project=my-project
    

    La commande suivante crée la deuxième interface sur cloud-router-a :

    gcloud compute routers add-interface cloud-router-a \
        --interface-name=interface-2 \
        --ip-address=10.1.3.15 \
        --subnetwork=subnet-a \
        --redundant-interface=interface-1 \
        --region=us-central1 \
        --project=my-project
    

    Exemples de commandes pour cloud-router-b

    La commande suivante crée la première interface sur cloud-router-b :

    gcloud compute routers add-interface cloud-router-b \
        --interface-name=interface-1 \
        --ip-address=192.168.10.14 \
        --subnetwork=subnet-b \
        --region=us-central1 \
        --project=my-project
    

    La commande suivante crée la deuxième interface sur cloud-router-b :

    gcloud compute routers add-interface cloud-router-b \
       --interface-name=interface-2 \
       --ip-address=192.168.10.15 \
       --subnetwork=subnet-b \
       --redundant-interface=interface-1 \
       --region=us-central1 \
       --project=my-project
    

API

Pour créer des interfaces redondantes sur vos routeurs Cloud Router, utilisez la méthode compute.routers.patch.

Exécutez la requête suivante deux fois : une fois pour cloud-router-a et une autre fois pour cloud-router-b :

    "PATCH
    https"://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME
    {
      "region":"REGION",
      "interfaces":[
        {
          "name":"FIRST_INTERFACE_NAME",
          "privateIpAddress:"FIRST_INTERFACE_IP_ADDRESS",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET"
        },
        {
          "name":"SECOND_INTERFACE_NAME",
          "privateIpAddress:"SECOND_INTERFACE_IP_ADDRESS",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET",
          "redundantInterface": "FIRST_INTERFACE_NAME"
        }
      ]
    }
  

Remplacez les éléments suivants :

  • PROJECT_ID : ID de projet pour le routeur cloud (par exemple, my-project)
  • REGION : région Google Cloud dans laquelle réside le routeur Cloud Router (par exemple, us-central1)
  • NAME : nom du routeur Cloud Router à mettre à jour, par exemple, cloud-router-a ou cloud-router-b
  • NETWORK : réseau VPC contenant le routeur cloud (par exemple, network-a)
  • FIRST_INTERFACE_NAME : nom de la première interface (par exemple, interface-1)
  • FIRST_INTERFACE_IP_ADDRESS : adresse IP interne RFC 1918 à utiliser pour la première interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseau
  • SUBNET : sous-réseau contenant les deux interfaces de routeur Cloud Router et l'interface d'instance d'appareil de routeur correspondante.
  • SECOND_INTERFACE_NAME : nom de la deuxième interface (par exemple, interface-2)
  • SECOND_INTERFACE_IP_ADDRESS : adresse IP interne RFC 1918 à utiliser pour la deuxième interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseau

    Exemples de commandes pour cloud-router-a

    La commande suivante crée deux interfaces sur cloud-router-a :

     "PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-a
      {
       "region":"us-central1",
       "interfaces":[
         {
          "name":"router-appliance-interface-0",
          "privateIpAddress:"10.1.3.14",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a"
         },
         {
          "name":"router-appliance-interface-1",
          "privateIpAddress:"10.1.3.15",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a",
          "redundantInterface": "router-appliance-interface-0"
         }
       ]
      }
     

    Exemple de commande pour cloud-router-b

    La commande suivante crée deux interfaces sur cloud-router-b :

    "PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-b
     {
       "region":"us-central1",
       "interfaces":[
         {
          "name":"router-appliance-interface-0",
          "privateIpAddress:"192.168.10.14",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b"
       },
       {
          "name":"router-appliance-interface-1",
          "privateIpAddress:"192.168.10.15",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b",
          "redundantInterface": "router-appliance-interface-0"
       }
     ]
    }
    

Configurer l'appairage BGP sur chaque routeur Cloud Router

Pour chaque interface de l'instance de dispositif de routeur, vous devez créer deux sessions d'appairage BGP, une pour chaque interface de routeur cloud. Si vous utilisez les valeurs de l'exemple de topologie, procédez comme suit :

  • Créez deux sessions d'appairage entre cloud-router-a et l'interface network-a de router-app-a.

  • Créez deux sessions d'appairage entre cloud-router-b et l'interface network-b de router-app-a.

Console

Effectuez deux fois les étapes suivantes, une fois pour spoke-a et à nouveau pour spoke-b :

  1. Accédez à la page Network Connectivity Center.
  2. Accéder à Network Connectivity Center
  3. Dans le menu "projet", sélectionnez un projet.
  4. Cliquez sur l'onglet Spokes.
  5. Dans la colonne Nom du spoke, sélectionnez un spoke pour afficher la page Détails du spoke. Par exemple, sélectionnez spoke-a ou spoke-b.
  1. Dans la colonne Nom, localisez router-app-a. Cliquez sur l'icône de développement pour afficher les liens Configurer la session BGP. Cliquez sur l'un de ces liens. En réponse, le système affiche le panneau Configurer le routeur Cloud Router et les sessions BGP.

  1. Sous Cloud Router, effectuez l'une des opérations suivantes :

    • Pour sélectionner un routeur Cloud Router existant, cliquez sur Utiliser un routeur existant. Utilisez le champ Cloud Router pour identifier la ressource appropriée, puis cliquez sur Sélectionner et continuer.
    • Pour créer un routeur Cloud Router sur la page Network Connectivity Center, cliquez sur Créer, puis suivez les instructions pour créer le routeur Cloud Router. Cliquez ensuite sur Créer et continuer.
  2. Sous Sessions BGP, configurez les deux sessions BGP. Effectuez les étapes suivantes deux fois, une fois pour chaque session :
    1. Cliquez sur Modifier la session BGP.
    2. Remplissez le formulaire en saisissant un nom, le numéro ASN du pair et la priorité des routes annoncées (MED). Cliquez sur Enregistrer et continuer.
  3. Cliquez sur Créer.

gcloud

Pour créer des pairs BGP sur vos routeurs Cloud Router, utilisez la commande gcloud compute routers add-bgp-peer.

Effectuez deux fois les étapes suivantes, une fois pour cloud-router-a et à nouveau pour cloud-router-b :

  1. Créez le premier pair BGP :

    gcloud compute routers add-bgp-peer NAME \
        --peer-name=PEER_NAME \
        --interface=INTERFACE \
        --peer-ip-address=PEER_IP_ADDRESS \
        --peer-asn=PEER_ASN \
        --instance=ROUTER_APPLIANCE \
        --instance-zone=ROUTER_APPLIANCE_ZONE \
        --region=REGION
    
  2. Créez le deuxième pair BGP :

    gcloud compute routers add-bgp-peer NAME \
        --peer-name=PEER_NAME \
        --interface=INTERFACE \
        --peer-ip-address=PEER_IP_ADDRESS \
        --peer-asn=PEER_ASN \
        --instance=ROUTER_APPLIANCE \
        --instance-zone=ROUTER_APPLIANCE_ZONE \
        --region=REGION
    

    Remplacez les éléments suivants :

    • NAME : nom du routeur Cloud Router à mettre à jour, par exemple, cloud-router-a ou cloud-router-b
    • PEER_NAME : nom de la session d'appairage BGP à établir avec l'instance d'appliance de routeur
    • INTERFACE : nom de l'interface pour ce pair BGP
    • PEER_IP_ADDRESS : adresse IP interne du routeur pair (l'instance de dispositif de routeur), par exemple, 10.1.3.8 ou 192.168.10.3.
    • PEER_ASN : numéro ASN (Autonomous System Number) BPG pour ce pair BGP. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996
    • ROUTER_APPLIANCE : nom de la VM agissant en tant qu'instance de dispositif de routeur, par exemple, router-app-a
    • ROUTER_APPLIANCE_ZONE : zone où se trouve la VM agissant comme instance d'appareil de routeur. Par exemple, us-central1-a
    • REGION : région où se trouve la VM agissant comme instance d'appliance de routeur. Par exemple, us-central1

    Exemples de commandes pour cloud-router-a

    Utilisez les commandes suivantes pour créer les pairs BGP pour cloud-router-a :

    gcloud compute routers add-bgp-peer cloud-router-a \
      --peer-name=router-appliance-bgp-peer-router-app-a-0 \
      --interface=router-appliance-interface-0 \
      --peer-ip-address=10.1.3.8 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    
    gcloud compute routers add-bgp-peer cloud-router-a \
      --peer-name=router-appliance-bgp-peer-router-app-a-1 \
      --interface=router-appliance-interface-1 \
      --peer-ip-address=10.1.3.8 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    

    Exemples de commandes pour cloud-router-b

    Utilisez les commandes suivantes pour créer les pairs BGP pour cloud-router-b :

    gcloud compute routers add-bgp-peer cloud-router-b \
       --peer-name=router-appliance-bgp-peer-router-app-a-0 \
      --interface=router-appliance-interface-0 \
      --peer-ip-address=192.168.10.3 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    
    gcloud compute routers add-bgp-peer cloud-router-b \
      --peer-name=router-appliance-bgp-peer-router-app-a-1 \
      --interface=router-appliance-interface-1 \
      --peer-ip-address=192.168.10.3 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    

API

Pour créer des pairs BGP sur un routeur Cloud Router, utilisez la méthode compute.routers.patch. Utilisez cette méthode deux fois : une fois pour cloud-router-a et une autre fois pour cloud-router-b.

 PATCH
https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME
   {
    "bgpPeers": [
     {
       "name": "PEER_NAME",
       "interfaceName": "INTERFACE_NAME",
       "ipAddress": "IP_ADDRESS",
       "peerIpAddress": "PEER_IP_ADDRESS",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE",
       "peerAsn": PEER_ASN,
     }
     {
       "name": "PEER_NAME",
       "interfaceName": "INTERFACE_NAME",
       "ipAddress": "IP_ADDRESS",
       "peerIpAddress": "PEER_IP_ADDRESS",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE",
       "peerAsn": PEER_ASN
     }
    ]
   }
 

Remplacez les éléments suivants :

  • PROJECT_ID : ID de projet pour le routeur cloud
  • REGION : région où se trouve la VM agissant en tant qu'instance d'appliance de routeur.
  • NAME : nom du routeur cloud à mettre à jour
  • PEER_NAME : nom de la session d'appairage BGP à établir avec l'instance d'appliance de routeur
  • INTERFACE_NAME : nom de l'interface Cloud Router à laquelle ajouter le pair
  • IP_ADDRESS : adresse IP interne RFC 1918 du routeur Cloud Router à utiliser pour la session d'appairage
  • PEER_IP_ADDRESS : adresse IP interne de la VM agissant comme une instance de dispositif de routeur, par exemple, 10.1.3.8 ou 192.168.10.3
  • ROUTER_APPLIANCE_INSTANCE : nom au format d'URL de la VM agissant en tant qu'instance d'appliance de routeur
  • ROUTER_APPLIANCE_ZONE : zone où se trouve la VM agissant en tant qu'instance d'appliance de routeur.
  • PEER_ASN : numéro ASN (Autonomous System Number) BPG pour ce pair BGP. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996

    Exemples de commandes pour cloud-router-a

    PATCH
    https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-a
    {
     "bgpPeers": [
     {
       "name": "router-appliance-bgp-peer-router-app-a-0",
       "interfaceName": "router-appliance-interface-0",
       "ipAddress": "10.1.3.14",
       "peerIpAddress": "10.1.3.8",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001,
     }
     {
       "name": "router-appliance-bgp-peer-router-app-a-1",
       "interfaceName": "router-appliance-interface-1",
       "ipAddress": "10.1.3.15",
       "peerIpAddress": "10.1.3.8",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001
     }
     ]
    }
    

    Exemples de commandes pour cloud-router-b

    PATCH
    https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-b
    {
     "bgpPeers": [
     {
       "name": "router-appliance-bgp-peer-router-app-a-0",
       "interfaceName": "router-appliance-interface-0",
       "ipAddress": "192.168.10.14",
       "peerIpAddress": "192.168.10.3",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001,
     }
     {
       "name": "router-appliance-bgp-peer-router-app-a-1",
       "interfaceName": "router-appliance-interface-1",
       "ipAddress": "192.168.10.15,
       "peerIpAddress": "192.168.10.3",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001
     }
     ]
    }
    

Configurer BGP sur l'instance d'appareil de routeur

Configurez votre instance de dispositif de routeur pour établir une connectivité BGP aux deux routeurs cloud. Pour ce faire, reportez-vous à la documentation du fournisseur de l'image d'appareil de votre routeur.

Étape suivante