Intervalos de IP de alias
Google Cloud Los intervalos de IP de alias te permiten asignar intervalos de direcciones IP internas como alias a las interfaces de red de una máquina virtual. Esto resulta útil si tienes varios servicios en una VM y quieres asignar a cada servicio una dirección IP diferente. Los intervalos de IPs de alias también funcionan con los pods de GKE.
Si solo tienes un servicio en ejecución en una VM, puedes hacer referencia a él mediante la dirección IP principal de la interfaz. Si tienes varios servicios ejecutándose en una VM, puede que quieras asignar a cada uno una dirección IP interna diferente. Puedes hacerlo con intervalos de IP de alias.
Intervalos CIDR principales y secundarios de la subred
Todas las subredes tienen un intervalo CIDR principal, que es el intervalo de direcciones IP internas que definen la subred. Cada instancia de VM obtiene su dirección IP interna principal de este intervalo. También puedes asignar intervalos de IP de alias desde ese intervalo principal o añadir un intervalo secundario a la subred y asignar intervalos de IP de alias desde el intervalo secundario. Para usar intervalos de IP de alias, no es necesario usar intervalos de subredes secundarias. Estos intervalos de subredes secundarias solo sirven como herramienta organizativa.
Intervalos de IP de alias definidos en una interfaz de red de una VM
Con el alias de IP, puedes configurar varias direcciones IP internas que representen contenedores o aplicaciones alojados en una VM sin tener que definir una interfaz de red independiente. Puedes asignar intervalos de IPs de alias de la VM desde los intervalos principales o secundarios de la subred.
En Configurar intervalos de IP de alias se describen los comandos para configurar una subred con intervalos secundarios y para asignar direcciones IP de alias a las VMs.
En el siguiente diagrama se muestra una ilustración básica de los intervalos CIDR principales y secundarios, así como de los intervalos de IPs de alias de la interfaz principal de la VM:
- Se configura un intervalo CIDR principal
10.1.0.0/16
como parte de una subred. - Se configura un intervalo CIDR secundario
10.2.0.0/20
como parte de una subred. - La IP principal de la VM
10.1.0.2
se asigna desde el intervalo CIDR principal,10.1.0.0/16
, mientras que un intervalo de IP de alias,10.2.1.0/24
, se asigna en la VM desde el intervalo CIDR secundario,10.2.0.0/20
. - Las direcciones del intervalo de IP de alias se usan como direcciones IP de los contenedores alojados en la VM.
Ventajas principales de los intervalos de IP de alias
Cuando se configuran intervalos de IP de alias,se instalan automáticamente rutas de red de nube privada virtual (VPC) para los intervalos de IP principales y de alias de la subred de la interfaz de red principal. Google Cloud Tu orquestador de contenedores no tiene que especificar la conectividad de la red VPC para estas rutas. Esto simplifica el enrutamiento del tráfico y la gestión de los contenedores. Sin embargo, sí que debes realizar la configuración en el invitado, tal como se describe en Propiedades clave de los intervalos de IP de alias.
Cuando Google Cloudasigna direcciones IP de contenedor, los procesos de validación de Google Cloudse aseguran de que las direcciones IP de los pods de contenedor no entren en conflicto con las direcciones IP de las VMs.
Cuando se configuran direcciones IP de alias, se realizan comprobaciones antispoofing en el tráfico para asegurarse de que el tráfico que sale de las máquinas virtuales utiliza las direcciones IP de las máquinas virtuales y las direcciones IP de los pods como direcciones de origen. Las comprobaciones antifalsificación verifican que las VMs no envían tráfico con direcciones IP de origen arbitrarias. El uso de rutas estáticas para la red de contenedores sería un enfoque menos seguro que el alias de IP, ya que requeriría que se inhabilitaran las comprobaciones antispoofing en las VMs del host del contenedor (las comprobaciones antispoofing se inhabilitan cuando se habilita el reenvío de IP).
Los intervalos de IPs de alias se pueden enrutar en la red virtual Google Cloud sin necesidad de rutas adicionales. No tiene que añadir una ruta para cada alias de IP ni tener en cuenta las cuotas de rutas.
Cloud Router puede anunciar direcciones IP de alias a una red on-premise conectada mediante VPN o Interconnect.
Asignar intervalos de IP de alias desde un intervalo CIDR secundario tiene varias ventajas. Al asignar direcciones de un intervalo distinto al que se usa para las direcciones IP principales, puedes separar la infraestructura (máquinas virtuales) de los servicios (contenedores). Cuando configuras espacios de direcciones independientes para la infraestructura y los servicios, puedes configurar controles de cortafuegos para las direcciones IP de alias de las VMs por separado de los controles de cortafuegos de las direcciones IP principales de una VM. Por ejemplo, puedes permitir cierto tráfico para los pods de contenedores y denegar un tráfico similar para la dirección IP principal de la máquina virtual.
Arquitectura de contenedores en Google Cloud
Imagina que quieres configurar servicios contenerizados en Google Cloud. Debes crear las VMs que alojarán los servicios y, además, los contenedores.
En este caso, quieres enrutar el tráfico desde y hacia los contenedores a y desde ubicaciones on-premise que estén conectadas a través de una VPN. Sin embargo, no quieres que se pueda acceder a las direcciones IP principales de la VM a través de la VPN. Para crear esta configuración, el intervalo de IPs del contenedor debe poder enrutarse a través de la VPN, pero no el intervalo de IPs principal de la VM. Cuando crees una máquina virtual, también te interesará asignar automáticamente un grupo de direcciones IP que se usen para el contenedor.
Para crear esta configuración, siga estos pasos:
- Cuando creas la subred, configuras
- Un intervalo CIDR principal, por ejemplo,
10.128.0.0/16
- Un intervalo CIDR secundario, por ejemplo,
172.16.0.0/16
- Un intervalo CIDR principal, por ejemplo,
- Usa una plantilla de instancia para crear VMs y asigna automáticamente a cada una lo siguiente:
- Una IP principal del intervalo
10.128.0.0/16
- Un intervalo de alias
/24
del espacio CIDR secundario172.16.0.0/16
, de forma que puedas asignar a cada contenedor de una VM una IP del intervalo CIDR secundario/24
- Una IP principal del intervalo
- Crea dos reglas de cortafuegos.
- Una regla que deniega el tráfico que viaja a través de la VPN desde el entorno on-premise para que no llegue al intervalo CIDR principal de la subred.
- Una regla que permita que el tráfico que se desplaza por la VPN desde las instalaciones locales llegue al intervalo de direcciones CIDR secundario de la subred.
Ejemplo: configurar contenedores con intervalos de IP de alias
Con los intervalos de IP de alias, las direcciones IP de los contenedores se pueden asignar desde un intervalo CIDR secundario y configurar como direcciones IP de alias en la VM que aloja el contenedor.
Para crear la configuración que se muestra arriba, sigue estos pasos:
Crea una subred con un intervalo CIDR 10.128.0.0/16, desde el que se asignan las direcciones IP de las VMs, y un intervalo CIDR secundario 172.16.0.0/20 para el uso exclusivo de los contenedores, que se configurará como intervalos de IP de alias en la VM que los aloja:
gcloud compute networks subnets create subnet-a \ --network network-a \ --range 10.128.0.0/16 \ --secondary-range container-range=172.16.0.0/20
Crea máquinas virtuales con una IP principal del intervalo 10.128.0.0/16 y un intervalo de IP de alias 172.16.0.0/24 del intervalo CIDR secundario 172.16.0.0/20 para que los contenedores de esa máquina virtual puedan usarlo:
gcloud compute instances create vm1 [...] \ --network-interface subnet=subnet-a,aliases=container-range:172.16.0.0/24 gcloud compute instances create vm2 [...] \ --network-interface subnet=subnet-a,aliases=container-range:172.16.1.0/24
Las direcciones IP de los contenedores se configuran como Google Cloud direcciones IP de alias. En esta configuración, se podrá acceder a las IPs principales y de alias a través del túnel VPN. Si Cloud Router está configurado, anunciará automáticamente el intervalo de subred secundaria 172.16.0.0/20. Para obtener más información sobre cómo usar una VPN con Cloud Router, consulta el artículo Crear un túnel VPN mediante enrutamiento dinámico.
Para obtener más información sobre los comandos que se usan para crear esta configuración, consulta Configurar direcciones y rangos de IP de alias.
Ejemplo: varios intervalos de IP de alias configurados en una sola instancia de VM
Los intervalos de IPs alias te permiten gestionar la asignación de IPs para las aplicaciones que se ejecutan en máquinas virtuales, incluidas las que usan contenedores.
Puede que tengas una implementación en la que algunos contenedores se puedan migrar entre VMs y otros no. Los contenedores que se pueden migrar se pueden configurar mediante intervalos /32, lo que facilita su migración individual. Los contenedores que no se pueden migrar se pueden configurar con un intervalo más amplio, ya que permanecerán juntos.
En este tipo de implementaciones, es posible que necesites más de un intervalo de IPs alias por instancia de VM. Por ejemplo, un /27 para contenedores no migratorios y varios /32 para contenedores migratorios.
Para configurar este ejemplo, usa los siguientes comandos gcloud
:
gcloud compute networks create vpc1 --subnet-mode custom
gcloud compute networks subnets create subnet1 --region us-central1 --network vpc1 --range 10.128.0.0/16 --secondary-range secondaryrange1=172.16.0.0/20
gcloud compute instances create vm1 --zone us-central1-a --network-interface "subnet=subnet1,aliases=secondaryrange1:172.16.0.0/27;secondaryrange1:172.16.1.0/32"
gcloud compute instances create vm2 --zone us-central1-a --network-interface "subnet=subnet1,aliases=secondaryrange1:172.16.0.32/27;secondaryrange1:172.16.1.1/32"
Direcciones IP de alias en redes y subredes de VPC en modo automático
Las subredes creadas automáticamente en las redes de VPC en modo automático tienen un intervalo CIDR principal, pero no un intervalo secundario. Para usar IPs de alias con una red VPC en modo automático, puedes asignar intervalos de IPs de alias desde el intervalo CIDR principal de la subred creada automáticamente o añadir un intervalo secundario a la subred creada automáticamente y asignar intervalos de IPs de alias desde el nuevo intervalo secundario.
También puedes crear una subred con intervalos secundarios en la red de VPC de modo automático siempre que ninguno de sus intervalos se solape con 10.128.0.0/9
. Después, puedes crear instancias de VM en la nueva subred y asignar intervalos de IP de alias desde cualquier intervalo de esa subred.
Si quieres añadir intervalos secundarios a tu subred, consulta Añadir intervalos CIDR secundarios a una subred.
Direcciones IP de alias en redes y subredes en modo personalizado
En las redes en modo personalizado:
- Todas las subredes se crean manualmente
- Es obligatorio indicar un intervalo CIDR principal.
- También puedes crear intervalos CIDR secundarios.
Propiedades clave de los intervalos de IP de alias
Las siguientes propiedades se aplican a los intervalos de IP de alias configurados en las VMs:
- Desde el punto de vista del SO de la VM, la dirección IP principal y la puerta de enlace predeterminada se suelen asignar mediante DHCP. Las direcciones IP de alias se pueden configurar en el SO de la VM, que suele ser Linux o Windows, manualmente o mediante secuencias de comandos.
- La dirección IP principal y el intervalo de IPs de alias de la interfaz deben asignarse a partir de intervalos de notación CIDR configurados como parte de la misma subred.
Ten en cuenta los siguientes requisitos:
- La dirección IP principal debe asignarse desde el intervalo principal de CIDR.
- El intervalo de IPs de alias se puede asignar desde el intervalo CIDR principal o desde un intervalo CIDR secundario de la misma subred.
- En el caso de una interfaz de red de una VM, la IP de alias debe proceder de la misma subred que proporciona la dirección IP de la interfaz de red principal. No puedes seleccionar un intervalo CIDR principal o secundario de otro recurso de subred.
- La dirección IP principal puede ser una dirección IP interna estática o efímera.
- Los intervalos de IPs alias son opcionales y no se añaden automáticamente. Se puede configurar un intervalo de IP de alias durante la creación o la modificación de una instancia.
- Un intervalo de IPs de alias se puede configurar como un intervalo CIDR explícito (por ejemplo,
10.128.1.0/24
), una dirección IP única (por ejemplo,10.128.7.29/32
) o una máscara de red (/24
). Un intervalo de IPs de alias se puede especificar por completo o se puede asignar automáticamente especificando la máscara de red. - Para usar una sola dirección IP en un intervalo de IP de alias, usa la
/32
máscara de red. - Como todas las subredes de una red VPC comparten una única pasarela predeterminada, todas las direcciones IP de alias de una interfaz comparten la misma pasarela predeterminada que la dirección IP principal.
- No puedes usar direcciones IP reservadas en intervalos de IP de alias.
DNS con direcciones IP de alias
Google Cloud configura automáticamente el DNS interno de la IP principal de la interfaz principal de cada instancia de VM. De esta forma, se asocia el nombre de host de la instancia con la dirección IP principal de la interfaz principal. Sin embargo, la búsqueda de DNS en ese nombre de host solo funciona en la red que contiene la interfaz principal.
Google Cloud no asocia automáticamente ninguna otra dirección IP al nombre de host. Google Cloud no asocia direcciones IP de alias en la interfaz principal al nombre de host y no asocia ninguna dirección IP de interfaces secundarias al nombre de host.
Puedes configurar manualmente el DNS para asociar otras direcciones IP.
Cortafuegos
Todo el tráfico de entrada o salida, incluido el tráfico de los intervalos de IPs alias, se evalúa mediante una regla de cortafuegos de VPC para buscar una etiqueta de destino o una cuenta de servicio de destino que coincida. Para obtener información sobre los destinos y las IPs de alias, consulta Destinos y direcciones IP.
Los intervalos de IPs alias no se incluyen cuando especificas fuentes para una regla de cortafuegos de entrada mediante etiquetas de origen o cuentas de servicio de origen.
Rutas estáticas
Cuando creas una ruta estática que usa una instancia de siguiente salto especificada por una dirección IPv4 interna, Google Cloud verifica que la dirección IP de la VM de siguiente salto se ajuste al intervalo IPv4 de una subred de la red VPC de la ruta. Sin embargo, Google Cloud programa la ruta solo si la dirección del siguiente salto es una dirección IPv4 interna principal asignada a la interfaz de red (NIC) de una VM en la red de VPC de la ruta (no en una red de VPC emparejada).
Aunque puedes crear una ruta cuya dirección del siguiente salto sea una dirección IPv4 interna que se ajuste a un intervalo de IPs de alias, Google Cloud no programa esa ruta,Google Cloud sino que considera que el siguiente salto está inactivo. Los paquetes enviados al destino de la ruta se podrían descartar, en función de si existen otras rutas para el mismo destino exacto y de si esas otras rutas tienen saltos siguientes que estén activos.
Para obtener más información, consulta estos artículos:
Dirección IP interna de la instancia del siguiente salto (
next-hop-address
)Comportamiento cuando las instancias se detienen o se eliminan
Emparejamiento entre redes VPC
El emparejamiento de redes de VPC te permite emparejar dos redes de VPC para que las VMs de ambas redes puedan comunicarse mediante direcciones IP internas y privadas.
Las instancias de VM de una red emparejada pueden acceder a los intervalos de IP principales y secundarios de una subred.
Las comprobaciones de solapamiento de subredes en redes emparejadas aseguran que los intervalos primarios y secundarios no se solapen con ningún intervalo emparejado.