Si la base de datos de origen está dentro de una VPN (en AWS, por ejemplo, o en tu
VPN local), también debes usar una VPN en el lado de destino para conectarte
a la fuente.
Hay muchos productos de VPN que puedes usar. Los pasos para configurar las VPN varían de un producto a otro, pero todos son básicamente similares. En esta sección, se incluyen ejemplos del uso de AWS y VPN. Google Cloud
El firewall del servidor de la base de datos de origen debe configurarse para permitir todo el rango de IP interna asignado a la conexión de servicio privada de la red de VPC que la instancia de destino de Cloud SQL usará como el campo privateNetwork de su configuración de ipConfiguration.
Para encontrar el rango de IP interna en la consola, sigue estos pasos:
Por Google Cloud otro lado, crea una VPN de Cloud con enrutamiento estático.
En conjunto, la secuencia general de pasos se ve de la siguiente manera:
En Google Cloud consola > Redes de VPC > Direcciones IP externas, reserva una dirección IP
estática para usar en la Cloud VPN.
En la consola de VPC de AWS, haz lo siguiente:
Crea una puerta de enlace de cliente.
Crea una puerta de enlace privada virtual nueva o agrega una existente a la VPC asociada con tu base de datos.
En Tablas de rutas, agrega propagación de rutas:
Haz clic en Editar, marca la casilla de verificación propagar y Guardar para
añadir el rango de direcciones IP de tu Google Cloud red de VPC como el rango de destino.
En la consola de VPC de AWS, crea la VPN:
En Conexiones de VPN, selecciona Conexiones de VPN de sitio a sitio.
Selecciona Crear conexión de VPN.
Ingresa un nombre para la conexión de VPN.
En Puerta de enlace privada virtual, selecciona la puerta de enlace privada que
creaste o seleccionaste antes en este procedimiento.
En Puerta de enlace del cliente, selecciona la puerta de enlace del cliente que creaste
antes en este procedimiento.
En Opciones de enrutamiento, selecciona Estática y especifica la dirección IP estática que reservaste para la Cloud VPN como un CIDR (agrega /32).
Descarga la configuración para guardarla.
Guarda el archivo como Predeterminado.
Busca las secciones IP Sec Tunnels n.° 1 y n.° 2.
Anota la versión de IKE y la clave precompartida para cada túnel.
Anota la dirección IP de la Puerta de enlace privada virtual para cada túnel.
Anota la dirección IP de la opción de configuración de ruta estática para cada túnel.
En Google Cloud console > Hybrid Connectivity > VPN:
Haz clic en Crear conexión de VPN.
Selecciona tu red de VPC y región.
Para Cloud VPN, usa la dirección IP estática que reservaste antes
en este procedimiento.
Usa un Pre-shared key y un tipo de clave de la configuración de AWS que descargaste antes en este procedimiento.
Selecciona la opción de enrutamiento Basada en rutas y agrega dos túneles. Para cada campo Rango de IP de red remota del túnel, usa una dirección IP para la opción de configuración de ruta estática de las secciones IP Sec Tunnel del archivo de configuración de AWS que descargaste antes en este procedimiento.
Haz clic en Crear.Rango de IP de la red remota
En la consola de AWS RDS, haz lo siguiente:
Selecciona un grupo de seguridad.
Agrega reglas de firewall entrantes para permitir todos los protocolos y puertos de la
Cloud VPN.
Los túneles VPN deberían comenzar a comunicarse en breve. En el lado de AWS, en el panel de la VPC, los estados de los túneles son UP. En el lado de GCP, consulta el tráfico entre las VPN en la consola de Cloud Logging del proyecto Cloud VPN gateway.
Ejemplo 2: AWS con VPN con alta disponibilidad de Google Cloud con rutas dinámicas
Para obtener el intercambio de tráfico de VPC con una VPN con alta disponibilidad (rutas dinámicas) a AWS, debes exportar rutas de BGP a la VPC con intercambio de tráfico de Cloud SQL y crear una ruta personalizada anunciada en Cloud Router para la ruta importada de VPC con intercambio de tráfico de Cloud SQL. En ese momento,
Cloud Router anuncia rutas de AWS a la VPC de Cloud SQL y viceversa. Las reglas de firewall de ambos lados también deben coincidir con el CIDR de la ruta de intercambio de Cloud SQL.
En el lado de AWS, puedes seguir los primeros tres pasos del ejemplo 1, excepto que debes seleccionar Dinámico en lugar de Estático en Opciones de enrutamiento.
Selecciona la configuración de vinculación de VPC de Cloud SQL en la consola y toma nota de los rangos de IP de destino en RUTA IMPORTADA.
Para obtener más información, consulta Importa y exporta rutas personalizadas.
Edita este intercambio de tráfico de VPC y marca Import Custom Routes y Export Custom Routes en los detalles de la conexión de intercambio de tráfico de VPC, y haz clic en GUARDAR.
El intercambio de tráfico ahora recibe rutas dinámicas de tu VPC, como las rutas que provienen de pares de BGP. Esto permite el tráfico de la VPN a la red con intercambio de tráfico.
Sin embargo, Cloud Router aún no anuncia esta ruta a otras redes.
Para ello, debes agregar rutas personalizadas anunciadas en Cloud Router para que tu VPC anuncie las rutas importadas a otras redes. Para obtener más información, consulta Importa y exporta rutas personalizadas.
Agrega tu rango de IP personalizado DESTINATION_IP_RANGE como una ruta personalizada en las rutas anunciadas de la configuración de Cloud Router. Las redes de pares de BGP ahora reciben anuncios de las rutas de red de Cloud SQL importadas, DESTINATION_IP_RANGE. El tráfico de esas redes conectadas a VPN destinadas a la VPC de intercambio de tráfico de Cloud SQL ahora se enruta a través del túnel de VPN.
Permite que las rutas se propaguen en las tablas de rutas de AWS. Asegúrate de que las tablas de rutas de AWS para las subredes que contienen tu base de datos de origen contengan una entrada para el rango DESTINATION_IP_RANGE que enruta a la puerta de enlace privada virtual de la VPN.
Agrega una regla de firewall entrante del grupo de seguridad para permitir el tráfico de DESTINATION_IP_RANGETCP port 3306.
Ahora se puede establecer la conectividad.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 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."]]