Si votre base de données source se trouve dans un VPN (dans AWS, par exemple, ou dans votre VPN sur site), vous devez également utiliser un VPN côté destination pour vous connecter à la source.
Vous pouvez utiliser de nombreux produits VPN. La procédure de configuration des VPN varie d'un produit à l'autre, mais elles sont toutes fondamentalement similaires. Cette section contient des exemples utilisant AWS et des VPN. Google Cloud
Le pare-feu du serveur de base de données source doit être configuré pour autoriser l'intégralité de la plage d'adresses IP internes allouée à la connexion de service privée du réseau VPC que l'instance de destination Cloud SQL utilisera comme champ privateNetwork dans ses paramètres ipConfiguration.
Pour trouver la plage d'adresses IP internes dans la console, procédez comme suit :
Sur le Google Cloud côté, créez un VPN Cloud à l'aide du routage statique.
La séquence d'étapes globale se présente comme suit:
Dans Google Cloud console > VPC Networks > External IP addresses, réservez une adresse IP statique à utiliser pour le Cloud VPN.
Dans la console VPC AWS :
Créez une passerelle client.
Créez une passerelle réseau privé virtuel ou ajoutez-en une existante au VPC associé à votre base de données.
Dans Tables de routage, ajoutez la propagation des routes:
Cliquez sur Modifier, cochez la case propagate (Propager) et cliquez sur Save (Enregistrer) pour ajouter la plage d'adresses IP de votre réseau VPC Google Cloud comme plage de destination.
Dans la console VPC AWS, créez le VPN :
Sous Connexions VPN, sélectionnez Connexions VPN site à site.
Sélectionnez Créer une connexion VPN.
Saisissez un nom pour la connexion VPN.
Dans Passerelle réseau privé virtuel, sélectionnez la passerelle privée que vous avez créée ou sélectionnée précédemment dans cette procédure.
Pour Passerelle client, sélectionnez la passerelle client que vous avez créée précédemment dans cette procédure.
Pour Routing Options (Options de routage), sélectionnez Static (Statique), puis spécifiez l'adresse IP statique que vous avez réservée pour le Cloud VPN en tant que plage CIDR (ajoutez /32).
Téléchargez la configuration pour enregistrer les paramètres.
Enregistrez le fichier sous le nom Default (Par défaut).
Recherchez les sections Tunnels IP Sec 1 et 2.
Notez la version IKE et la clé pré-partagée pour chaque tunnel.
Notez l'adresse IP de la passerelle privée virtuelle pour chaque tunnel.
Notez l'adresse IP de l'option de configuration de route statique pour chaque tunnel.
Dans Google Cloud console > Connectivité hybride > VPN:
Cliquez sur Créer une connexion VPN.
Sélectionnez votre réseau VPC et votre région.
Pour Cloud VPN, utilisez l'adresse IP statique que vous avez réservée précédemment dans cette procédure.
Utilisez un Pre-shared key et un type de clé issus de la configuration AWS que vous avez téléchargée précédemment dans cette procédure.
Sélectionnez l'option de routage Basé sur le routage et ajoutez deux tunnels. Pour chaque champ Plage d'adresses IP du réseau distant du tunnel, utilisez une adresse IP pour l'option de configuration de route statique à partir des sections IP Sec Tunnel du fichier de configuration AWS que vous avez téléchargé précédemment dans cette procédure.
Cliquez sur Créer.Plage d'adresses IP du réseau distant
Dans la console AWS RDS :
Sélectionnez un groupe de sécurité.
Ajoutez des règles de pare-feu entrant pour autoriser tous les protocoles et ports du Cloud VPN.
Les tunnels VPN devraient bientôt commencer à communiquer. Du côté AWS, dans le tableau de bord VPC, les états des tunnels sont UP. Côté GCP, affichez le trafic entre les VPN dans la console Cloud Logging du projet Cloud VPN gateway.
Exemple 2: AWS avec VPN haute disponibilité Google Cloud avec routes dynamiques
Pour obtenir un appairage VPC avec un VPN haute disponibilité (routes dynamiques) vers AWS, vous devez exporter des routes BGP vers le VPC appairé Cloud SQL, puis créer une route annoncée personnalisée dans Cloud Router pour la route importée du VPC appairé Cloud SQL. À ce stade, Cloud Router annonce les routes AWS vers le VPC Cloud SQL et inversement. Les règles de pare-feu des deux côtés doivent également correspondre au CIDR de la route d'appairage Cloud SQL.
Côté AWS, vous pouvez suivre les trois premières étapes de l'exemple 1, à l'exception de la sélection de Dynamic (Dynamique) au lieu de Static (Statique) sous Routing options (Options de routage).
Sélectionnez la configuration de votre mise en pairage VPC Cloud SQL dans la console et notez les plages d'adresses IP de destination sous ROUTES IMPORTÉES.
Pour en savoir plus, consultez la section Importer et exporter des routes personnalisées.
Modifiez cet appairage de VPC, cochez Import Custom Routes et Export Custom Routes dans les détails de la connexion d'appairage de VPC, puis cliquez sur ENREGISTRER.
L'appairage reçoit désormais des routes dynamiques à partir de votre VPC, comme les routes provenant de pairs BGP. Cela permet le trafic du VPN vers le réseau appairé.
Toutefois, Cloud Router n'annonce pas encore cette route aux autres réseaux.
Pour ce faire, vous devez ajouter des routes annoncées personnalisées dans Cloud Router afin que votre VPC annonce les routes importées aux autres réseaux. Pour en savoir plus, consultez la section Importer et exporter des routes personnalisées.
Ajoutez votre plage d'adresses IP personnalisée DESTINATION_IP_RANGE en tant que route personnalisée dans les routes annoncées de la configuration Cloud Router. Les réseaux associés BGP reçoivent désormais des annonces des routes réseau Cloud SQL importées, DESTINATION_IP_RANGE. Le trafic sur ces réseaux connectés par VPN à destination du VPC associé Cloud SQL est désormais acheminé via le tunnel VPN.
Autorisez la propagation des routes dans les tables de routage AWS. Assurez-vous que les tables de routage AWS des sous-réseaux contenant votre base de données source contiennent une entrée pour la plage DESTINATION_IP_RANGE qui achemine vers la passerelle réseau privé virtuel VPN.
Ajoutez une règle de pare-feu entrante de groupe de sécurité pour autoriser le trafic pour DESTINATION_IP_RANGETCP port 3306.
La connectivité peut maintenant être établie.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/05 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/05 (UTC)."],[[["\u003cp\u003eConnecting a source database within a VPN to a destination requires a VPN on the destination side, regardless of the VPN product used.\u003c/p\u003e\n"],["\u003cp\u003eThe source database's firewall must allow the entire internal IP range allocated for the private service connection of the VPC network used by the Cloud SQL destination instance.\u003c/p\u003e\n"],["\u003cp\u003eWhen using AWS with Google Cloud Classic VPN, static routing is employed, necessitating the reservation of a static IP address in Google Cloud and the creation of a customer gateway and VPN in AWS.\u003c/p\u003e\n"],["\u003cp\u003eFor AWS with Google Cloud HA VPN using dynamic routes, BGP routes must be exported to the Cloud SQL peered VPC, and a custom advertised route in Cloud Router must be created to facilitate route advertisement between AWS and Cloud SQL.\u003c/p\u003e\n"],["\u003cp\u003eTo establish connectivity in the HA VPN setup, firewall rules on both sides need to match the Cloud SQL peering route CIDR, and AWS route tables must have an entry for the destination IP range that directs traffic through the VPN Virtual Private Gateway.\u003c/p\u003e\n"]]],[],null,["# Configure connectivity using VPNs\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nMySQL \\| [PostgreSQL](/database-migration/docs/postgres/configure-connectivity-vpns \"View this page for the PostgreSQL version of Database Migration Service.\") \\| [PostgreSQL to AlloyDB](/database-migration/docs/postgresql-to-alloydb/configure-connectivity-vpns \"View this page for the PostgreSQL to AlloyDB version of Database Migration Service.\")\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nOverview\n--------\n\nIf your source database is inside a VPN (in AWS, for example, or your\non-premises VPN), you also need to use a VPN on the destination side to connect\nto the source.\n\nThere are many VPN products you can use. The steps to configure VPNs vary from\none product to another, but all of them are fundamentally similar. This section\ncontains examples using AWS and Google Cloud VPNs.\n\nThe source database server's firewall must be configured to allow the entire **internal\nIP range** allocated for the **private service connection** of the\nVPC network that the Cloud SQL destination instance is going to use as the\n**privateNetwork** field of its [**ipConfiguration** settings](/sql/docs/mysql/replication/replication-from-external#setup-replica-instance).\n\nTo find the **internal IP range** in the console:\n\n1. [Go to the VPC networks page](https://console.cloud.google.com/networking/networks/list) in the Google Cloud console.\n\n2. Select the VPC network that you want to use.\n\n3. Select **Private services access** \\\u003e **Allocated IP ranges for services**.\n\n4. Find the **Internal IP range** associated with the connection created by **servicenetworking-googleapis-com**.\n\n| Note: To use Virtual Private Cloud networking, you must enable the [Service Networking API](https://console.cloud.google.com/apis/library/servicenetworking.googleapis.com) for your Google Cloud project.\n\nExample 1: AWS with Google Cloud Classic VPN with static routes\n---------------------------------------------------------------\n\nFind more complete, step-by-step documentation in the following links:\n\n- On the AWS side, set up a [Site to Site VPN](https://docs.aws.amazon.com/vpn/latest/s2svpn/SetUpVPNConnections.html).\n- On the Google Cloud side, create a [Cloud VPN](/vpn/docs/how-to/creating-static-vpns) using static routing.\n\n\u003cbr /\u003e\n\nPut together, the overall sequence of steps looks like the following:\n\n1. In Google Cloud console \\\u003e VPC Networks \\\u003e External IP addresses, reserve a static IP address to use for the Cloud VPN.\n2. In the AWS VPC console:\n 1. Create a customer gateway.\n 2. Create a new virtual private gateway or add an existing one to the VPC associated with your database.\n 3. In **Routes Tables** add **route propagation**:\n 4. Click **Edit** , check the **propagate** checkbox and **Save** to add the IP address range of your Google Cloud VPC network as the destination range.\n3. In the AWS VPC console, create the VPN:\n 1. Under **VPN Connections** , select **Site-to-site VPN Connections**.\n 2. Select **Create VPN Connection**.\n 3. Enter a name for the VPN connection.\n 4. For **Virtual Private Gateway**, select the private gateway that you created or selected earlier in this procedure.\n 5. For **Customer Gateway**, select the customer gateway that you created earlier in this procedure.\n 6. For **Routing Options** , select **Static**, and specify the static IP address you reserved for the Cloud VPN as a CIDR (add /32).\n 7. Download the configuration to save the settings.\n 1. Save the file as **Default**.\n 2. Find the sections **IP Sec Tunnels** #1 and #2.\n 3. Note the IKE version and **Pre-Shared Key** for each tunnel.\n 4. Note the IP address for the **Virtual Private Gateway** for each tunnel.\n 5. Note the IP address for the **Static Route Configuration option** for each tunnel.\n4. In Google Cloud, create a [Classic VPN using static routing](/vpn/docs/how-to/creating-static-vpns).\n 1. In Google Cloud console \\\u003e Hybrid Connectivity \\\u003e VPN:\n 2. Click **Create VPN connection** .\n 1. Select your VPC network and region.\n 2. For the Cloud VPN, use the static IP address you reserved earlier in this procedure.\n 3. Use a `Pre-shared key` and key type from the AWS configuration you downloaded earlier in this procedure.\n 4. Select the **Route based** routing option and add two tunnels; for each tunnel's **Remote network IP range** field, use an IP address for the **Static Route Configuration option** from the `IP Sec Tunnel` sections of the AWS configuration file you downloaded earlier in this procedure.\n 5. Click **Create** .**Remote network IP range**\n\n\u003c!-- --\u003e\n\n5. In the AWS RDS console:\n 1. Select a security group.\n 2. Add inbound firewall rules to allow all protocols and ports from the Cloud VPN.\n\nThe VPN tunnels should begin communicating shortly. On the AWS side, in the\nVPC Dashboard, the tunnel statuses are `UP`. On the GCP\nside, view the traffic between the VPNs in the\n[Cloud Logging](https://console.cloud.google.com/logs) console in the\n`Cloud VPN gateway` project.\n\nExample 2: AWS with Google Cloud HA VPN with dynamic routes\n-----------------------------------------------------------\n\nTo get VPC Peering with an HA VPN (dynamic routes) to AWS, you need to export BGP routes to the Cloud SQL peered VPC, and create a custom advertised route in Cloud Router for the Cloud SQL peered VPC imported route. At that point, Cloud Router is advertising AWS routes to the Cloud SQL VPC and the other way around. The firewall rules on both sides also need to match the Cloud SQL peering route CIDR.\n\nOn the AWS side, you can follow the first three steps in [Example 1](#static-routes),\nexcept select **Dynamic** instead of **Static** under **Routing options**.\n\n1. Select your Cloud SQL VPC Peering configuration in the [Console](https://console.cloud.google.com/networking/peering) and note the **Destination IP ranges** under **IMPORTED ROUTES** . For more information, see [Importing and exporting custom routes](/vpc/docs/vpc-peering#importing-exporting-routes).\n2. Edit this VPC peering and check `Import Custom Routes` and `Export Custom Routes` in the VPC Peering connection details, and click **SAVE** .\n\n The peering now receives dynamic routes from your VPC like the routes\n coming from BGP peers. This allows traffic from the VPN to the peered network.\n However, Cloud Router is not yet advertising this route to other networks.\n To do so, you need to add custom advertised routes in the Cloud Router so\n that your VPC advertises the imported routes to other networks. For more\n information, see [Importing and exporting custom routes](/network-connectivity/docs/router/concepts/advertised-routes#overview-am).\n3. Add your \u003cvar translate=\"no\"\u003eDESTINATION_IP_RANGE\u003c/var\u003e custom IP range as a custom route in the Cloud Router configuration advertised routes. BGP peered networks are now receiving advertisements of the **imported Cloud SQL\n network routes** , \u003cvar translate=\"no\"\u003eDESTINATION_IP_RANGE\u003c/var\u003e. Traffic on those VPN-connected networks bound for the Cloud SQL peered VPC are now routed through the VPN tunnel.\n4. Allow routes to propagate in AWS route tables. Make sure AWS route tables for the subnets that contain your source database contain an entry for the \u003cvar translate=\"no\"\u003eDESTINATION_IP_RANGE\u003c/var\u003e range that routes to the VPN Virtual Private Gateway.\n5. Add a security group firewall inbound rule to allow traffic for \u003cvar translate=\"no\"\u003eDESTINATION_IP_RANGE\u003c/var\u003e `TCP port 3306`. Connectivity can now be established."]]