Cette page explique comment connecter deux réseaux cloud privés virtuels à l'aide d'une configuration de passerelle VPN haute disponibilité. Vous pouvez connecter deux réseaux VPC existants à condition que les plages d'adresses IP de sous-réseau principales et secondaires de chaque réseau ne se chevauchent pas.
Pour obtenir un schéma de cette topologie, consultez la page Topologies.
Pour plus d'informations sur le choix d'un type de VPN, consultez la page Choisir un produit de connectivité réseau.
Pour découvrir les bonnes pratiques à suivre avant de configurer Cloud VPN, consultez la page Bonnes pratiques pour Cloud VPN.
Exigences
Consignes et exigences générales
Lors de la création de cette configuration, assurez-vous de remplir les conditions suivantes afin de recevoir un contrat de niveau de service garantissant une disponibilité de 99,99 % :
- Placez une passerelle VPN haute disponibilité dans chaque réseau VPC.
- Placez les deux passerelles VPN haute disponibilité dans la même région Google Cloud.
- Configurez un tunnel sur chaque interface de chaque passerelle.
- Faites correspondre les interfaces de passerelle comme décrit dans les instructions ci-dessous.
Bien qu'il soit possible de connecter deux réseaux VPC via un seul tunnel entre des passerelles VPN haute disponibilité ou des passerelles VPN classiques, ce type de configuration n'est pas considéré comme hautement disponible et ne remplit pas les conditions du contrat de niveau de service garantissant une disponibilité de 99,99 %.
Créer des routeurs cloud
Lors de la configuration d'une nouvelle passerelle VPN haute disponibilité, vous pouvez créer un routeur Cloud Router, ou utiliser un routeur Cloud Router que vous utilisez déjà avec des tunnels Cloud VPN ou des rattachements de VLAN existants. Cependant, le routeur Cloud Router que vous utilisez ne doit pas déjà gérer une session BGP pour un rattachement de VLAN associé à une interconnexion partenaire, en raison des exigences spécifiques du numéro ASN du rattachement.
Gérer les autorisations
Les passerelles VPN haute disponibilité ne vous appartiennent pas toujours, à vous ou à votre organisation Google Cloud. Lorsque vous créez une passerelle VPN haute disponibilité ou que vous vous connectez à une passerelle dont vous n'êtes pas le propriétaire, vous devez donc considérer les exigences suivantes en matière d'autorisation :
- Si vous êtes le propriétaire du projet pour lequel vous créez une passerelle VPN haute disponibilité, configurez les autorisations recommandées sur celle-ci.
- Si vous souhaitez vous connecter à une passerelle VPN haute disponibilité hébergée dans une organisation ou un projet Google Cloud qui ne vos appartient pas, vous devez demander l'autorisation
compute.vpnGateways.use
au propriétaire.
Avant de commencer
- Consultez les informations sur le fonctionnement du routage dynamique dans Google Cloud.
- Assurez-vous que votre passerelle VPN de pairs est compatible avec le protocole BGP.
Configurez les éléments suivants dans Google Cloud pour faciliter la configuration de Cloud VPN :
- Connectez-vous à votre compte Google.
Si vous n'en possédez pas déjà un, vous devez en créer un.
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.
- Installez et initialisez le SDK Cloud.
- Si vous utilisez des commandes
gcloud
, définissez votre ID de projet à l'aide de la commande suivante. Dans les instructions gcloud présentées sur cette page, nous partons du principe que vous avez défini l'ID de votre projet avant d'exécuter les commandes.
gcloud config set project PROJECT_ID
Vous pouvez également afficher un ID de projet déjà défini :
gcloud config list --format='text(core.project)'
Créer un réseau et un sous-réseau cloud privé virtuel personnalisé
Avant de créer une passerelle et une paire de tunnels VPN haute disponibilité, vous devez créer un réseau cloud privé virtuel et au moins un sous-réseau dans la région où sera située la passerelle VPN haute disponibilité.
- Pour créer un réseau VPC en mode personnalisé (recommandé), consultez la section Créer un réseau en mode personnalisé.
- Pour créer des sous-réseaux, consultez la section Travailler avec des sous-réseaux.
Les exemples de ce document utilisent également le mode de routage dynamique global d'un réseau VPC, qui se comporte comme suit :
- Toutes les instances de Cloud Router appliquent les routes "sur site" qu'elles ont apprises à tous les sous-réseaux du réseau VPC.
- Les routes vers tous les sous-réseaux du réseau VPC sont partagées avec les routeurs sur site.
À titre de référence, ce document crée une passerelle VPN haute disponibilité dans chacun des deux réseaux VPC :
NETWORK_1
contient les sous-réseaux suivants :
- Un sous-réseau nommé
SUBNET_NAME_1
dans la régionREGION_1
utilisant la plage d'adresses IPRANGE_1
- Un sous-réseau nommé
SUBNET_NAME_2
dans la régionREGION_2
utilisant la plage d'adresses IPRANGE_2
NETWORK_2
contient les sous-réseaux suivants :
- Un sous-réseau nommé
SUBNET_NAME_3
dans la régionREGION_1
utilisant la plage d'adresses IPRANGE_3
- Un sous-réseau nommé
SUBNET_NAME_4
dans la régionREGION_3
utilisant la plage d'adresses IPRANGE_4
Créer deux passerelles VPN haute disponibilité entièrement configurées qui s'interconnectent
Suivez les instructions de cette section pour créer une passerelle VPN haute disponibilité, des tunnels, une ressource de passerelle VPN de pairs et des sessions BGP.
Console
L'assistant de configuration VPN inclut toutes les étapes de configuration requises pour créer une passerelle VPN haute disponibilité, des tunnels, une ressource de passerelle VPN de pairs et des sessions BGP.
Créer une passerelle VPN cloud
- Accédez à la page VPN dans Google Cloud Console.
Accéder à la page "VPN"- Si vous créez une passerelle pour la première fois, sélectionnez le bouton Créer une connexion VPN.
- Sélectionnez l'assistant de configuration VPN.
- Sélectionnez la case d'option correspondant à une passerelle VPN haute disponibilité.
- Cliquez sur Continuer.
- Spécifiez un nom de passerelle VPN.
- Sous Réseau VPC, sélectionnez un réseau existant ou le réseau par défaut.
- Sélectionnez une région.
- Cliquez sur Créer et continuer.
- L'écran de la console est actualisé et affiche les informations relatives à votre passerelle. Deux adresses IP externes sont automatiquement attribuées à chaque interface de votre passerelle. Notez les détails de la configuration de votre passerelle pour les prochaines étapes de configuration.
Créer une ressource de passerelle VPN de pairs
La ressource de passerelle VPN de pairs représente votre passerelle autre que Google Cloud dans Google Cloud.
- Sur l'écran Créer un VPN, sous Passerelle VPN de pairs, sélectionnez
Google Cloud
. - Sous Projet, sélectionnez un projet Google Cloud qui contiendra la nouvelle passerelle.
- Sous Nom de la passerelle VPN, sélectionnez l'autre VPN haute disponibilité que vous configurez en parallèle.
- Passez à l'étape suivante : Créer des tunnels VPN
Créer des tunnels VPN
- En sélectionnant Créer un tunnel VPN unique, vous configurez un seul tunnel sur le reste de l'écran Créer un VPN. Toutefois, vous devrez créer par la suite un second tunnel pour obtenir un contrat de niveau de service garantissant une disponibilité de 99,99 % avec l'autre passerelle VPN haute disponibilité.
- Si vous sélectionnez Créer une paire de tunnels VPN (recommandé), vous devez configurer les deux boîtes de dialogue associées qui s'affichent en bas de l'écran Créer un VPN.
- Sous Haute disponibilité, vous pouvez sélectionner soit une paire de tunnels vers l'autre passerelle VPN haute disponibilité, soit un seul tunnel. Vous pouvez ajouter un second tunnel ultérieurement, comme décrit à la fin de cette procédure.
- Sous Cloud Router, si ce n'est pas déjà fait, créez un routeur Cloud Router en spécifiant les options indiquées ci-dessous.
Vous pouvez utiliser un routeur Cloud Router existant tant que celui-ci ne gère pas déjà une session BGP pour un rattachement d'interconnexion associé à une interconnexion partenaire.
- Pour créer un routeur Cloud Router, spécifiez un Nom, une Description facultative et un numéro ASN Google pour le nouveau routeur. Vous pouvez utiliser n'importe quel ASN privé (
64512
à65534
,4200000000
à4294967294
) que vous n'utilisez pas ailleurs sur votre réseau. Ce numéro sert pour toutes les sessions BGP gérées par le même routeur Cloud Router. Vous ne pouvez pas le modifier ultérieurement. - Cliquez sur Créer pour créer le routeur.
- Pour créer un routeur Cloud Router, spécifiez un Nom, une Description facultative et un numéro ASN Google pour le nouveau routeur. Vous pouvez utiliser n'importe quel ASN privé (
- Effectuez la procédure suivante dans le même écran ou dans la boîte de dialogue de chaque tunnel en bas de l'écran.
- Si vous configurez un seul tunnel, sous Interface passerelle Cloud VPN associée, sélectionnez la combinaison interface/adresse IP du VPN haute disponibilité de cette passerelle pour l'associer à l'interface passerelle de l'autre passerelle VPN haute disponibilité. Pour les configurations à deux tunnels, cette option et l'option Interface passerelle VPN de pairs associée ne sont pas disponibles, car les combinaisons d'interface appropriées sont configurées pour vous.
- Spécifiez un nom pour le tunnel.
- Spécifiez une Description facultative.
- Spécifiez la version IKE. Le paramètre par défaut IKE v2 est recommandé si votre routeur de pairs le permet.
- Spécifiez une clé pré-partagée IKE à l'aide de votre clé secrète partagée, qui doit correspondre à la clé secrète partagée du tunnel partenaire que vous avez créé sur votre passerelle de pairs. Si vous n'avez pas configuré de clé secrète partagée sur votre passerelle VPN de pairs et que vous souhaitez en générer une, cliquez sur le bouton Générer et copier. Veillez à enregistrer la clé pré-partagée dans un emplacement sécurisé, car elle ne peut pas être récupérée une fois que vous avez créé vos tunnels VPN.
- Cliquez sur OK.
- Répétez les étapes de création de tunnel pour toutes les boîtes de dialogue de tunnel restantes sur l'écran Créer un VPN.
- Lorsque vous avez configuré tous les tunnels, cliquez sur Créer et continuer.
Créer des sessions BGP
Définir la priorité des routes annoncées (facultatif)
L'exemple suivant crée des sessions BGP sur des instances Cloud Router en annonçant les routes vers les réseaux de pairs du routeur à travers des priorités de base non modifiées.
Utilisez cette configuration pour les configurations en mode actif/actif où les valeurs des priorités des deux côtés des deux tunnels doivent correspondre. Si vous omettez les valeurs de priorité de base annoncées, les deux pairs BGP seront associés aux mêmes valeurs de priorité annoncées.
Pour les configurations en mode actif/passif, vous pouvez contrôler la priorité de base annoncée des routes "vers Google Cloud" que Cloud Router partage avec votre passerelle VPN de pairs en définissant la priorité des routes annoncées.
Pour créer une configuration en mode actif/passif, définissez une priorité de route annoncée plus élevée pour une session BGP et le tunnel VPN correspondant que pour l'autre session BGP et son tunnel VPN.
Pour en savoir plus sur la priorité de base annoncée, consultez la section Préfixes et priorités annoncés.
Vous pouvez également affiner les routes annoncées à l'aide d'annonces personnalisées. Pour ce faire, ajoutez l'option --advertisement-mode=CUSTOM
et spécifiez des plages d'adresses IP avec --set-advertisement-ranges
.
Pour créer des sessions BGP, procédez comme suit :
- Si vous ne souhaitez pas configurer de sessions BGP, cliquez sur le bouton Configurer les sessions BGP ultérieurement. Vous serez redirigés vers l'écran Résumé et rappel.
- Si vous souhaitez configurer des sessions BGP maintenant, cliquez sur le bouton Configurer du premier tunnel VPN.
- Sur l'écran Créer une session BGP, procédez comme suit :
- Spécifiez un nom pour la session BGP.
- Spécifiez le numéro ASN du pair configuré pour la passerelle VPN de pairs.
- (Facultatif) Spécifiez la priorité des routages présentés.
- Spécifiez l'Adresse IP BGP du routeur cloud et l'Adresse IP du pair BGP. Assurez-vous que les adresses IP répondent aux exigences suivantes :
- Chaque adresse IP BGP doit appartenir au même masque CIDR /30 au sein du bloc
169.254.0.0/16
. - Les adresses IP BGP ne peuvent pas correspondre à la première adresse (adresse réseau) ou à la dernière adresse (adresse de diffusion) du masque CIDR /30.
- Chaque plage d'adresses IP BGP pour chaque session BGP doit être unique parmi tous les routeurs cloud de toutes les régions d'un réseau VPC.
- Chaque adresse IP BGP doit appartenir au même masque CIDR /30 au sein du bloc
- (Facultatif) Cliquez sur le menu déroulant Routes annoncées et créez des routes personnalisées.
- Cliquez sur Enregistrer et continuer.
- Répétez les étapes précédentes pour les autres tunnels configurés sur la passerelle, en utilisant une adresse IP BGP du routeur cloud et une adresse IP du pair BGP différentes pour chaque tunnel.
- Lorsque vous avez configuré toutes les sessions BGP, cliquez sur Enregistrer la configuration BGP.
Résumé et rappel
- La section Résumé de cet écran répertorie les informations concernant les profils de la passerelle VPN haute disponibilité et de la passerelle VPN de pairs.
- Pour chaque tunnel VPN, vous pouvez afficher l'état du tunnel VPN, le nom de la session BGP, l'état de la session BGP et la valeur MED (priorité de route annoncée).
- La section Rappel de cet écran répertorie les étapes à suivre pour disposer d'une connexion VPN entièrement opérationnelle entre Cloud VPN et votre VPN de pairs.
- Cliquez sur OK après avoir vérifié les informations affichées sur cet écran.
Créer un tunnel supplémentaire sur une passerelle à tunnel unique
Suivez les étapes de cette section pour configurer un deuxième tunnel sur la deuxième interface d'une passerelle VPN haute disponibilité. Si vous avez configuré un tunnel sur une passerelle VPN haute disponibilité vers une autre passerelle VPN haute disponibilité, mais que vous souhaitez recevoir un contrat de niveau de service assurant une disponibilité de 99,99 %, vous devez configurer un second tunnel.
- Accédez à la page VPN dans Google Cloud Console.
Accéder à la page "VPN"- Recherchez le VPN haute disponibilité auquel vous souhaitez ajouter le tunnel.
- Cliquez sur le bouton Ajouter un tunnel VPN.
- Sous Passerelle VPN de pairs, sélectionnez Google Cloud.
- Sous Projet, sélectionnez un projet Google Cloud qui contiendra la nouvelle passerelle.
- Sous Nom de la passerelle VPN, sélectionnez l'autre passerelle VPN haute disponibilité à laquelle se connecte le nouveau tunnel.
- Sélectionnez Ajouter le second tunnel VPN au tunnel VPN existant pour assurer la haute disponibilité.
- Sous Sélectionner un tunnel VPN existant, vérifiez que le tunnel existant est bien sélectionné. Vous pouvez cliquer sur un lien pour afficher tous les tunnels existants en haut du même écran.
- Spécifiez un nom de tunnel.
- Spécifiez la même version du protocole IKE que celle utilisée par le tunnel de l'autre passerelle.
- Spécifiez une clé pré-partagée IKE à l'aide de votre clé secrète partagée, qui doit correspondre à la clé secrète partagée du tunnel partenaire que vous avez créé sur votre passerelle de pairs. Si vous n'avez pas configuré de clé secrète partagée sur votre passerelle VPN de pairs et que vous souhaitez en générer une, cliquez sur le bouton Générer et copier. Veillez à enregistrer la clé pré-partagée dans un emplacement sécurisé, car elle ne peut pas être récupérée une fois que vous avez créé vos tunnels VPN.
- Cliquez sur Créer et continuer.
- Configurez et enregistrez une session BGP comme indiqué précédemment. Sinon, vous pourrez la configurer ultérieurement.
- Consultez l'écran Résumé et rappel pour obtenir des informations de configuration, puis cliquez sur OK.
gcloud
Créer des passerelles VPN haute disponibilité
Pour créer deux passerelles VPN haute disponibilité, exécutez les commandes suivantes dans l'ordre indiqué :
Créez une passerelle VPN haute disponibilité sur chaque réseau de la région
REGION_1
. Lorsque les passerelles sont créées, deux adresses IP externes sont automatiquement attribuées, une pour chaque interface de passerelle. Notez ces adresses IP que vous utiliserez ultérieurement dans les étapes de configuration.
Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :- Remplacez
GW_NAME_1
etGW_NAME_2
par le nom de chaque passerelle. - Remplacez toutes les autres options par les valeurs que vous avez utilisées précédemment.
Créer la première passerelle
gcloud compute vpn-gateways create GW_NAME_1 \ --network NETWORK_1 \ --region REGION_1
La passerelle que vous créez doit ressembler à l'exemple suivant. Une adresse IP externe a été attribuée automatiquement à chaque interface de passerelle :
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a]. NAME INTERFACE0 INTERFACE1 NETWORK REGION ha-vpn-gw-a 203.0.113.16 203.0.113.23 network-a us-central1
Créer la deuxième passerelle
gcloud compute vpn-gateways create GW_NAME_2 \ --network NETWORK_2 \ --region REGION_1
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-b]. NAME INTERFACE0 INTERFACE1 NETWORK REGION ha-vpn-gw-b 203.0.114.18 203.0.114.25 network-b us-central1
- Remplacez
Créer chaque routeur Cloud Router
Les instructions suivantes supposent que vous n'avez pas encore créé de routeurs Cloud à utiliser pour la gestion des sessions BGP de vos tunnels VPN haute disponibilité.
Vous pouvez utiliser un routeur Cloud existant dans chaque réseau VPC, sauf si ces routeurs gèrent déjà une session BGP pour un rattachement d'interconnexion associé à une interconnexion partenaire.
Pour créer un routeur Cloud dans chaque réseau, exécutez les commandes suivantes dans l'ordre indiqué. Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :
- Remplacez les champs
ASN_1
etASN_2
par des numéros ASN privés (64512 - 65534, 4200000000 - 4294967294) que vous n'utilisez pas encore. Cet exemple utilise le numéro ASN 65001 pour les deux interfaces du routeurROUTER_NAME_1
et ASN 65002 pour les deux interfaces du routeurROUTER_NAME_2
. - Remplacez toutes les autres options par les valeurs que vous avez utilisées précédemment.
Créer le premier routeur
gcloud compute routers create ROUTER_NAME_1 \ --region REGION_1 \ --network NETWORK_1 \ --asn ASN_1
Le routeur que vous créez doit ressembler à l'exemple de résultat suivant :
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a]. NAME REGION NETWORK router-a us-central1 network-a
Créer le deuxième routeur
gcloud compute routers create ROUTER_NAME_2 \ --region REGION_1 \ --network NETWORK_2 \ --asn ASN_2
Le routeur que vous créez doit ressembler à l'exemple de résultat suivant :
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b]. NAME REGION NETWORK router-b us-central1 network-b
- Remplacez les champs
Créer des tunnels VPN
Exécutez la séquence de commandes suivante pour créer deux tunnels VPN sur chaque passerelle VPN haute disponibilité.
- Le tunnel créé à partir de l'interface 0 de la passerelle
GW_NAME_1
doit se connecter à l'adresse IP externe associée à l'interface 0 de la passerelleGW_NAME_2
dans le réseauNETWORK_2
, et - Le tunnel de l'interface 1 de la passerelle
GW_NAME_1
doit se connecter à l'adresse IP externe associée à l'interface 1 de la passerelleGW_NAME_2
. - Lorsque vous créez des tunnels VPN sur la passerelle
GW_NAME_1
dans le réseauNETWORK_1
, vous devez spécifier les informations de la passerelleGW_NAME_2
dans le réseauNETWORK_2
. Google connecte automatiquement le tunnel entre l'interface 0 de la passerelleGW_NAME_1
et l'interface 0 de la passerelleGW_NAME_2
, et l'interface 1 de la passerelleGW_NAME_1
et l'interface 1 de la passerelleGW_NAME_2
.
Créer deux tunnels sur la passerelle
GW_NAME_1
Créez deux tunnels VPN (un pour chaque interface) de la passerelle
GW_NAME_1
dans le réseauNETWORK_1
. Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :- Remplacez
TUNNEL_NAME_GW1_IF0
etTUNNEL_NAME_GW1_IF1
par un nom pour chaque tunnel provenant de la passerelleGW_NAME_1
. Nommer les tunnels en incluant le nom de l'interface de la passerelle peut aider à les identifier ultérieurement. - Utilisez
GW_NAME_2
pour la valeur de--peer-gcp-gateway
. - Remplacez
REGION
par la région où se trouve la passerelleGW_NAME_1
. - (Facultatif)
--vpn-gateway-region
correspond à la région de la passerelle VPN haute disponibilité à utiliser. Sa valeur doit être identique à celle de--region
. Si cette option n'est pas spécifiée, elle est définie automatiquement. Cette option ignore la valeur par défaut de la propriété "compute/region" pour cet appel de commande. - Remplacez
IKE_VERS
par2
pour IKEv2. Étant donné que les deux tunnels se connectent à une autre passerelle VPN haute disponibilité, l'utilisation d'IKEv2 est recommandée. - Remplacez
SHARED_SECRET
par votre clé secrète partagée, qui doit être la même que celle que vous utilisez pour le tunnel correspondant créé à partir de la passerelleGW_NAME_2
sur l'interface 0 et l'interface 1. Pour obtenir des recommandations, consultez la section Générer une clé pré-partagée sécurisée. - Remplacez
INT_NUM_0
par le numéro0
pour la première interface sur la passerelleGW_NAME_1
. - Remplacez
INT_NUM_1
par le numéro1
pour la deuxième interface sur la passerelleGW_NAME_1
. - Si la passerelle GCP du pair (
peer-gcp-gateway
) se trouve dans un projet différent du tunnel VPN et de la passerelle VPN locale, utilisez l'option--peer-gcp-gateway
comme URI complet ou comme nom relatif pour spécifier le projet. L'exemple d'option suivant est un nom relatif :--peer-gcp-gateway projects/other-project/regions/us-central1/vpnGateways/ha-vpn-gw-b
. - La région
--peer-gcp-gateway-region
, qui correspond à la passerelle VPN haute disponibilité côté pair à laquelle le tunnel VPN est connecté, doit se trouver dans la même région que le tunnel VPN. Si elle n'est pas spécifiée, la région est définie automatiquement.
Créer le premier tunnel sur la passerelle
GW_NAME_1
de l'interfaceINT_NUM_0
gcloud compute vpn-tunnels create TUNNEL_NAME_GW1_IF0\ --peer-gcp-gateway GW_NAME_2 \ --region REGION_1 \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME_1 \ --vpn-gateway GW_NAME_1 \ --interface INT_NUM_0
Créer le deuxième tunnel sur la passerelle
GW_NAME_1
de l'interfaceINT_NUM_1
gcloud compute vpn-tunnels create TUNNEL_NAME_GW1_IF1 \ --peer-gcp-gateway GW_NAME_2 \ --region REGION_1 \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME_1 \ --vpn-gateway GW_NAME_1 \ --interface INT_NUM_1
Le résultat de la commande doit ressembler à l'exemple suivant :Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-0]. NAME REGION VPN_GATEWAY INTERFACE PEER_GCP_GATEWAY tunnel-a-to-b-if-0 us-central1 ha-vpn-gw-a 0 ha-vpn-gw-b Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-1]. NAME REGION VPN_GATEWAY INTERFACE PEER_GCP_GATEWAY tunnel-a-to-b-if-1 us-central1 ha-vpn-gw-a 1 ha-vpn-gw-b
- Remplacez
Créer deux tunnels sur la passerelle
GW_NAME_2
- Créez deux tunnels VPN (un pour chaque interface) de la passerelle
GW_NAME_2
dans le réseauNETWORK_2
.
- Le tunnel créé à partir de l'interface 0 de la passerelle
GW_NAME_2
doit se connecter à l'adresse IP externe associée à l'interface 0 de la passerelleGW_NAME_1
dans le réseauNETWORK_1
, et - Le tunnel de l'interface 1 de la passerelle
GW_NAME_2
doit se connecter à l'adresse IP externe associée à l'interface 1 de la passerelleGW_NAME_1
. - Remplacez
REGION
par la région où se trouve la passerelleGW_NAME_2
. - (Facultatif)
--vpn-gateway-region
correspond à la région de la passerelle VPN à utiliser. Sa valeur doit être identique à celle de--region
. Si cette option n'est pas spécifiée, elle est définie automatiquement. Cette option ignore la valeur par défaut de la propriété "compute/region" pour cet appel de commande.
Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous : - Remplacez
TUNNEL_NAME_GW2_IF0
etTUNNEL_NAME_GW2_IF1
par un nom pour chaque tunnel provenant de la passerelleGW_NAME_2
. Nommer les tunnels en incluant le nom de l'interface de la passerelle peut aider à les identifier ultérieurement. - Utilisez
GW_NAME_1
pour la valeur de--peer-gcp-gateway
. - La valeur de la région de la passerelle GCP du pair (--peer-gcp-gateway-region) doit se trouver dans la même région que le tunnel VPN. Si elle n'est pas spécifiée, la valeur est définie automatiquement. Dans cet exemple, la région est
REGION_1
. - Remplacez
IKE_VERS
par2
pour IKEv2. Étant donné que ces tunnels se connectent aux deux tunnels créés à l'étape précédente, ils doivent utiliser la même version du protocole IKE (IKEv2 est la version recommandée). - Remplacez
SHARED_SECRET
par votre clé secrète partagée, qui doit correspondre à la clé secrète partagée du tunnel partenaire que vous avez créé pour chaque interface de la passerelleGW_NAME_1
. Pour obtenir des recommandations, consultez la section Générer une clé pré-partagée sécurisée. - Remplacez
GW_NAME_2
par le nom de la deuxième passerelle configurée lors de l'étape de configuration des passerelles. - Remplacez
INT_NUM_0
par le numéro0
pour la première interface sur la passerelleGW_NAME_2
. - Remplacez
INT_NUM_1
par le numéro1
pour la deuxième interface sur la passerelleGW_NAME_2
. - Si la passerelle GCP du pair (
peer-gcp-gateway
) se trouve dans un projet différent du tunnel VPN et de la passerelle VPN locale, utilisez l'option--peer-gcp-gateway
comme URI complet ou comme nom relatif pour spécifier le projet. L'exemple d'option suivant est un nom relatif :--peer-gcp-gateway projects/other-project/regions/us-central1/vpnGateways/ha-vpn-gw-b
. - La région
--peer-gcp-gateway-region
, qui correspond à la passerelle VPN haute disponibilité côté pair à laquelle le tunnel VPN est connecté, doit se trouver dans la même région que le tunnel VPN. Si elle n'est pas spécifiée, la région est définie automatiquement.
- Le tunnel créé à partir de l'interface 0 de la passerelle
Créer le premier tunnel sur la passerelle
GW_NAME_2
de l'interfaceINT_NUM_0
gcloud compute vpn-tunnels create TUNNEL_NAME_GW2_IF0 \ --peer-gcp-gateway GW_NAME_1 \ --region REGION_1 \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME_2 \ --vpn-gateway GW_NAME_2 \ --interface INT_NUM_0
Créer le deuxième tunnel sur la passerelle
GW_NAME_2
de l'interfaceINT_NUM_1
gcloud compute vpn-tunnels create TUNNEL_NAME_GW2_IF1 \ --peer-gcp-gateway GW_NAME_1 \ --region REGION_1 \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME_2 \ --vpn-gateway GW_NAME_2 \ --interface INT_NUM_1
Le résultat de la commande doit ressembler à l'exemple suivant :Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0]. NAME REGION VPN_GATEWAY INTERFACE PEER_GCP_GATEWAY tunnel-b-to-a-if-0 us-central1 ha-vpn-gw-b 0 ha-vpn-gw-a Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-1]. NAME REGION VPN_GATEWAY INTERFACE PEER_GCP_GATEWAY tunnel-b-to-a-if-1 us-central1 ha-vpn-gw-b 1 ha-vpn-gw-a
Après cette étape, attendez quelques minutes, puis vérifiez l'état de chaque tunnel VPN.
L'état d'un tunnel VPN ne passe à
Established
(Établi) que lorsque le tunnel partenaire correspondant est également disponible et correctement configuré. Un protocole IKE et une association de sécurité enfant doivent également être négociés entre eux.Par exemple, le tunnel
tunnel-a-to-b-if-0
sur la passerelleha-vpn-gw-a
ne peut être établi que si le tunneltunnel-b-to-a-if-0
sur la passerelleha-vpn-gw-b
est configuré et disponible.- Le tunnel créé à partir de l'interface 0 de la passerelle
Créer des interfaces Cloud Router et des pairs BGP
Le tableau suivant présente une synthèse des interfaces Cloud Router et des pairs BGP configurés dans cette section. Il indique la relation entre les plages d'adresses IP et les adresses IP de pairs que vous spécifiez pour chaque interface. Par exemple, la première interface de router-1
possède une adresse IP de pair ayant la valeur 169.254.0.2
.
Elle provient de la plage d'adresses IP de la première interface de router-2
, c'est-à-dire 169.254.0.2/30
.
Routeur | Nom de l'interface BGP | Plage d'adresses IP | Adresse IP du pair | Numéro ASN du pair |
---|---|---|---|---|
router-1 | if-tunnel-a-to-b-if-0 | 169.254.0.1/30 | 169.254.0.2 | 65002 |
router-2 | if-tunnel-b-to-a-if-0 | 169.254.0.2/30 | 169.254.0.1 | 65001 |
router-1 | if-tunnel-a-to-b-if-1 | 169.254.1.1/30 | 169.254.1.2 | 65002 |
router-2 | if-tunnel-b-to-a-if-1 | 169.254.1.2/30 | 169.254.1.1 | 65001 |
Pour plus de précisions, consultez les instructions de cette section, qui incluent un exemple du résultat obtenu après la configuration.
Définir la priorité des routes annoncées (facultatif)
Les exemples suivants créent des sessions BGP sur des instances Cloud Router en annonçant les routes vers les réseaux de pairs correspondants à travers des priorités de base non modifiées.
Utilisez cette configuration pour les configurations en mode actif/actif où les valeurs des priorités des deux côtés des deux tunnels doivent correspondre. Comme dans l'exemple, si vous omettez --advertised-base-priority
, les deux pairs BGP seront associés aux mêmes valeurs de priorité annoncées.
Pour les configurations en mode actif/passif, vous pouvez contrôler la priorité de base des routes annoncées "vers Google Cloud" que Cloud Router partage avec votre passerelle VPN de pairs à l'aide de l'option --advertised-route-priority
lors de l'ajout ou de la mise à jour d'un pair BGP.
Pour créer une configuration en mode actif/passif, définissez une priorité de route annoncée plus élevée pour une session BGP et le tunnel VPN correspondant, que pour l'autre session BGP et son tunnel VPN.
Pour en savoir plus sur la priorité de base annoncée, consultez la section Préfixes et priorités annoncés.
Vous pouvez également affiner les routes annoncées à l'aide d'annonces personnalisées. Pour ce faire, ajoutez l'option --advertisement-mode=CUSTOM
et spécifiez des plages d'adresses IP avec --set-advertisement-ranges
.
Pour créer des interfaces Cloud Router et des pairs BGP, procédez comme suit :
Créez une interface BGP et un pair BGP sur le routeur
ROUTER_NAME_1
pour le tunnelTUNNEL_NAME_GW1_IF0
. Cette interface BGP connecte le tunnelTUNNEL_NAME_GW1_IF0
sur l'interface 0 de la passerelleGW_1
à l'interface 0 de la passerelleGW_2
via deux adresses IP BGP. Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :- Remplacez
ROUTER_1_INTERFACE_NAME_0
par un nom pour l'interface Cloud Router BGP. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW1_IF0
. - Remplacez
IP_ADDRESS
par une adresse IP BGP du bloc169.254.0.0/16
qui n'est pas encore utilisée. Cet exemple utilise169.254.0.1
. - Utilisez une longueur du masque (
MASK_LENGTH
) de30
. - Remplacez
PEER_NAME
par un nom décrivant le pair BGP. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW1_IF0
. - Remplacez
PEER_IP_ADDRESS
par une adresse IP BGP du bloc 169.254.0.0/16 qui n'est pas encore utilisée. Cet exemple utilise169.254.0.2
. Remplacez
PEER_ASN
par le numéro ASN utilisé pour toutes les interfaces de l'autre routeur Cloud Router,ROUTER_NAME_2
. Cet exemple utilise le numéro ASN65002
.Pour créer une interface BGP pour le tunnel
TUNNEL_NAME_GW1_IF0
, exécutez la commande suivante :gcloud compute routers add-interface ROUTER_NAME_1 \ --interface-name ROUTER_1_INTERFACE_NAME_0 \ --ip-address IP_ADDRESS \ --mask-length MASK_LENGTH \ --vpn-tunnel TUNNEL_NAME_GW1_IF0 \ --region REGION_1
Pour créer un pair BGP pour le tunnel
TUNNEL_NAME_GW1_IF0
, exécutez la commande suivante :gcloud compute routers add-bgp-peer ROUTER_NAME_1 \ --peer-name PEER_NAME \ --interface ROUTER_1_INTERFACE_NAME_0 \ --peer-ip-address PEER_IP_ADDRESS \ --peer-asn PEER_ASN \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
- Remplacez
Créez une interface BGP et un pair BGP sur le routeur
ROUTER_NAME_1
pour le tunnelTUNNEL_NAME_GW1_IF1
. Cette interface BGP connecte le tunnelTUNNEL_NAME_GW1_IF1
sur l'interface 1 de la passerelleGW_1
à l'interface 1 de la passerelleGW_2
via deux adresses IP BGP. Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :- Remplacez
ROUTER_1_INTERFACE_NAME_1
par un nom de l'interface BGP Cloud Router. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW1_IF1
. - Remplacez
IP_ADDRESS
par une adresse IP BGP du bloc169.254.0.0/16
qui n'est pas encore utilisée. Cet exemple utilise169.254.1.1
. - Utilisez une longueur du masque (
MASK_LENGTH
) de30
. - Remplacez
PEER_NAME
par un nom décrivant le pair BGP. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW1_IF1
. - Remplacez
PEER_IP_ADDRESS
par une adresse IP BGP du bloc169.254.0.0/16
qui n'est pas encore utilisée. Cet exemple utilise169.254.1.2
. Remplacez
PEER_ASN
par le numéro ASN utilisé pour toutes les interfaces de l'autre routeur Cloud Router,ROUTER_NAME_2
. Cet exemple utilise le numéro ASN65002
.Pour créer une interface BGP pour le tunnel
TUNNEL_NAME_GW1_IF1
, exécutez la commande suivante :gcloud compute routers add-interface ROUTER_NAME_1 \ --interface-name ROUTER_1_INTERFACE_NAME_1 \ --ip-address IP_ADDRESS \ --mask-length MASK_LENGTH \ --vpn-tunnel TUNNEL_NAME_GW1_IF1 \ --region REGION_1
Pour créer un pair BGP pour le tunnel
TUNNEL_NAME_GW1_IF1
, exécutez la commande suivante :gcloud compute routers add-bgp-peer ROUTER_NAME_1 \ --peer-name PEER_NAME \ --interface ROUTER1_INTERFACE_NAME_1 \ --peer-ip-address PEER_IP_ADDRESS \ --peer-asn PEER_ASN \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a ].
- Remplacez
Vérifiez les paramètres du routeur
ROUTER_1
en saisissant la commande suivante :gcloud compute routers describe ROUTER_1 \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
bgp: advertisemode: DEFAULT asn: 65001 bgpPeers: — interfaceName: if-tunnel-a-to-b-if-0 ipAddress: 169.254.0.1 name: bgp-peer-tunnel-a-to-b-if-0 peerAsn: 65002 peerIpAddress: 169.254.0.2 bgpPeers: — interfaceName: if-tunnel-a-to-b-if-1 ipAddress: 169.254.1.1 name: bgp-peer-tunnel-a-to-b-if-1 peerAsn: 65002 peerIpAddress: 169.254.1.2 creationTimestamp: '2015-10-19T14:31:52.639-07:00' id: '4047683710114914215' interfaces: — ipRange: 169.254.0.1/30 linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-0 name: if-tunnel-a-to-b-if-0 — ipRange: 169.254.1.1/30 linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-1 name: if-tunnel-a-to-b-if-1 kind: compute#router name: router-a network: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-a region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1 selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a
Créez une interface BGP et un pair BGP sur le routeur
ROUTER_NAME_2
pour le tunnelTUNNEL_NAME_GW2_IF0
. Cette interface BGP connecte le tunnelTUNNEL_NAME_GW2_IF0
sur l'interface 0 de la passerelleGW_2
à l'interface 0 de la passerelleGW_1
via deux adresses IP BGP. Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :- Remplacez
ROUTER_2_INTERFACE_NAME_0
par un nom de l'interface BGP Cloud Router. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW2_IF0
. - Remplacez
IP_ADDRESS
par l'adresse IP BGP utilisée précédemment pour cette passerelle et cette interface. Cet exemple utilise 169.254.0.2. - Utilisez une longueur du masque (
MASK_LENGTH
) de30
. - Remplacez
PEER_NAME
par un nom décrivant le pair BGP. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW2_IF0
. - Remplacez
PEER_IP_ADDRESS
par l'adresse IP utilisée précédemment pour la passerelle et l'interface de pairs. Cet exemple utilise169.254.0.1
. - Remplacez
PEER_ASN
par le numéro ASN utilisé pour toutes les interfaces du routeurROUTER_NAME_1
et défini précédemment. Cet exemple utilise le numéro ASN65001
.
Pour créer une interface BGP pour le tunnel
TUNNEL_NAME_GW2_IF0
, exécutez la commande suivante :gcloud compute routers add-interface ROUTER_NAME_2 \ --interface-name ROUTER_2_INTERFACE_NAME_0 \ --ip-address IP_ADDRESS \ --mask-length MASK_LENGTH \ --vpn-tunnel TUNNEL_NAME_GW2_IF0 \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
Pour créer un pair BGP pour le tunnel
TUNNEL_NAME_GW2_IF0
, exécutez la commande suivante :gcloud compute routers add-bgp-peer ROUTER_NAME_2 \ --peer-name PEER_NAME \ --interface ROUTER_2_INTERFACE_NAME_0 \ --peer-ip-address PEER_IP_ADDRESS \ --peer-asn PEER_ASN \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b ].
- Remplacez
Créez une interface BGP et un pair BGP sur le routeur
ROUTER_NAME_2
pour le tunnelTUNNEL_NAME_GW2_IF1
. Cette interface BGP connecte le tunnelTUNNEL_NAME_GW2_IF1
sur l'interface 1 de la passerelleGW_2
à l'interface 1 de la passerelleGW_1
via deux adresses IP BGP. Dans les commandes suivantes, remplacez les options comme indiqué ci-dessous :- Remplacez
ROUTER_2_INTERFACE_NAME_1
par un nom de l'interface BGP Cloud Router. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW2_IF1
. - Remplacez
IP_ADDRESS
par l'adresse IP BGP utilisée précédemment pour cette passerelle et cette interface. Cet exemple utilise169.254.1.2
. - Utilisez une longueur du masque (
MASK_LENGTH
) de30
. - Remplacez
PEER_NAME
par un nom décrivant le pair BGP. Il peut être utile d'utiliser un nom associé au tunnelTUNNEL_NAME_GW2_IF1
. - Remplacez
PEER_IP_ADDRESS
par une adresse IP BGP du bloc 169.254.0.0/16 qui n'est pas encore utilisée. Cet exemple utilise169.254.1.1
. - Remplacez
PEER_ASN
par le numéro ASN utilisé pour toutes les interfaces du routeurROUTER_NAME_1
et défini précédemment. Cet exemple utilise le numéro ASN65001
.
Pour créer une interface BGP pour le tunnel
TUNNEL_NAME_GW2_IF1
, exécutez la commande suivante :gcloud compute routers add-interface ROUTER_NAME_2 \ --interface-name ROUTER_2_INTERFACE_NAME_1 \ --ip-address IP_ADDRESS \ --mask-length MASK_LENGTH \ --vpn-tunnel TUNNEL_NAME_GW2_IF1 \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b ].
Pour créer un pair BGP pour le tunnel
TUNNEL_NAME_GW2_IF1
, exécutez la commande suivante :gcloud compute routers add-bgp-peer ROUTER_NAME_2 \ --peer-name PEER_NAME \ --interface ROUTER_2_INTERFACE_NAME_1 \ --peer-ip-address PEER_IP_ADDRESS \ --peer-asn PEER_ASN \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b ].
- Remplacez
Vérifiez les paramètres du routeur
ROUTER_2
en saisissant la commande suivante :gcloud compute routers describe ROUTER_2 \ --region REGION_1
Le résultat de la commande doit ressembler à l'exemple suivant :
bgp: advertiseMode: DEFAULT asn: 65002 bgpPeers: — interfaceName: if-tunnel-b-to-a-if-0 ipAddress: 169.254.0.2 name: bgp-peer-tunnel-b-to-a-if-0 peerAsn: 65001 peerIpAddress: 169.254.0.1 bgpPeers: — interfaceName: if-tunnel-b-to-a-if-1 ipAddress: 169.254.1.2 name: bgp-peer-tunnel-b-to-a-if-1 peerAsn: 65001 peerIpAddress: 169.254.1.1 creationTimestamp: '2015-10-19T14:31:52.639-07:00' id: '4047683710114914215' interfaces: — ipRange: 169.254.0.1/30 linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0 name: if-tunnel-b-to-a-if-0 — ipRange: 169.254.1.1/30 linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-1 name: if-tunnel-b-to-a-if-1 kind: compute#router name: router-b network: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-b region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1 selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b
Passer à l'étape suivante pour terminer la configuration
API
Étape 1 : Pour créer une passerelle VPN haute disponibilité, envoyez une requête POST à la méthode vpnGateways.insert
. Répétez cette commande pour créer l'autre passerelle VPN haute disponibilité en utilisant name
, network
et region
pour l'autre passerelle.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnGateways { "name": "ha-vpn-gw-a", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-a" }
Étape 2 :
Si vous avez déjà créé un routeur Cloud Router dans chacun des réseaux VPC où réside chacune de vos passerelles VPN haute disponibilité, vous pouvez utiliser ces routeurs Cloud plutôt que d'en créer de nouveaux. Toutefois, si un routeur Cloud gère une session BGP pour un rattachement d'interconnexion associé à une interconnexion partenaire, vous devez en créer un nouveau.
Pour créer un routeur Cloud Router, envoyez une requête POST à la méthode routers.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers { "name": "router-a", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-a" }
Étape 3 : Pour créer deux tunnels VPN, un pour chaque interface sur une passerelle VPN haute disponibilité, envoyez une requête POST à la méthode vpnTunnels.insert
.
Saisissez la commande suivante pour créer le premier tunnel :
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels { "name": "ha-vpn-gw-a-tunnel-0", "ikeVersion": 2, "peerIp": "192.0.2.1", "router": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/router-a", "sharedSecret": "974;va'oi3-1", "vpnGateway": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpn-gateways/ha-vpn-gw-a", "vpnGatewayInterface": 0 }
Pour créer le second tunnel, répétez la commande précédente, mais modifiez les paramètres suivants :
name
peerIp
sharedSecret
ousharedSecretHash
(si nécessaire)
Pour le second tunnel, remplacez le paramètre vpnGatewayInterface
par la valeur de l'autre interface de passerelle VPN haute disponibilité. Dans cet exemple, vous devez remplacer cette valeur par 1
.
Répétez cette étape pour créer deux tunnels pour votre deuxième passerelle VPN haute disponibilité qui se connectent à votre première passerelle VPN, mais modifiez les paramètres en utilisant les exemples de commandes gcloud
comme référence.
Définir la priorité des routes annoncées pour BGP (facultatif)
Les exemples suivants créent des sessions BGP sur des instances Cloud Router en annonçant les routes vers les réseaux de pairs correspondants à travers des priorités de base non modifiées.
Utilisez cette configuration pour les configurations en mode actif/actif où les valeurs des priorités des deux côtés des deux tunnels doivent correspondre. Si vous omettez le paramètre advertised-route-priority
, les deux pairs BGP seront associés aux mêmes valeurs de priorité annoncées.
Pour les configurations en mode actif/passif, vous pouvez contrôler la priorité de base des routes annoncées vers Google Cloud que Cloud Router partage avec votre passerelle VPN de pairs. Pour configurer cette priorité, utilisez le paramètre advertised-route-priority
lors de l'ajout ou de la mise à jour d'un pair BGP.
Pour créer une configuration en mode actif/passif, définissez une priorité de route annoncée plus élevée pour une session BGP et le tunnel VPN correspondant, que pour l'autre session BGP et son tunnel VPN.
Pour en savoir plus sur la priorité de base annoncée, consultez la section Préfixes et priorités annoncés.
Vous pouvez également affiner les routes annoncées à l'aide d'annonces personnalisées. Pour ce faire, ajoutez le paramètre advertiseMode
en définissant sa valeur sur custom
, et spécifiez des plages d'adresses IP avec le paramètre advertisedIpRanges
.
Étape 4 : Pour créer une interface Cloud Router BGP, envoyez une requête PATCH ou UPDATE aux méthodes routers.patch
ou routers.update
. La requête PATCH ne met à jour que les paramètres que vous incluez. La requête UPDATE met à jour tous les paramètres du routeur Cloud Router. Créez une interface BGP pour chaque tunnel VPN sur la passerelle VPN haute disponibilité.
Les plages d'adresses IP BGP que vous spécifiez doivent être uniques parmi tous les routeurs cloud de toutes les régions d'un réseau VPC.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/{resourceId} { "interfaces": [ { "name": "if-tunnel-a-to-on-prem-if-0", "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0", "ipRange": "169.254.0.1/30" } ] }
Étape 5 : Pour ajouter un pair BGP au routeur Cloud Router pour chaque tunnel VPN, envoyez une requête POST à la méthode routers.insert
. Répétez cette commande pour l'autre tunnel VPN, en modifiant toutes les options sauf name
et "peerAsn".
Pour créer la configuration complète d'une passerelle VPN haute disponibilité, utilisez les commandes API suivantes.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers { "name": "router-a", "network": "network-a", "bgpPeers": [ { "interfaceName": "if-tunnel-a-to-on-prem-if-0", "ipAddress": "169.254.0.1", "name": "bgp-peer-tunnel-a-to-on-prem-if-0", "peerAsn": "65002", "peerIpAddress": "169.254.0.2", "advertiseMode": "DEFAULT" } ] }
Étape 6 : Vérifiez la configuration du routeur Cloud Router avec la méthode routers.getRouterStatus, en utilisant un corps de requête vide :
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers
Terminer la configuration
Avant de pouvoir utiliser une nouvelle passerelle Cloud VPN et ses tunnels VPN, vous devez suivre la procédure ci-dessous :
- Configurez la passerelle VPN de pairs et configurez-y le ou les tunnels correspondants. Reportez-vous aux pages suivantes :
- Pour en savoir plus sur la configuration spécifique de certains appareils VPN de pairs, consultez les guides d'interopérabilité des VPN.
- Pour en savoir plus sur les topologies de pairs compatibles, consultez la page Topologies.
- Pour en savoir plus sur les paramètres de configuration généraux, consultez la page Configurer la passerelle VPN de pairs.
- Configurez les règles de pare-feu dans Google Cloud et votre réseau de pairs, si nécessaire. Pour en savoir plus, consultez la page consacrée aux règles de pare-feu.
- Vérifiez l'état de vos tunnels VPN et vérifiez la disponibilité de votre passerelle VPN haute disponibilité dans la configuration.
Appliquer une contrainte de règle d'administration qui limite les adresses IP des passerelles VPN de pairs
Vous pouvez créer une contrainte de règle d'administration Google Cloud qui définit un ensemble d'adresses IP autorisées ou interdites pour l'appairage à des passerelles VPN via des tunnels VPN classiques ou haute disponibilité. Cette contrainte contient une liste d'adresses IP de pairs autorisées ou refusées, appliquée aux tunnels Cloud VPN créés après l'application de la contrainte. Pour en savoir plus, consultez la présentation de Cloud VPN.
Autorisations requises
Pour définir une contrainte d'adresse IP de pair au niveau de l'organisation ou du projet, vous devez d'abord disposer du rôle Administrateur des règles d'administration (orgpolicy.policyAdmin
) pour votre organisation.
Définir des contraintes
Pour créer une règle d'administration et l'associer à une organisation, un dossier ou un projet, utilisez les exemples répertoriés dans les sections suivantes et suivez les étapes de la page Utiliser des contraintes.
Restreindre la connectivité à partir d'adresses IP de pairs spécifiques via un tunnel Cloud VPN
Pour n'autoriser que des adresses IP de pairs spécifiques, procédez comme suit :
- Recherchez l'ID de votre organisation en saisissant la commande suivante :
gcloud organizations list
Le résultat de la commande devrait ressembler au suivant.
DISPLAY NAME ID example-organization 29252605212
-
Créez un fichier JSON qui définit votre règle. Vous devez fournir une règle sous forme de fichier JSON, comme dans l'exemple suivant :
{ "constraint": "constraints/compute.restrictVpnPeersIPs", "listPolicy": { "allowedValues": [ "100.1.1.1", ], } }
-
Exécutez la commande gcloud Resource Manager
set-policy
pour définir la règle d'administration, en transmettant le fichier JSON et en utilisant l'identifiant ORGANIZATION_ID que vous avez obtenu à l'étape précédente.
Restreindre la connectivité à partir de toute adresse IP de pairs via un tunnel Cloud VPN
Pour interdire la création de tout nouveau tunnel Cloud VPN, suivez les étapes décrites dans cet exemple de contrainte.
- Recherchez l'ID de votre organisation ou l'ID du nœud dans la hiérarchie des ressources où vous souhaitez définir une règle.
-
Créez un fichier JSON comme dans l'exemple suivant.
{ "constraint": "constraints/compute.restrictVpnPeersIPs", "listPolicy": { "allValues": "DENY" } }
-
Transmettez le fichier JSON en saisissant la même commande que celle que vous utiliseriez pour restreindre des adresses IP de pairs spécifiques.