Configura el enrutamiento para interfaces de Private Service Connect
En esta página, se describe cómo configurar el enrutamiento para las interfaces de Private Service Connect virtuales y dinámicas.
Cómo enrutar el tráfico a través de una interfaz de Private Service Connect
Después de crear una interfaz de Private Service Connect, debes enrutar el tráfico a través de la interfaz configurando el sistema operativo invitado (SO invitado) en la VM de la interfaz.
Permite la conectividad SSH
Asegúrate de que las reglas de firewall estén configuradas para permitir conexiones SSH de entrada a la VM de tu interfaz de Private Service Connect.
Busca el nombre de tu interfaz de Private Service Connect Google Cloud
Para configurar el enrutamiento, debes conocer el nombre Google Cloud de tu interfaz de Private Service Connect.
Para encontrar el nombre de una interfaz de Private Service Connect dinámica, usa Google Cloud CLI. Google Cloud
Console
En la consola de Google Cloud , ve a la página Instancias de VM:
Haz clic en el nombre de la VM que tiene tu interfaz de Private Service Connect.
En la sección Interfaces de red, busca y anota el nombre de tu interfaz virtual de Private Service Connect, por ejemplo,
nic1
.
gcloud
Usa el comando
gcloud compute instances describe
.gcloud compute instances describe VM_NAME \ --zone=ZONE
Reemplaza lo siguiente:
VM_NAME
: Es el nombre de la VM que tiene la interfaz de Private Service Connect.ZONE
: La zona de la VM
En el resultado del comando, busca y anota el nombre Google Cloud de tu interfaz de Private Service Connect.
- En el caso de las interfaces virtuales de Private Service Connect, el nombre tiene el formato
nic[interface_number]
, por ejemplo,nic0
onic1
. - En el caso de las interfaces dinámicas de Private Service Connect, el nombre tiene el formato
nic[parent_interface_number.VLAN_ID]
, por ejemplo,nic0.10
onic1.42
.
- En el caso de las interfaces virtuales de Private Service Connect, el nombre tiene el formato
Configura la administración automática de interfaces dinámicas de Private Service Connect
Si configuras el enrutamiento para una interfaz de Private Service Connect dinámica, habilita la administración automática de interfaces de red dinámicas. Solo debes hacerlo una vez por VM.
Busca el nombre del SO invitado de tu interfaz de Private Service Connect
Para configurar el enrutamiento, debes conocer el nombre del SO invitado de tu interfaz de Private Service Connect, que es diferente del nombre de la interfaz en Google Cloud.
Para encontrar el nombre de la interfaz en una VM de Debian, haz lo siguiente: Para VMs con otros sistemas operativos, consulta la documentación pública del sistema operativo.
- Conéctate a la VM de tu interfaz de Private Service Connect.
Ejecuta el siguiente comando:
ip address
En la lista de interfaces de red, busca y anota el nombre de la interfaz asociada con la dirección IP de tu interfaz de Private Service Connect. Por ejemplo, si el agente invitado de Linux administra las interfaces de red de tu VM, los nombres tendrán los siguientes formatos:
- Interfaces virtuales de Private Service Connect:
ens[number]
, por ejemplo,ens5
. - Interfaces dinámicas de Private Service Connect:
gcp.ens[parent_interface_number].[VLAN_ID]
, por ejemplo,gcp.ens5.10
.
- Interfaces virtuales de Private Service Connect:
Busca la dirección IP de la puerta de enlace de tu interfaz de Private Service Connect
Para configurar el enrutamiento, debes conocer la dirección IP de la puerta de enlace predeterminada de la interfaz de Private Service Connect.
- Conéctate a la VM de tu interfaz de Private Service Connect.
Envía una solicitud
GET
desde la VM de tu interfaz al servidor de metadatos asociado.Para las interfaces virtuales de Private Service Connect, envía la siguiente solicitud:
curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway -H "Metadata-Flavor: Google" && echo
Reemplaza
INTERFACE_NUMBER
por el índice de tu interfaz. Por ejemplo, si el nombreGoogle Cloud de tu interfaz de Private Service Connect esnic1
, usa un valor de1
.Para las interfaces dinámicas de Private Service Connect, envía la siguiente solicitud:
curl http://metadata.google.internal/computeMetadata/v1/instance/vlan-network-interfaces/PARENT_INTERFACE_NUMBER/VLAN_ID/gateway -H "Metadata-Flavor: Google" && echo
Reemplaza lo siguiente:
PARENT_INTERFACE_NUMBER
: Es el índice de la vNIC principal de la interfaz de Private Service Connect dinámica.Por ejemplo, si el nombre deGoogle Cloud para tu interfaz de Private Service Connect es
nic1.5
, usa un valor de1
.VLAN_ID
: Es el ID de VLAN de tu interfaz dinámica de Private Service Connect.Por ejemplo, si el nombre Google Cloud de tu interfaz de Private Service Connect es
nic1.5
, usa un valor de5
.
El resultado de la solicitud muestra la dirección IP de la puerta de enlace.
Agrega rutas para las subredes del consumidor
Debes agregar una ruta a la puerta de enlace predeterminada de la interfaz de Private Service Connect para cada subred del consumidor que se conecte a la interfaz de Private Service Connect. Esto permite que el tráfico que está vinculado a la red del consumidor fluya a través de la interfaz de Private Service Connect.
Los siguientes pasos describen cómo actualizar temporalmente la tabla de enrutamiento para una VM que usa el sistema operativo Debian. Para actualizar la tabla de forma permanente o actualizar la ruta en un sistema operativo diferente, consulta la documentación pública del sistema operativo.
Conéctate a la VM de tu interfaz de Private Service Connect.
Ejecuta el siguiente comando para cada subred del consumidor que se conecte a tu interfaz de Private Service Connect:
sudo ip route add CONSUMER_SUBNET_RANGE via GATEWAY_IP dev OS_INTERFACE_NAME
Reemplaza lo siguiente:
CONSUMER_SUBNET_RANGE
: El rango de direcciones IP de la subred de consumidorGATEWAY_IP
: La dirección IP de la puerta de enlace predeterminada para la subred de la interfazOS_INTERFACE_NAME
: El nombre del SO invitado para tu interfaz de Private Service Connect, por ejemplo,ens5
ogcp.ens5.10
Ejecuta el siguiente comando para quitar todas las entradas de la tabla de rutas de caché. Esto puede ser necesario si usas una instancia existente con tablas de rutas configuradas previamente.
sudo ip route flush cache
Usa una interfaz de Private Service Connect con los Controles del servicio de VPC
Puedes usar interfaces de Private Service Connect con Controles del servicio de VPC. Esto permite que una red de VPC de productor acceda a los servicios y las APIs de Google a través de una red de VPC del consumidor, mientras que la organización del consumidor puede aplicar los beneficios de seguridad de los Controles del servicio de VPC.
Puedes implementar esta configuración con uno de los siguientes enfoques, que se describen en las siguientes secciones:
- Configura el enrutamiento del SO invitado
- Aísla la interfaz de Private Service Connect con espacios de nombres de red o VRF y, luego, configura el enrutamiento.
Configura el enrutamiento del SO invitado
Para usar una interfaz de Private Service Connect con Controles del servicio de VPC, configura el enrutamiento en el SO invitado de la VM de la interfaz. Dirige el tráfico destinado a los servicios y las APIs de Google a través de tu interfaz de Private Service Connect.
Los siguientes pasos describen cómo actualizar temporalmente la tabla de enrutamiento para una VM que usa el sistema operativo Debian. Para actualizar la tabla de forma permanente o actualizar la ruta en un sistema operativo diferente, consulta la documentación pública del sistema operativo.
Para configurar el enrutamiento, haz lo siguiente:
- Permite la conectividad SSH a la VM de tu interfaz de Private Service Connect.
- Conéctate a la VM.
Para crear una tabla de rutas personalizada para tu interfaz de Private Service Connect, ejecuta el siguiente comando:
echo "1 ROUTE_TABLE_NAME" | sudo tee -a /etc/iproute2/rt_tables
Reemplaza
ROUTE_TABLE_NAME
por un nombre para la tabla de rutas.Agrega una ruta a tu tabla de rutas para el tráfico a las APIs y los servicios de Google. Por ejemplo, para agregar una ruta para el tráfico a la IP virtual (VIP)
restricted.googleapis.com
, usa el siguiente comando, que especifica el rango de direcciones IPv4 para restricted.googleapis.com:sudo ip route add 199.36.
153.4/30 dev OS_INTERFACE_NAME table ROUTE_TABLE_NAME Reemplaza
OS_INTERFACE_NAME
por el nombre del SO invitado para tu interfaz de Private Service Connect, por ejemplo,ens5
ogcp.ens5.10
.Para agregar una regla de enrutamiento que use la tabla de enrutamiento personalizada para los paquetes que se originan en tu interfaz de Private Service Connect, usa el siguiente comando:
sudo ip rule add from INTERFACE_IP table ROUTE_TABLE_NAME
Reemplaza
INTERFACE_IP
por la dirección IP de tu interfaz de Private Service Connect. Puedes encontrar la dirección IP de la interfaz describiendo la VM de la interfaz.Ejecuta el siguiente comando para quitar todas las entradas de la tabla de rutas de caché. Esto puede ser necesario si usas una instancia existente con tablas de rutas configuradas previamente.
sudo ip route flush cache
Aísla las interfaces de Private Service Connect con espacios de nombres o VRF
Como alternativa, puedes configurar tu VM para que use espacios de nombres de red o enrutamiento y reenvío virtuales (VRF) para aislar la interfaz de Private Service Connect. Este enfoque es útil para las cargas de trabajo en contenedores, como las que se ejecutan en pods de Google Kubernetes Engine.
Configura el enrutamiento con el mismo contexto que usaste para aislar la interfaz y asegúrate de que las cargas de trabajo que usan tu interfaz de Private Service Connect existan dentro de este mismo contexto.